GridFire 0.0.1a
General Purpose Nuclear Network
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:
gridfire::solver::NetworkSolverStrategy< DynamicEngine >

Classes

struct  JacobianFunctor
 Functor for calculating the Jacobian matrix. More...
 
struct  RHSFunctor
 Functor for calculating the right-hand side of the ODEs. More...
 

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 = fourdst::logging::LogManager::getInstance().getLogger("log")
 Logger instance.
 
fourdst::config::Config & m_config = fourdst::config::Config::getInstance()
 Configuration instance.
 

Additional Inherited Members

- Protected Attributes inherited from gridfire::solver::NetworkSolverStrategy< DynamicEngine >
DynamicEnginem_engine
 The engine used by this solver strategy.
 
DynamicEnginem_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 386 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
netInThe input conditions for the network.
Returns
The output conditions after the timestep.

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

Definition at line 375 of file solver.cpp.

Member Data Documentation

◆ m_config

fourdst::config::Config& gridfire::solver::DirectNetworkSolver::m_config = fourdst::config::Config::getInstance()
private

Configuration instance.

Definition at line 492 of file solver.h.

◆ m_logger

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

Logger instance.

Definition at line 491 of file solver.h.


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