File amjuel_hydrogen.hxx#

Defines

AMJUEL_HYDROGEN_H#

Variables

static std::map<std::string, std::string> long_reaction_types_map = {{"cx", "charge exchange"}, {"iz", "ionisation"}, {"rec", "recombination"}}#
template<char Isotope>
struct AmjuelHydIsotopeReaction : public AmjuelReaction#
#include <amjuel_hydrogen.hxx>

Base class for ionisation and recombination reaction Components for Hydrogen Isotopes.

Template Parameters:

Isotope – char representing the isotope type; ‘h’, ‘d’ and ‘t’. Allows all three species to be treated with the same code.

Subclassed by AmjuelHydIonisationIsotope< Isotope >, AmjuelHydRecombinationIsotope< Isotope >

Public Functions

inline AmjuelHydIsotopeReaction(std::string name, std::string short_reaction_type, std::string amjuel_label, std::string from_species, std::string to_species, Options &alloptions)#
template<char Isotope>
struct AmjuelHydRecombinationIsotope : public AmjuelHydIsotopeReaction<Isotope>#
#include <amjuel_hydrogen.hxx>

Component for Hydrogen recombination based on Amjuel rates. Includes both radiative and 3-body recombination.

Template Parameters:

Isotope – char representing the isotope type; ‘h’, ‘d’ and ‘t’.

Public Functions

inline AmjuelHydRecombinationIsotope(std::string name, Options &alloptions, Solver*)#
template<char Isotope>
struct AmjuelHydIonisationIsotope : public AmjuelHydIsotopeReaction<Isotope>#
#include <amjuel_hydrogen.hxx>

Component for Hydrogen ionisation based on Amjuel rates.

Template Parameters:

Isotope – char representing the isotope type; ‘h’, ‘d’ and ‘t’.

Public Functions

inline AmjuelHydIonisationIsotope(std::string name, Options &alloptions, Solver*)#