SERiF 0.0.1a
3+1D Stellar Structure and Evolution
|
Classes | |
struct | HELMEOSInput |
Structure to hold the input parameters for the EOS calculation. More... | |
struct | HELMEOSOutput |
struct | HELMTable |
Structure to hold the Helmholtz EOS table data. More... | |
Typedefs | |
template<typename T, std::size_t J, std::size_t I> | |
using | array2D = std::array<std::array<T, J>, I> |
2D array template alias. | |
Functions | |
double ** | heap_allocate_contiguous_2D_memory (const int rows, const int cols) |
void | heap_deallocate_contiguous_2D_memory (double **array) |
double | psi0 (double z) |
Interpolating polynomial function psi0. | |
double | dpsi0 (double z) |
Derivative of the interpolating polynomial function psi0. | |
double | ddpsi0 (double z) |
Second derivative of the interpolating polynomial function psi0. | |
double | psi1 (double z) |
Interpolating polynomial function psi1. | |
double | dpsi1 (double z) |
Derivative of the interpolating polynomial function psi1. | |
double | ddpsi1 (double z) |
Second derivative of the interpolating polynomial function psi1. | |
double | psi2 (double z) |
Interpolating polynomial function psi2. | |
double | dpsi2 (double z) |
Derivative of the interpolating polynomial function psi2. | |
double | ddpsi2 (double z) |
Second derivative of the interpolating polynomial function psi2. | |
double | xpsi0 (double z) |
Interpolating polynomial function xpsi0. | |
double | xdpsi0 (double z) |
Derivative of the interpolating polynomial function xpsi0. | |
double | xpsi1 (double z) |
Interpolating polynomial function xpsi1. | |
double | xdpsi1 (double z) |
Derivative of the interpolating polynomial function xpsi1. | |
double | h3 (const std::array< double, 36 > &fi, const double w0t, const double w1t, const double w0mt, const double w1mt, const double w0d, const double w1d, const double w0md, const double w1md) |
Interpolating polynomial function h3. | |
double | h5 (const std::array< double, 36 > &fi, const double w0t, const double w1t, const double w2t, const double w0mt, const double w1mt, const double w2mt, const double w0d, const double w1d, const double w2d, const double w0md, const double w1md, const double w2md) |
Interpolating polynomial function h5. | |
std::unique_ptr< HELMTable > | read_helm_table (const std::string &filename) |
Read the Helmholtz EOS table from a file. | |
serif::eos::helmholtz::HELMEOSOutput | get_helm_EOS (HELMEOSInput &q, const HELMTable &table) |
Calculate the Helmholtz EOS components. | |
Variables | |
static constexpr int | IMAX = 541 |
static constexpr int | JMAX = 201 |
const double | tlo = 3.0 |
const double | thi = 13.0 |
const double | dlo = -12.0 |
const double | dhi = 15.0 |
const double | tstp = (thi - tlo) / (JMAX - 1) |
const double | tstpi = 1 / tstp |
const double | dstp = (dhi - dlo) / (IMAX - 1) |
const double | dstpi = 1 / dstp |
using serif::eos::helmholtz::array2D = std::array<std::array<T, J>, I> |
double serif::eos::helmholtz::ddpsi0 | ( | double | z | ) |
double serif::eos::helmholtz::ddpsi1 | ( | double | z | ) |
double serif::eos::helmholtz::ddpsi2 | ( | double | z | ) |
double serif::eos::helmholtz::dpsi0 | ( | double | z | ) |
double serif::eos::helmholtz::dpsi1 | ( | double | z | ) |
double serif::eos::helmholtz::dpsi2 | ( | double | z | ) |
HELMEOSOutput serif::eos::helmholtz::get_helm_EOS | ( | HELMEOSInput & | q, |
const HELMTable & | table ) |
double serif::eos::helmholtz::h3 | ( | const std::array< double, 36 > & | fi, |
const double | w0t, | ||
const double | w1t, | ||
const double | w0mt, | ||
const double | w1mt, | ||
const double | w0d, | ||
const double | w1d, | ||
const double | w0md, | ||
const double | w1md ) |
Interpolating polynomial function h3.
fi | Array of coefficients. |
w0t | Weight 0 for temperature. |
w1t | Weight 1 for temperature. |
w0mt | Weight 0 for temperature (minus). |
w1mt | Weight 1 for temperature (minus). |
w0d | Weight 0 for density. |
w1d | Weight 1 for density. |
w0md | Weight 0 for density (minus). |
w1md | Weight 1 for density (minus). |
double serif::eos::helmholtz::h5 | ( | const std::array< double, 36 > & | fi, |
const double | w0t, | ||
const double | w1t, | ||
const double | w2t, | ||
const double | w0mt, | ||
const double | w1mt, | ||
const double | w2mt, | ||
const double | w0d, | ||
const double | w1d, | ||
const double | w2d, | ||
const double | w0md, | ||
const double | w1md, | ||
const double | w2md ) |
Interpolating polynomial function h5.
fi | Array of coefficients. |
w0t | Weight 0 for temperature. |
w1t | Weight 1 for temperature. |
w2t | Weight 2 for temperature. |
w0mt | Weight 0 for temperature (minus). |
w1mt | Weight 1 for temperature (minus). |
w2mt | Weight 2 for temperature (minus). |
w0d | Weight 0 for density. |
w1d | Weight 1 for density. |
w2d | Weight 2 for density. |
w0md | Weight 0 for density (minus). |
w1md | Weight 1 for density (minus). |
w2md | Weight 2 for density (minus). |
double ** serif::eos::helmholtz::heap_allocate_contiguous_2D_memory | ( | const int | rows, |
const int | cols ) |
void serif::eos::helmholtz::heap_deallocate_contiguous_2D_memory | ( | double ** | array | ) |
double serif::eos::helmholtz::psi0 | ( | double | z | ) |
double serif::eos::helmholtz::psi1 | ( | double | z | ) |
double serif::eos::helmholtz::psi2 | ( | double | z | ) |
std::unique_ptr< HELMTable > serif::eos::helmholtz::read_helm_table | ( | const std::string & | filename | ) |
double serif::eos::helmholtz::xdpsi0 | ( | double | z | ) |
double serif::eos::helmholtz::xdpsi1 | ( | double | z | ) |
double serif::eos::helmholtz::xpsi0 | ( | double | z | ) |
double serif::eos::helmholtz::xpsi1 | ( | double | z | ) |