GridFire 0.0.1a
General Purpose Nuclear Network
|
Classes | |
class | BareScreeningModel |
A screening model that applies no screening effect. More... | |
class | ScreeningModel |
An abstract base class for plasma screening models. More... | |
class | WeakScreeningModel |
Implements the weak screening model based on the Debye-Hückel approximation. More... | |
Typedefs | |
using | ADDouble = CppAD::AD<double> |
Enumerations | |
enum class | ScreeningType { BARE , WEAK } |
Enumerates the available plasma screening models. More... | |
Functions | |
std::unique_ptr< ScreeningModel > | selectScreeningModel (ScreeningType type) |
A factory function to select and create a screening model. | |
typedef CppAD::AD< double > gridfire::screening::ADDouble = CppAD::AD<double> |
Definition at line 11 of file screening_bare.cpp.
|
strong |
Enumerates the available plasma screening models.
This enum provides a set of identifiers for the different screening prescriptions that can be used in the reaction rate calculations.
Definition at line 15 of file screening_types.h.
std::unique_ptr< ScreeningModel > gridfire::screening::selectScreeningModel | ( | ScreeningType | type | ) |
A factory function to select and create a screening model.
This function returns a std::unique_ptr
to a concrete implementation of the ScreeningModel
abstract base class, based on the specified ScreeningType
. This allows for easy switching between different screening prescriptions at runtime.
type | The ScreeningType enum value specifying which model to create. |
std::unique_ptr<ScreeningModel>
holding an instance of the requested screening model.Algorithm The function uses a switch
statement to determine which concrete model to instantiate. If the provided type
does not match a known case, it defaults to creating a BareScreeningModel
to ensure safe behavior.
Post-conditions
std::unique_ptr<ScreeningModel>
is always returned.Usage
Definition at line 9 of file screening_types.cpp.