GridFire v0.7.1_rc2
General Purpose Nuclear Network
Loading...
Searching...
No Matches
engine_abstract.h File Reference

Abstract interfaces for reaction network engines in GridFire. More...

#include "gridfire/reaction/reaction.h"
#include "gridfire/types/types.h"
#include "gridfire/screening/screening_abstract.h"
#include "gridfire/screening/screening_types.h"
#include "gridfire/engine/types/reporting.h"
#include "gridfire/engine/types/building.h"
#include "gridfire/engine/types/jacobian.h"
#include "fourdst/composition/composition_abstract.h"
#include <vector>
#include <unordered_map>
#include <utility>
#include <expected>
Include dependency graph for engine_abstract.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  gridfire::engine::StepDerivatives< T >
 Structure holding derivatives and energy generation for a network step. More...
 
struct  gridfire::engine::EnergyDerivatives
 Structure holding derivatives of energy generation rate with respect to T and rho. More...
 
class  gridfire::engine::Engine
 Abstract base class for a reaction network engine. More...
 
class  gridfire::engine::DynamicEngine
 Abstract class for engines supporting Jacobian and stoichiometry operations. More...
 

Namespaces

namespace  gridfire
 
namespace  gridfire::engine
 

Typedefs

using gridfire::engine::SparsityPattern = std::vector< std::pair< size_t, size_t > >
 Type alias for sparsity pattern representation.
 

Enumerations

enum class  gridfire::engine::EngineStatus { gridfire::engine::OKAY , gridfire::engine::STALE , gridfire::engine::ERROR , gridfire::engine::COUNT }
 Enumeration of possible engine statuses. More...
 

Functions

constexpr std::string_view gridfire::engine::EngineStatus_to_string (const EngineStatus status)
 Convert EngineStatus enum to string representation.
 

Detailed Description

Abstract interfaces for reaction network engines in GridFire.

This header defines the abstract base classes and concepts for implementing reaction network solvers in the GridFire framework. It provides the contract for calculating right-hand sides, energy generation, Jacobians, stoichiometry, and other core operations required for time integration of nuclear reaction networks.

Author
Emily M. Boudreaux