GridFire 0.6.0
General Purpose Nuclear Network
|
Abstract interface for evaluating nuclear partition functions. More...
#include <partition_abstract.h>
Public Member Functions | |
virtual | ~PartitionFunction ()=default |
Virtual destructor. | |
virtual double | evaluate (int z, int a, double T9) const =0 |
Evaluate the partition function for a given isotope. | |
virtual double | evaluateDerivative (int z, int a, double T9) const =0 |
Evaluate the temperature derivative of the partition function. | |
virtual bool | supports (int z, int a) const =0 |
Check if this partition function supports an isotope. | |
virtual std::string | type () const =0 |
Get the human-readable type of this partition function. | |
virtual std::unique_ptr< PartitionFunction > | clone () const =0 |
Create a deep copy of this PartitionFunction. | |
Abstract interface for evaluating nuclear partition functions.
Provides methods to compute the partition function and its temperature derivative for a given isotope, to query if the function supports that isotope, and to clone the function object. Concrete implementations must provide temperature- dependent statistical models.
|
virtualdefault |
Virtual destructor.
Ensures proper cleanup in derived classes.
|
nodiscardpure virtual |
Create a deep copy of this PartitionFunction.
Implemented in gridfire::partition::CompositePartitionFunction, gridfire::partition::GroundStatePartitionFunction, gridfire::partition::RauscherThielemannPartitionFunction, and PyPartitionFunction.
|
nodiscardpure virtual |
Evaluate the partition function for a given isotope.
z | Proton number (atomic number) of the isotope; must be >= 1. |
a | Mass number of the isotope; must be >= z. |
T9 | Temperature in units of 10^9 K; must be > 0. |
Implemented in gridfire::partition::CompositePartitionFunction, gridfire::partition::GroundStatePartitionFunction, gridfire::partition::RauscherThielemannPartitionFunction, and PyPartitionFunction.
|
nodiscardpure virtual |
Evaluate the temperature derivative of the partition function.
Computes d/dT (partition function) at the given parameters.
z | Proton number (atomic number) of the isotope; must be >= 1. |
a | Mass number of the isotope; must be >= z. |
T9 | Temperature in units of 10^9 K; must be > 0. |
Implemented in gridfire::partition::CompositePartitionFunction, gridfire::partition::GroundStatePartitionFunction, gridfire::partition::RauscherThielemannPartitionFunction, and PyPartitionFunction.
|
nodiscardpure virtual |
Check if this partition function supports an isotope.
z | Proton number of the isotope. |
a | Mass number of the isotope. |
Implemented in gridfire::partition::CompositePartitionFunction, gridfire::partition::GroundStatePartitionFunction, gridfire::partition::RauscherThielemannPartitionFunction, and PyPartitionFunction.
|
nodiscardpure virtual |
Get the human-readable type of this partition function.
Implemented in gridfire::partition::CompositePartitionFunction, gridfire::partition::GroundStatePartitionFunction, gridfire::partition::RauscherThielemannPartitionFunction, and PyPartitionFunction.