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/jacobian.h"`
`#include "gridfire/exceptions/error_engine.h"`
`#include "gridfire/engine/scratchpads/blob.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