Loading...
Searching...
No Matches
gridfire::solver::PointSolverContext Struct Referencefinal

`#include <PointSolver.h>`

Inheritance diagram for gridfire::solver::PointSolverContext:
[legend]
Collaboration diagram for gridfire::solver::PointSolverContext:
[legend]

## Public Member Functions

void | init () override
void | set_stdout_logging (bool enable) override
void | set_detailed_logging (bool enable) override
void | reset_all ()
void | reset_user ()
void | reset_cvode ()
void | clear_context ()
void | init_context ()
bool | has_context () const
| PointSolverContext (const engine::scratch::StateBlob &engine_ctx)
| ~PointSolverContext () override
Public Member Functions inherited from gridfire::solver::SolverContextBase
virtual | ~SolverContextBase ()=default

## Public Attributes

SUNContext | sun_ctx = nullptr
| SUNDIALS context (lifetime of the solver).
void * | cvode_mem = nullptr
| CVODE memory block.
N_Vector | Y = nullptr
| CVODE state vector (species + energy accumulator).
N_Vector | YErr = nullptr
| Estimated local errors.
SUNMatrix | J = nullptr
| Dense Jacobian matrix.
SUNLinearSolver | LS = nullptr
| Dense linear solver.
std::unique_ptr< engine::scratch::StateBlob > | engine_ctx
std::optional< TimestepCallback > | callback
| Optional per-step callback.
int | num_steps = 0
| CVODE step counter (used for diagnostics and triggers).
bool | stdout_logging = true
| If true, print per-step logs and use CV_ONE_STEP.
N_Vector | constraints = nullptr
| CVODE constraints vector (>= 0 for species entries).
std::optional< double > | abs_tol
| User-specified absolute tolerance.
std::optional< double > | rel_tol
| User-specified relative tolerance.
bool | detailed_step_logging = false
| If true, log detailed step diagnostics (error ratios, Jacobian, species balance).
size_t | last_size = 0
size_t | last_composition_hash = 0ULL
sunrealtype | last_good_time_step = 0ULL

## Constructor & Destructor Documentation

## PointSolverContext()

gridfire::solver::PointSolverContext::PointSolverContext | ( | const engine::scratch::StateBlob & | engine_ctx | ) |

explicit

## ~PointSolverContext()

gridfire::solver::PointSolverContext::~PointSolverContext | ( |  | ) |

override

## Member Function Documentation

## clear_context()

void gridfire::solver::PointSolverContext::clear_context | ( |  | ) |

## has_context()

bool gridfire::solver::PointSolverContext::has_context | ( |  | ) | const

nodiscard

## init()

void gridfire::solver::PointSolverContext::init | ( |  | ) |

overridevirtual

Implements gridfire::solver::SolverContextBase.

## init_context()

void gridfire::solver::PointSolverContext::init_context | ( |  | ) |

## reset_all()

void gridfire::solver::PointSolverContext::reset_all | ( |  | ) |

## reset_cvode()

void gridfire::solver::PointSolverContext::reset_cvode | ( |  | ) |

## reset_user()

void gridfire::solver::PointSolverContext::reset_user | ( |  | ) |

## set_detailed_logging()

void gridfire::solver::PointSolverContext::set_detailed_logging | ( | bool | enable | ) |

overridevirtual

Implements gridfire::solver::SolverContextBase.

## set_stdout_logging()

void gridfire::solver::PointSolverContext::set_stdout_logging | ( | bool | enable | ) |

overridevirtual

Implements gridfire::solver::SolverContextBase.

## Member Data Documentation

## abs_tol

std::optional<double> gridfire::solver::PointSolverContext::abs_tol

User-specified absolute tolerance.

## callback

std::optional<TimestepCallback> gridfire::solver::PointSolverContext::callback

Optional per-step callback.

## constraints

N_Vector gridfire::solver::PointSolverContext::constraints = nullptr

CVODE constraints vector (>= 0 for species entries).

## cvode_mem

void* gridfire::solver::PointSolverContext::cvode_mem = nullptr

CVODE memory block.

## detailed_step_logging

bool gridfire::solver::PointSolverContext::detailed_step_logging = false

If true, log detailed step diagnostics (error ratios, Jacobian, species balance).

## engine_ctx

std::unique_ptr<engine::scratch::StateBlob> gridfire::solver::PointSolverContext::engine_ctx

## J

SUNMatrix gridfire::solver::PointSolverContext::J = nullptr

Dense Jacobian matrix.

## last_composition_hash

size_t gridfire::solver::PointSolverContext::last_composition_hash = 0ULL

## last_good_time_step

sunrealtype gridfire::solver::PointSolverContext::last_good_time_step = 0ULL

## last_size

size_t gridfire::solver::PointSolverContext::last_size = 0

## LS

SUNLinearSolver gridfire::solver::PointSolverContext::LS = nullptr

Dense linear solver.

## num_steps

int gridfire::solver::PointSolverContext::num_steps = 0

CVODE step counter (used for diagnostics and triggers).

## rel_tol

std::optional<double> gridfire::solver::PointSolverContext::rel_tol

User-specified relative tolerance.

## stdout_logging

bool gridfire::solver::PointSolverContext::stdout_logging = true

If true, print per-step logs and use CV_ONE_STEP.

## sun_ctx

SUNContext gridfire::solver::PointSolverContext::sun_ctx = nullptr

SUNDIALS context (lifetime of the solver).

## Y

N_Vector gridfire::solver::PointSolverContext::Y = nullptr

CVODE state vector (species + energy accumulator).

## YErr

N_Vector gridfire::solver::PointSolverContext::YErr = nullptr

Estimated local errors.

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

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