GridFire 0.6.0 General Purpose Nuclear Network

Loading...
Searching...
No Matches
Classes | Namespaces | Concepts | Typedefs
engine_abstract.h File Reference

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

`#include "gridfire/reaction/reaction.h"`
`#include "gridfire/network.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/expectations/expected_engine.h"`
`#include <vector>`
`#include <unordered_map>`
`#include <utility>`
`#include <expected>`

## Classes
struct | gridfire::StepDerivatives< T >
| Structure holding derivatives and energy generation for a network step. More...
struct | gridfire::EnergyDerivatives
class | gridfire::Engine
| Abstract base class for a reaction network engine. More...
class | gridfire::DynamicEngine
| Abstract class for engines supporting Jacobian and stoichiometry operations. More...

## Namespaces
namespace | gridfire

## Concepts
concept | gridfire::IsArithmeticOrAD
| Concept for types allowed in engine calculations.

## Typedefs
using | gridfire::SparsityPattern = std::vector<std::pair<size_t, size_t>>

## 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