@@ -237,11 +237,16 @@ def _flux_function_python(S, S0, ind, P, x1, alpha, beta, ni, PET, dt):
237237 - ((x1 [ind ]** (1 - beta [ind ])) / ((beta [ind ] - 1 ) * dt [ind ])) * (ni [ind ]** (beta [ind ] - 1 )) * (S ** beta [ind ]) # Perc
238238 ],
239239 0.0 ,
240- S0 + P [ind ] * (1 - (S / x1 [ind ])** alpha [ind ]) * dt [ind ]
240+ S0 + P [ind ] * (1 - (S / x1 [ind ])** alpha [ind ]) * dt [ind ],
241+ [
242+ - (P [ind ] * alpha [ind ] / x1 [ind ]) * ((S / x1 [ind ])** (alpha [ind ] - 1 )),
243+ - (PET [ind ] / x1 [ind ]) * (2 - alpha [ind ] * ((S / x1 [ind ])** (alpha [ind ] - 1 ))),
244+ - beta [ind ] * ((x1 [ind ]** (1 - beta [ind ])) / ((beta [ind ] - 1 ) * dt [ind ])) * (ni [ind ]** (beta [ind ] - 1 )) * (S ** (beta [ind ] - 1 ))
245+ ]
241246 )
242247
243248 @staticmethod
244- @nb .jit ('Tuple((UniTuple(f8, 3), f8, f8))(optional(f8), f8, i4, f8[:], f8[:], f8[:], f8[:], f8[:], f8[:], f8[:])' ,
249+ @nb .jit ('Tuple((UniTuple(f8, 3), f8, f8, UniTuple(f8, 3) ))(optional(f8), f8, i4, f8[:], f8[:], f8[:], f8[:], f8[:], f8[:], f8[:])' ,
245250 nopython = True )
246251 def _flux_function_numba (S , S0 , ind , P , x1 , alpha , beta , ni , PET , dt ):
247252
@@ -252,7 +257,12 @@ def _flux_function_numba(S, S0, ind, P, x1, alpha, beta, ni, PET, dt):
252257 - ((x1 [ind ]** (1 - beta [ind ])) / ((beta [ind ] - 1 ) * dt [ind ])) * (ni [ind ]** (beta [ind ] - 1 )) * (S ** beta [ind ]) # Perc
253258 ),
254259 0.0 ,
255- S0 + P [ind ] * (1 - (S / x1 [ind ])** alpha [ind ]) * dt [ind ]
260+ S0 + P [ind ] * (1 - (S / x1 [ind ])** alpha [ind ]) * dt [ind ],
261+ (
262+ - (P [ind ] * alpha [ind ] / x1 [ind ]) * ((S / x1 [ind ])** (alpha [ind ] - 1 )),
263+ - (PET [ind ] / x1 [ind ]) * (2 - alpha [ind ] * ((S / x1 [ind ])** (alpha [ind ] - 1 ))),
264+ - beta [ind ] * ((x1 [ind ]** (1 - beta [ind ])) / ((beta [ind ] - 1 ) * dt [ind ])) * (ni [ind ]** (beta [ind ] - 1 )) * (S ** (beta [ind ] - 1 ))
265+ )
256266 )
257267
258268
@@ -365,11 +375,16 @@ def _flux_function_python(S, S0, ind, P, x2, x3, gamma, omega, dt):
365375 - (x2 [ind ] * (S / x3 [ind ])** omega [ind ]), # F
366376 ],
367377 0.0 ,
368- S0 + P [ind ] * dt [ind ]
378+ S0 + P [ind ] * dt [ind ],
379+ [
380+ 0.0 ,
381+ - ((x3 [ind ]** (1 - gamma [ind ])) / ((gamma [ind ] - 1 ) * dt [ind ])) * (S ** (gamma [ind ] - 1 )) * gamma [ind ],
382+ - (omega [ind ] * x2 [ind ] * ((S / x3 [ind ])** (omega [ind ] - 1 ))) / x3 [ind ]
383+ ]
369384 )
370385
371386 @staticmethod
372- @nb .jit ('Tuple((UniTuple(f8, 3), f8, f8))(optional(f8), f8, i4, f8[:], f8[:], f8[:], f8[:], f8[:], f8[:])' ,
387+ @nb .jit ('Tuple((UniTuple(f8, 3), f8, f8, UniTuple(f8, 3) ))(optional(f8), f8, i4, f8[:], f8[:], f8[:], f8[:], f8[:], f8[:])' ,
373388 nopython = True )
374389 def _flux_function_numba (S , S0 , ind , P , x2 , x3 , gamma , omega , dt ):
375390
@@ -380,7 +395,12 @@ def _flux_function_numba(S, S0, ind, P, x2, x3, gamma, omega, dt):
380395 - (x2 [ind ] * (S / x3 [ind ])** omega [ind ]), # F
381396 ),
382397 0.0 ,
383- S0 + P [ind ] * dt [ind ]
398+ S0 + P [ind ] * dt [ind ],
399+ (
400+ 0.0 ,
401+ - ((x3 [ind ]** (1 - gamma [ind ])) / ((gamma [ind ] - 1 ) * dt [ind ])) * (S ** (gamma [ind ] - 1 )) * gamma [ind ],
402+ - (omega [ind ] * x2 [ind ] * ((S / x3 [ind ])** (omega [ind ] - 1 )))
403+ )
384404 )
385405
386406
0 commit comments