SERiF 0.0.1a
3+1D Stellar Structure and Evolution
Loading...
Searching...
No Matches
netgraph.h File Reference

Defines the GraphNetwork class for representing and evolving nuclear reaction networks as a heavily connected graph. More...

#include "atomicSpecies.h"
#include "composition.h"
#include "network.h"
#include "reaclib.h"
#include <string>
#include <unordered_map>
#include <vector>
#include <boost/numeric/ublas/matrix_sparse.hpp>
#include "cppad/cppad.hpp"
#include "quill/LogMacros.h"

Go to the source code of this file.

Classes

class  serif::network::GraphNetwork
 Graph-based nuclear reaction network using REACLIB reactions. More...
 
struct  serif::network::GraphNetwork::ODETerm
 Functor for ODE right-hand side evaluation. More...
 
struct  serif::network::GraphNetwork::JacobianTerm
 Functor for Jacobian evaluation for stiff ODE solvers. (used in the NSE case) More...
 
struct  serif::network::GraphNetwork::StepDerivatives< T >
 Struct holding derivatives for a single ODE step. More...
 

Namespaces

namespace  serif
 
namespace  serif::network
 

Concepts

concept  serif::network::IsArithmeticOrAD
 Concept to check if a type is either double or CppAD::AD<double>.
 

Variables

static constexpr double serif::network::MIN_DENSITY_THRESHOLD = 1e-18
 Minimum density threshold (g/cm^3) below which reactions are ignored.
 
static constexpr double serif::network::MIN_ABUNDANCE_THRESHOLD = 1e-18
 Minimum abundance threshold below which reactions are ignored.
 
static constexpr double serif::network::MIN_JACOBIAN_THRESHOLD = 1e-24
 Minimum Jacobian entry threshold for sparsity.
 

Detailed Description

Defines the GraphNetwork class for representing and evolving nuclear reaction networks as a heavily connected graph.

This file provides the GraphNetwork class, which implements a graph-based nuclear reaction network using REACLIB reactions and supports both stiff and non-stiff ODE integration. The network is constructed from a composition and can be queried for species, reactions, and stoichiometry.

This is a general nuclear reaction network; however, it does not currently manage reverse reactions, weak reactions, or other reactions which become much more relevant for more extreme astrophysical sources.

See also
serif::network::GraphNetwork

Definition in file netgraph.h.