PLUTO
eos.h File Reference

PVTE EoS header file. More...

Go to the source code of this file.

Classes

struct  func_param
 

Macros

#define T_CUT_RHOE   10.0
 Sets the lowest cut-off temperature used in the PVTE_LAW equation of state. More...
 
#define PV_TEMPERATURE_TABLE   YES
 
#define TV_ENERGY_TABLE   YES
 

Detailed Description

PVTE EoS header file.

Contains basic macro definitions, function prototypes and structure definition used by the PVTE_LAW equation of state. In this module, two equations of state are used:

\[ \left\{\begin{array}{lcll} p &=&\DS \frac{\rho T}{{\rm K}\mu(\vec{X})} &\qquad\rm{(thermal)}\,, \\ \noalign{\bigskip} e &=& e(T,\vec{X}) &\qquad\rm{(caloric)}\,. \end{array}\right. \]

Since these two equations can be nonlinear functions and PLUTO performs conversions between primitive and conservative variables quite often during a single update step, the employment of this EoS is more computationally intensive:

  1. Non equilibrium case: when converting from primitive to conservative and viceversa, the following operations are performed:

    \[ \begin{array}{lll} (p,\rho,\vec{X}) &\quad\Longrightarrow\quad \DS T = \frac{p}{\rho}K\mu(\vec{X}) &\quad\Longrightarrow\quad e = e(T,\vec{X}) \\ \noalign{\medskip} (e,\rho,\vec{X}) &\quad\Longrightarrow\quad T = T(e,\vec{X})^* &\quad\Longrightarrow\quad \DS p = \frac{T\rho}{K\mu(\vec{X})} \\ \noalign{\medskip} \end{array} \]

    The * symbol means that a nonlinear equation must be inverted numerically using a root-finder.
  2. Equilibrium case: X (T,rho) and all the dependencies on X become dependencies on (T,rho). In this case the operations carried out during primitive to conservative and viceversa are:

    \[ \begin{array}{lll} (p,\rho) &\quad\Longrightarrow\quad \DS T = \frac{p}{\rho}K\mu(T,\rho)^* &\quad\Longrightarrow\quad e = e(T,\rho) \\ \noalign{\medskip} (e,\rho) &\quad\Longrightarrow\quad T = T(e,\rho)^* &\quad\Longrightarrow\quad \DS p = \frac{T\rho}{K\mu(T,\rho)} \\ \noalign{\medskip} \end{array} \]

    requiring thus two numerical inversions of nonlinear equations *.

The sequence of operation is handled by the following functions:

Main variables Calling Function T(p,rho,X) e = e(rho,T,X)
(p,rho,X) PrimToCons() GetPV_Temperature() InternalEnergy()
Main variables Calling Function T(rho,e,X) p = (rho,T,X)
(rho,e,X) ConsToPrim() GetEV_Temperature() Pressure()
Authors
B. Vaidya (bharg.nosp@m.av.v.nosp@m.aidya.nosp@m.@ph..nosp@m.unito.nosp@m..it)
A. Mignone (migno.nosp@m.ne@p.nosp@m.h.uni.nosp@m.to.i.nosp@m.t)
Date
June 25, 2014

Definition in file eos.h.

Macro Definition Documentation

#define PV_TEMPERATURE_TABLE   YES

Definition at line 117 of file eos.h.

#define T_CUT_RHOE   10.0

Sets the lowest cut-off temperature used in the PVTE_LAW equation of state.

Zones with temperature below T_CUT_RHOE will be reset to this value and the internal energy will be redefined accordingly.

Definition at line 69 of file eos.h.

#define TV_ENERGY_TABLE   YES

Definition at line 120 of file eos.h.