andes.routines.daeint.TrapezoidAdaptive#
- class andes.routines.daeint.TrapezoidAdaptive[source]#
Adaptive trapezoid with step-doubling LTE estimation.
The LTE estimate is based on the difference between one full step of size
hand two half-steps of sizeh/2.- __init__(*args, **kwargs)#
Methods
calc_h(tds)Step size is set by
step().calc_jac(tds, gxs, gys)Build full Jacobian matrix
Acfor Trapezoid method.calc_q(x, f, Tf, h, x0, f0)Calculate the residual of algebraized differential equations.
checkpoint_state(tds)Snapshot DAE state for rollback.
niter_next_h(niter, h, h_min, h_max)Niter-based step-size heuristic shared by all methods.
restore_state(tds, state)Restore DAE state from a checkpoint.
solve_once(tds, h, method)Run one implicit step with the given method and step size.
step(tds)One adaptive trapezoid step.
Attributes
nolte_event_stepsnolte_event_windowrequires_variable_step