GridFire v0.7.0-alpha
General Purpose Nuclear Network
Loading...
Searching...
No Matches
gridfire::policy::LowMassMainSequenceReactionChainPolicy Class Referencefinal

A MultiReactionChainPolicy for low-mass main-sequence stars. More...

#include <chains.h>

Inheritance diagram for gridfire::policy::LowMassMainSequenceReactionChainPolicy:
[legend]
Collaboration diagram for gridfire::policy::LowMassMainSequenceReactionChainPolicy:
[legend]

Public Member Functions

 LowMassMainSequenceReactionChainPolicy ()
 Constructs the policy and initializes its child policies.
 
const reaction::ReactionSetget_reactions () const override
 Returns the combined set of reactions from all child policies (PP and CNO).
 
const std::vector< std::unique_ptr< ReactionChainPolicy > > & get_chain_policies () const override
 Returns the vector of child policies.
 
- Public Member Functions inherited from gridfire::policy::ReactionChainPolicy
virtual ~ReactionChainPolicy ()=default
 

Private Attributes

std::vector< std::unique_ptr< ReactionChainPolicy > > m_chain_policies
 
reaction::ReactionSet m_reactions
 

Detailed Description

A MultiReactionChainPolicy for low-mass main-sequence stars.

This policy composes the ProtonProtonChainPolicy and CNOChainPolicy to represent the key energy-generating reaction chains active in low-mass stars like the Sun.

Constructor & Destructor Documentation

◆ LowMassMainSequenceReactionChainPolicy()

gridfire::policy::LowMassMainSequenceReactionChainPolicy::LowMassMainSequenceReactionChainPolicy ( )
inline

Constructs the policy and initializes its child policies.

Member Function Documentation

◆ get_chain_policies()

const std::vector< std::unique_ptr< ReactionChainPolicy > > & gridfire::policy::LowMassMainSequenceReactionChainPolicy::get_chain_policies ( ) const
inlinenodiscardoverridevirtual

Returns the vector of child policies.

Returns
const std::vector<std::unique_ptr<ReactionChainPolicy>>&
Example
const auto& child_policies = lmms_policy.get_chain_policies();
std::cout << "Low-mass policy has " << child_policies.size() << " child policies." << std::endl;
const std::vector< std::unique_ptr< ReactionChainPolicy > > & get_chain_policies() const override
Returns the vector of child policies.
Definition chains.h:268
LowMassMainSequenceReactionChainPolicy()
Constructs the policy and initializes its child policies.
Definition chains.h:256

Implements gridfire::policy::MultiReactionChainPolicy.

◆ get_reactions()

const reaction::ReactionSet & gridfire::policy::LowMassMainSequenceReactionChainPolicy::get_reactions ( ) const
inlinenodiscardoverridevirtual

Returns the combined set of reactions from all child policies (PP and CNO).

Returns
const reaction::ReactionSet&

Implements gridfire::policy::ReactionChainPolicy.

Member Data Documentation

◆ m_chain_policies

std::vector<std::unique_ptr<ReactionChainPolicy> > gridfire::policy::LowMassMainSequenceReactionChainPolicy::m_chain_policies
private

◆ m_reactions

reaction::ReactionSet gridfire::policy::LowMassMainSequenceReactionChainPolicy::m_reactions
private

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