@@ -84,9 +84,13 @@ namespace GridKit
8484 monitor_->set (Variable::state, [this ]
8585 { return status_; });
8686 monitor_->set (Variable::ir, [this ]
87- { return y_[0 ]; });
87+ {
88+ auto * y = y_.getData ();
89+ return y[0 ]; });
8890 monitor_->set (Variable::ii, [this ]
89- { return y_[1 ]; });
91+ {
92+ auto * y = y_.getData ();
93+ return y[1 ]; });
9094
9195 size_ = 2 ;
9296 setDerivedParams ();
@@ -150,23 +154,26 @@ namespace GridKit
150154 template <typename scalar_type, typename index_type>
151155 int BusFault<scalar_type, index_type>::initialize()
152156 {
157+ auto * y = y_.getData ();
158+ auto * yp = yp_.getData ();
159+
153160 if (status_)
154161 {
155162 ScalarT vr = Vr ();
156163 ScalarT vi = Vi ();
157164 ScalarT ir = -(vr * G_ - vi * B_ );
158165 ScalarT ii = -(vr * B_ + vi * G_ );
159- y_ [0 ] = ir;
160- y_ [1 ] = ii;
166+ y [0 ] = ir;
167+ y [1 ] = ii;
161168 }
162169 else
163170 {
164- y_ [0 ] = 0.0 ;
165- y_ [1 ] = 0.0 ;
171+ y [0 ] = 0.0 ;
172+ y [1 ] = 0.0 ;
166173 }
167174
168- yp_ [0 ] = 0.0 ;
169- yp_ [1 ] = 0.0 ;
175+ yp [0 ] = 0.0 ;
176+ yp [1 ] = 0.0 ;
170177
171178 return 0 ;
172179 }
@@ -177,8 +184,10 @@ namespace GridKit
177184 template <typename scalar_type, typename index_type>
178185 int BusFault<scalar_type, index_type>::tagDifferentiable()
179186 {
180- tag_[0 ] = false ;
181- tag_[1 ] = false ;
187+ auto * tag = tag_.getData ();
188+
189+ tag[0 ] = false ;
190+ tag[1 ] = false ;
182191
183192 return 0 ;
184193 }
@@ -198,7 +207,7 @@ namespace GridKit
198207 template <class scalar_type , typename index_type>
199208 int BusFault<scalar_type, index_type>::setAbsoluteTolerance(RealT rel_tol)
200209 {
201- std::fill (abs_tol_.getData (memory:: HOST ), abs_tol_.getData (memory:: HOST ) + abs_tol_.size (), rel_tol);
210+ std::fill (abs_tol_.getData (), abs_tol_.getData () + abs_tol_.size (), rel_tol);
202211 return 0 ;
203212 }
204213
@@ -252,18 +261,24 @@ namespace GridKit
252261 {
253262 if (status_)
254263 {
255- wb_[0 ] = Vr ();
256- wb_[1 ] = Vi ();
257- evaluateInternalResidual (y_.getData (memory::HOST ), yp_.getData (memory::HOST ), wb_.data (), f_.getData (memory::HOST ));
258- evaluateBusResidual (y_.getData (memory::HOST ), yp_.getData (memory::HOST ), wb_.data (), h_.data ());
264+ wb_[0 ] = Vr ();
265+ wb_[1 ] = Vi ();
266+ auto * y = y_.getData ();
267+ auto * yp = yp_.getData ();
268+ auto * f = f_.getData ();
269+ evaluateInternalResidual (y, yp, wb_.data (), f);
270+ evaluateBusResidual (y, yp, wb_.data (), h_.data ());
259271 Ir () += h_[0 ];
260272 Ii () += h_[1 ];
261273 }
262274 else
263275 {
264- wb_[0 ] = 0.0 ;
265- wb_[1 ] = 0.0 ;
266- evaluateInternalResidual (y_.getData (memory::HOST ), yp_.getData (memory::HOST ), wb_.data (), f_.getData (memory::HOST ));
276+ wb_[0 ] = 0.0 ;
277+ wb_[1 ] = 0.0 ;
278+ auto * y = y_.getData ();
279+ auto * yp = yp_.getData ();
280+ auto * f = f_.getData ();
281+ evaluateInternalResidual (y, yp, wb_.data (), f);
267282 }
268283
269284 return 0 ;
0 commit comments