Loading...
Searching...
No Matches
gridfire::solver::CVODESolverStrategy::TimestepContext Struct Referencefinal

Immutable view of the current integration state passed to callbacks. More...

`#include <CVODE_solver_strategy.h>`

Inheritance diagram for gridfire::solver::CVODESolverStrategy::TimestepContext:
[legend]
Collaboration diagram for gridfire::solver::CVODESolverStrategy::TimestepContext:
[legend]

## Public Member Functions

TimestepContext (double t, const N_Vector &state, double dt, double last_step_time, double t9, double rho, size_t num_steps, const engine::DynamicEngine &engine, const std::vector< fourdst::atomic::Species > &networkSpecies, size_t currentConvergenceFailure, size_t currentNonlinearIterations, const std::map< fourdst::atomic::Species, std::unordered_map< std::string, double > > &reactionContributionMap)

| Construct a context snapshot.
std::vector< std::tuple< std::string, std::string > > | describe () const override
| Human-readable description of the context fields.
Public Member Functions inherited from gridfire::solver::SolverContextBase
virtual | ~SolverContextBase ()=default

## Public Attributes

const double | t
| Current integration time [s].
const N_Vector & | state
| Current CVODE state vector (N_Vector).
const double | dt
| Last step size [s].
const double | last_step_time
| Time at last callback [s].
const double | T9
| Temperature in GK.
const double | rho
| Density [g cm^-3].
const size_t | num_steps
| Number of CVODE steps taken so far.
const engine::DynamicEngine & | engine
| Reference to the engine.
const std::vector< fourdst::atomic::Species > & | networkSpecies
| Species layout.
const size_t | currentConvergenceFailures
| Total number of convergence failures.
const size_t | currentNonlinearIterations
| Total number of non-linear iterations.
const std::map< fourdst::atomic::Species, std::unordered_map< std::string, double > > & | reactionContributionMap
| Map of reaction contributions for the current step.

## Detailed Description

Immutable view of the current integration state passed to callbacks.

Fields capture CVODE time/state, step size, thermodynamic state, the engine reference, and the list of network species used to interpret the state vector layout.

## Constructor & Destructor Documentation

## TimestepContext()

gridfire::solver::CVODESolverStrategy::TimestepContext::TimestepContext | ( | double | t,
|  | const N_Vector & | state,
|  | double | dt,
|  | double | last_step_time,
|  | double | t9,
|  | double | rho,
|  | size_t | num_steps,
|  | const engine::DynamicEngine & | engine,
|  | const std::vector< fourdst::atomic::Species > & | networkSpecies,
|  | size_t | currentConvergenceFailure,
|  | size_t | currentNonlinearIterations,
|  | const std::map< fourdst::atomic::Species, std::unordered_map< std::string, double > > & | reactionContributionMap )

Construct a context snapshot.

## Member Function Documentation

## describe()

std::vector< std::tuple< std::string, std::string > > gridfire::solver::CVODESolverStrategy::TimestepContext::describe | ( |  | ) | const

nodiscardoverridevirtual

Human-readable description of the context fields.

Implements gridfire::solver::SolverContextBase.

## Member Data Documentation

## currentConvergenceFailures

const size_t gridfire::solver::CVODESolverStrategy::TimestepContext::currentConvergenceFailures

Total number of convergence failures.

## currentNonlinearIterations

const size_t gridfire::solver::CVODESolverStrategy::TimestepContext::currentNonlinearIterations

Total number of non-linear iterations.

## dt

const double gridfire::solver::CVODESolverStrategy::TimestepContext::dt

Last step size [s].

## engine

const engine::DynamicEngine& gridfire::solver::CVODESolverStrategy::TimestepContext::engine

Reference to the engine.

## last_step_time

const double gridfire::solver::CVODESolverStrategy::TimestepContext::last_step_time

Time at last callback [s].

## networkSpecies

const std::vector<fourdst::atomic::Species>& gridfire::solver::CVODESolverStrategy::TimestepContext::networkSpecies

Species layout.

## num_steps

const size_t gridfire::solver::CVODESolverStrategy::TimestepContext::num_steps

Number of CVODE steps taken so far.

## reactionContributionMap

const std::map<fourdst::atomic::Species, std::unordered_map<std::string, double> >& gridfire::solver::CVODESolverStrategy::TimestepContext::reactionContributionMap

Map of reaction contributions for the current step.

## rho

const double gridfire::solver::CVODESolverStrategy::TimestepContext::rho

Density [g cm^-3].

## state

const N_Vector& gridfire::solver::CVODESolverStrategy::TimestepContext::state

Current CVODE state vector (N_Vector).

## t

const double gridfire::solver::CVODESolverStrategy::TimestepContext::t

Current integration time [s].

## T9

const double gridfire::solver::CVODESolverStrategy::TimestepContext::T9

Temperature in GK.

The documentation for this struct was generated from the following files:

- src/include/gridfire/solver/strategies/CVODE_solver_strategy.h
- src/lib/solver/strategies/CVODE_solver_strategy.cpp