# GridFire: gridfire::solver::DirectNetworkSolver Class Reference

Loading...
Searching...
No Matches
gridfire::solver::DirectNetworkSolver Class Referencefinal

A network solver that directly integrates the reaction network ODEs. More...

`#include <solver.h>`

Inheritance diagram for gridfire::solver::DirectNetworkSolver:

## Classes

struct | JacobianFunctor
| Functor for calculating the Jacobian matrix. More...
struct | RHSManager

## Public Member Functions

NetOut | evaluate (const NetIn &netIn) override
| Evaluates the network for a given timestep using direct integration.
Public Member Functions inherited from gridfire::solver::NetworkSolverStrategy< DynamicEngine >
| NetworkSolverStrategy (DynamicEngine &engine)
| Constructor for the NetworkSolverStrategy.
virtual | ~NetworkSolverStrategy ()=default
| Virtual destructor.
| NetworkSolverStrategy (DynamicEngine &engine)
| Constructor for the NetworkSolverStrategy.
virtual | ~NetworkSolverStrategy ()=default
| Virtual destructor.

## Private Attributes

quill::Logger * | m_logger = LogManager::getInstance().getLogger("log")
| Logger instance.
Config & | m_config = Config::getInstance()
| Configuration instance.

## Additional Inherited Members

Protected Attributes inherited from gridfire::solver::NetworkSolverStrategy< DynamicEngine >
DynamicEngine & | m_engine
| The engine used by this solver strategy.
DynamicEngine & | m_engine
| The engine used by this solver strategy.

## Detailed Description

A network solver that directly integrates the reaction network ODEs.

This solver uses a Runge-Kutta method to directly integrate the reaction network ODEs. It is simpler than the QSENetworkSolver, but it can be less efficient for stiff networks with disparate timescales.

Definition at line 65 of file solver.h.

## Member Function Documentation

## evaluate()

NetOut gridfire::solver::DirectNetworkSolver::evaluate | ( | const NetIn & | netIn | ) |

overridevirtual

Evaluates the network for a given timestep using direct integration.

Parameters

  netIn | The input conditions for the network.

Returns
  The output conditions after the timestep.

Implements gridfire::solver::NetworkSolverStrategy< DynamicEngine >.

Definition at line 22 of file solver.cpp.

## Member Data Documentation

## m_config

Config& gridfire::solver::DirectNetworkSolver::m_config = Config::getInstance()

private

Configuration instance.

Definition at line 181 of file solver.h.

## m_logger

quill::Logger* gridfire::solver::DirectNetworkSolver::m_logger = LogManager::getInstance().getLogger("log")

private

Logger instance.

Definition at line 180 of file solver.h.

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

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