Class SundialsImplicitIntegratorVars#

Inheritance Relationships#

Base Type#

Derived Types#

Class Documentation#

class SundialsImplicitIntegratorVars : public Karana::Integrators::SundialsIntegratorVars#

The Vars for the SundialsImplicitIntegrator class.

Subclassed by Karana::Integrators::ArkImplicitIntegratorVars, Karana::Integrators::CVodeIntegratorVars

Public Functions

SundialsImplicitIntegratorVars(const kc::ks_ptr<const SundialsImplicitIntegrator> &integ)#

SundialsImplicitIntegratorVars constructor. The constructor is not meant to be called directly. Please use the create(…) method instead to create an instance.

Parameters:

integ – The integrator associated with this SundialsImplicitIntegratorVars.

virtual ~SundialsImplicitIntegratorVars() = default#

Destructor.

virtual kc::NestedVars getAllVars() const override#

Get all the Vars that this VarHolder has.

Returns:

A map of Vars, where the Var name is the key and the Var is the value.

Public Members

kc::ks_ptr<Karana::Core::Var<long int>> num_nonlin_iters#

Cumulative number of nonlinear iterations.

Note

ARKODE reports this value for the lifetime of its nonlinear solver object, so soft resets do not reset or cache the native counter.

kc::ks_ptr<Karana::Core::Var<long int>> num_step_solve_fails#

Number of rejected timesteps due to nonlinear solve failure.

Note

This statistic is distinct from nonlinear convergence failures in SUNDIALS 6.2 and newer. Starting with SUNDIALS 7.6, CVODE excludes inequality-constraint failures.

kc::ks_ptr<Karana::Core::Var<long int>> num_jac_evals#

Number of calls made to the linear solver interface’s Jacobian function.

Note

Returns -1 when no linear solver is attached.

Note

Before SUNDIALS 7.6, the stale native value is ignored after a soft reset until the next successful advance.

kc::ks_ptr<Karana::Core::Var<long int>> num_lin_solver_setups#

Number of times the linear solver setup routine was called.

Note

Returns -1 when no linear solver is attached.

kc::ks_ptr<Karana::Core::Var<long int>> num_lin_rhs_evals#

Number of RHS/derivative calls used to estimate Jacobians.

Note

Returns -1 when no linear solver is attached.

Note

Before SUNDIALS 7.6, the stale native value is ignored after a soft reset until the next successful advance.

kc::ks_ptr<Karana::Core::Var<long int>> num_nonlin_conv_fails#

Number of nonlinear solver convergence failures.

Note

In SUNDIALS 6.2 and newer this counts every failed nonlinear solve, not only rejected timesteps. ARKODE accumulates it for the nonlinear solver object’s lifetime, so soft resets do not reset or cache the native counter.

kc::ks_ptr<Karana::Core::Var<long int>> num_lin_conv_fails#

Number of linear solver convergence failures.

Note

Returns -1 when no linear solver is attached.

Note

Before SUNDIALS 7.6, the stale native value is ignored after a soft reset until the next successful advance.

kc::ks_ptr<Karana::Core::Var<long int>> num_lin_iters#

Number of linear iterations.

Note

Returns -1 when no linear solver is attached.

Note

Before SUNDIALS 7.6, the stale native value is ignored after a soft reset until the next successful advance.

Public Static Functions

static kc::ks_ptr<SundialsImplicitIntegratorVars> create(const kc::ks_ptr<const SundialsImplicitIntegrator> &integrator)#

Create an instance of the SundialsImplicitIntegratorVars.

Parameters:

integrator – The integrator associated with this SundialsImplicitIntegratorVars.

Returns:

A pointer to the newly created instance of SundialsImplicitIntegratorVars.