|
PLUTO
|
Basic interface definition for the PVTE_LAW EoS.
More...
#include "pluto.h"
Go to the source code of this file.
Macros | |
| #define | HELIUM_IONIZATION NO |
| #define | DEG_x 0 /* hydrogen ionization degree */ |
| #define | DEG_y 1 /* molecular hydrogen dissociation degree */ |
| #define | DEG_z1 2 /* helium single ionization degree */ |
| #define | DEG_z2 3 /* helium double ionization degree */ |
Functions | |
| void | GetFuncDum (double, double *) |
| static void | GetSahaHFracs (double, double, double *) |
| double | InternalEnergyFunc (double *v, double T) |
| void | GetMu (double T, double rho, double *mu) |
| double | Gamma1 (double *v) |
Basic interface definition for the PVTE_LAW EoS.
Collect the basic set of functions required by the PVTE_LAW equation of state:
Auxiliary functions (needed by the the previous ones) are also included here.
The current version implements the EoS given by D'Angelo (2013).
Reference
Definition in file pvte_law.c.
| #define DEG_x 0 /* hydrogen ionization degree */ |
Definition at line 33 of file pvte_law.c.
| #define DEG_y 1 /* molecular hydrogen dissociation degree */ |
Definition at line 34 of file pvte_law.c.
| #define DEG_z1 2 /* helium single ionization degree */ |
Definition at line 35 of file pvte_law.c.
| #define DEG_z2 3 /* helium double ionization degree */ |
Definition at line 36 of file pvte_law.c.
| #define HELIUM_IONIZATION NO |
Definition at line 31 of file pvte_law.c.
| double Gamma1 | ( | double * | v | ) |
Calculate the value of the first adiabatic index:
where p and rho are in c.g.s units. Note that if species are evolved explicitly (non-equilibrium chemistry), we set chi=1.
The heat capacity at constant volume, cV, is defined as the derivative of specific internal energy with respect to temperature:
and it is computed numerically using a centered derivative.
This function is needed (at present) only when computing the sound speed in the Riemann solver. Since this is only needed for an approximated value, 5/3 (upper bound) should be ok.
Reference
| [in] | v | 1D array of primitive quantities |
Definition at line 231 of file pvte_law.c.


| void GetFuncDum | ( | double | T, |
| double * | funcdum_val | ||
| ) |
Interpolate the value of a function of zetaR from the table that is used to estimate the value of EH2.
| [in] | T | Value of temperature in kelvin. |
| [out] | *funcdum_val | Pointer to the value of function of zetaR |
Reference: D'Angelo, G. et al, ApJ 778 2013.
Definition at line 16 of file zeta_tables.c.

| void GetMu | ( | double | T, |
| double | rho, | ||
| double * | mu | ||
| ) |
Calculate the mean molecular weight for the case in which hydrogen fractions are estimated using Saha Equations.
| [in] | T | Gas temperature in Kelvin. |
| [in] | rho | Gas density (code units) |
| [out] | mu | Mean molecular weight |
Reference
Definition at line 115 of file pvte_law.c.


|
static |
Compute degree of ionization and dissociation using Saha Equations. The quadratic equation ay^2 + by + c = 0 is solved using a = 1, c = -b (for hydrogen). A similar expression is used for Helium.
| [in] | T | Gas temperature in Kelvin. |
| [in] | rho | Gas density (in code units) |
| [out] | fdeg | array of ionization/dissociation degrees. |
Reference
Definition at line 142 of file pvte_law.c.

| double InternalEnergyFunc | ( | double * | v, |
| double | T | ||
| ) |
Compute the gas internal energy as a function of temperature and fractions (or density):
rhoe = rhoe(T,rho) in LTE or CIE; rhoe = rhoe(T,X) in non-equilibrium chemistry.| [in] | v | 1D Array of primitive variables containing density and species. Other variables are ignored. |
| [in] | T | Gas temperature |
rhoe) in code units. Definition at line 47 of file pvte_law.c.

