eos
Definitions of equation of states for compressible flow.
This module defines the equations of state for the compressible flow solvers, which establish the relationship between the thermodynamic variables such as density \(\rho\), pressure \(p\) and temperature \(T\).
- Ideal gas
- We derive the dimensionless ideal gas equation from the dimensional one, namely: \[\begin{split}\overline{p} &= \overline{\rho} \overline{R} \overline{T}, \\ \rho_{ref} u^2_{ref} p &= \rho_{ref} \rho \overline{R} T_{ref} T, \\ u^2_{ref} p &= \rho \frac{\overline{c}_\infty^2}{\gamma \overline{T}_\infty} T_{ref} T, \\ \gamma p &= ( \gamma - 1) \rho T.\end{split}\]
- class EquationOfState(mesh: Mesh, root: Configuration = None, **default)
- Base class for equations of state in compressible flow solvers. 
- class IdealGas(mesh, root=None, **default)
- density(U: flowfields) CoefficientFunction
- Returns the density from given fields \[\begin{split}(1) \quad \rho &= \frac{\gamma}{\gamma - 1} \frac{p}{T}, \\ (2) \quad \rho &= \gamma \frac{\rho E_i}{T}, \\ (3) \quad \rho &= \gamma \frac{p}{c^2}.\end{split}\]
 - pressure(U: flowfields) CoefficientFunction
- Returns the density from given fields \[\begin{split}(1) \quad p &= \frac{\gamma - 1}{\gamma} \rho T, \\ (2) \quad p &= (\gamma - 1) \rho E_i, \\ (3) \quad p &= \rho \frac{c^2}{\gamma}.\end{split}\]
 - temperature(U: flowfields) CoefficientFunction
- Returns the temperature from given fields \[\begin{split}(1) \quad T &= \frac{\gamma}{\gamma - 1} \frac{p}{\rho}, \\ (2) \quad T &= \gamma E_i, \\ (3) \quad T &= \frac{c^2}{\gamma - 1}.\end{split}\]
 - inner_energy(U: flowfields) CoefficientFunction
- Returns the inner energy from given fields \[\begin{split}(1) \quad \rho E_i &= \frac{p}{\gamma - 1}, \\ (2) \quad \rho E_i &= \rho \frac{T}{\gamma}.\end{split}\]
 - specific_inner_energy(U: flowfields) CoefficientFunction
- Returns the specific inner energy from given fields \[\begin{split}(1) \quad E_i &= \frac{T}{\gamma}, \\ (2) \quad E_i &= \frac{p}{\rho (\gamma - 1)}.\end{split}\]
 - speed_of_sound(U: flowfields) CoefficientFunction
- Returns the speed of sound from given fields \[\begin{split}(1) \quad c &= \sqrt{\gamma \frac{p}{\rho}}, \\ (2) \quad c &= \sqrt{(\gamma - 1) T}.\end{split}\]
 - specific_entropy(U: flowfields) CoefficientFunction
- Returns the specific entropy from given fields \[s = \frac{p}{\rho^{\gamma}}.\]
 - density_gradient(U: flowfields, dU: flowfields) CoefficientFunction
- Returns the density gradient from given fields \[\begin{split}(1) \quad \nabla \rho &= \frac{\gamma}{\gamma - 1} \left[ \frac{\nabla p}{T} - p \frac{\nabla T}{T^2} \right], \\ (2) \quad \nabla \rho &= \gamma \left[ \frac{ \nabla (\rho E_i)}{T} - \rho E_i \frac{\nabla T}{T^2} \right].\end{split}\]
 - pressure_gradient(U: flowfields, dU: flowfields) CoefficientFunction
- Returns the pressure gradient from given fields \[\begin{split}(1) \quad \nabla p &= \frac{\gamma - 1}{\gamma} \left[ (\nabla \rho) T + (\nabla T) \rho \right], \\ (2) \quad \nabla p &= (\gamma - 1) \nabla \rho E_i.\end{split}\]
 - temperature_gradient(U: flowfields, dU: flowfields) CoefficientFunction
- Returns the temperature gradient from given fields \[\begin{split}(1) \quad \nabla T &= \frac{\gamma}{\gamma - 1} \left[ \frac{\nabla p}{\rho} - p \frac{\nabla \rho}{\rho^2} \right], \\ (2) \quad \nabla T &= \gamma \nabla E_i.\end{split}\]
 - characteristic_amplitudes(U: flowfields, dU: flowfields, unit_vector: CoefficientFunction, type_: str = None) CoefficientFunction
- Returns the charachteristic amplitudes \[\vec{\mathcal{L}} := \vec{\Lambda} \mat{P}_n^{-1} \frac{\partial \vec{U}}{\partial n} = \vec{\Lambda} \vec{L}_n^{-1} \frac{\partial \vec{V}}{\partial n} = \vec{\Lambda} \frac{\partial \vec{W}}{\partial n},\]
 - conservative_from_primitive(U: flowfields) CoefficientFunction
- The \(\mat{M}\) matrix transforms primitive variables to conservative variables \[\begin{split}\mat{M} := \begin{pmatrix} 1 & 0 & 0 & 0 \\ u_x & \rho & 0 & 0 \\ u_y & 0 & \rho & 0 \\ \frac{|u|^2}{2} & \rho u_x & \rho u_y & \frac{1}{\gamma - 1} \end{pmatrix}\end{split}\]- Note:
- See equation \((E16.2.10)\) in [3]. 
 
 - primitive_from_conservative(U: flowfields) CoefficientFunction
- The \(\mat{M}^{-1}\) matrix transforms conservative variables to primitive variables \[\begin{split}\mat{M}^{-1} := \begin{pmatrix} 1 & 0 & 0 & 0 \\ -\frac{u_x}{\rho} & \frac{1}{\rho} & 0 & 0 \\ -\frac{u_y}{\rho} & 0 & \frac{1}{\rho} & 0 \\ (\gamma - 1)\frac{|u|^2}{2} & -(\gamma - 1) u_x & -(\gamma - 1) u_y & \gamma - 1 \end{pmatrix}\end{split}\]- Note:
- See equation \((E16.2.11)\) in [3]. 
 
 - primitive_from_characteristic(U: flowfields, unit_vector: CoefficientFunction) CoefficientFunction
- The \(\mat{L}_n\) matrix transforms characteristic variables to primitive variables \[\begin{split}\mat{L}_n := \begin{pmatrix} \frac{0.5}{c^2} & \frac{1}{c^2} & 0 & \frac{0.5}{c^2} \\ -\frac{n_x}{2c\rho} & 0 & n_y & \frac{n_x}{2c\rho} \\ -\frac{n_y}{2c\rho} & 0 & -n_x & \frac{n_y}{2c\rho} \\ 0.5 & 0 & 0 & 0.5 \end{pmatrix}\end{split}\]
 - characteristic_from_primitive(U: flowfields, unit_vector: CoefficientFunction) CoefficientFunction
- The \(\mat{L}^{-1}_n\) matrix transforms primitive variables to charactersitic variables \[\begin{split}\mat{L}^{-1}_n := \begin{pmatrix} 0 & -\rho c n_x & -\rho c n_y & 1 \\ c^2 & 0 & 0 & -1 \\ 0 & n_y & -n_x & 0 \\ 0 & \rho c n_x & \rho c n_y & 1 \end{pmatrix}\end{split}\]
 - conservative_from_characteristic(U: flowfields, unit_vector: CoefficientFunction) CoefficientFunction
- The \(\mat{P}_n\) matrix transforms characteristic variables to conservative variables \[\begin{split}\mat{P}_n := \mat{M} \mat{L}_n = \begin{pmatrix} \frac{1}{2 c^{2}} & \frac{1}{c^{2}} & 0 & \frac{1}{2 c^{2}} \\ - \frac{n_{x}}{2 c} + \frac{u}{2 c^{2}} & \frac{u}{c^{2}} & \rho n_{y} & \frac{n_{x}}{2 c} + \frac{u}{2 c^{2}} \\ - \frac{n_{y}}{2 c} + \frac{v}{2 c^{2}} & \frac{v}{c^{2}} & - \rho n_{x} & \frac{n_{y}}{2 c} + \frac{v}{2 c^{2}} \\ \frac{1}{2(\gamma - 1)} - \frac{u_{n}}{2 c} + \frac{|\vec{u}|^2}{4 c^{2}} & \frac{|\vec{u}|^2}{2c^{2}} & \rho u n_{y} - \rho v n_{x} & \frac{1}{2(\gamma - 1)} + \frac{u_{n}}{2 c} + \frac{|\vec{u}|^2}{4 c^{2}} \end{pmatrix}\end{split}\]
 - characteristic_from_conservative(U: flowfields, unit_vector: CoefficientFunction) CoefficientFunction
- The \(\mat{P}^{-1}_n\) matrix transforms conservative variables to characteristic variables \[\begin{split}\mat{P}^{-1}_n := \mat{M}^{-1} \mat{L}^{-1}_n = \begin{pmatrix} c u_{n} + \frac{\gamma - 1}{2}|\vec{u}|^2 & - c n_{x} + u (1 - \gamma) & - c n_{y} + v (1 - \gamma) & \gamma - 1 \\ c^{2} - \frac{\gamma - 1}{2}|\vec{u}|^2 & - u (1 - \gamma) & - v (1 - \gamma) & 1 - \gamma \\ - \frac{u n_{y}}{\rho} + \frac{v n_{x}}{\rho} & \frac{n_{y}}{\rho} & - \frac{n_{x}}{\rho} & 0 \\ - c u_{n} + \frac{\gamma - 1}{2}|\vec{u}|^2 & c n_{x} + u (1 - \gamma) & c n_{y} + v (1 - \gamma) & \gamma - 1 \end{pmatrix}\end{split}\]
 - conservative_convective_jacobian_x(U: flowfields) CoefficientFunction
- Convective flux Jacobian \(\mat{A}\) in x-direction \[\begin{split}\mat{A} := \begin{pmatrix} 0 & 1 & 0 & 0 \\ \frac{\gamma - 3}{2} u_x^2 + \frac{\gamma - 1}{2} u_y^2 & (3 - \gamma) u_x & -(\gamma - 1) u_y & \gamma - 1\\ -u_x u_y & u_y & u_x & 0 \\ -\gamma u_x E + (\gamma - 1) u_x |\vec{u}|^2 & \gamma E - \frac{\gamma - 1}{2} (u_y^2 + 3 u_x^2)& -(\gamma - 1) u_x u_y & \gamma u_x \end{pmatrix}\end{split}\]- Note:
- See equation \((E16.2.5)\) in [3]. 
 
 - conservative_convective_jacobian_y(U: flowfields) CoefficientFunction
- Convective flux Jacobian \(\mat{B}\) in y-direction \[\begin{split}\mat{B} := \begin{pmatrix} 0 & 0 & 1 & 0 \\ -u_x u_y & u_y & u_x& 0 \\ \frac{\gamma - 3}{2} u_y^2 + \frac{\gamma - 1}{2} u_x^2& -(\gamma - 1) u_x& (3 - \gamma) u_y & \gamma - 1 \\ -\gamma u_y E + (\gamma - 1) u_y |\vec{u}|^2 & -(\gamma - 1) u_x u_y & \gamma E - \frac{\gamma - 1}{2} (u_x^2 + 3 u_y^2) & \gamma u_y \end{pmatrix}\end{split}\]- Note:
- See equation \((E16.2.6)\) in [3]. 
 
 - isentropic_density(U: flowfields, Uref: flowfields) CoefficientFunction
- Returns the isentropic density from given fields \[\begin{split}(1) \quad \rho &= \rho_{ref} (\frac{T}{T_{ref}})^{\frac{1}{\gamma - 1}}, \\ (2) \quad \rho &= \rho_{ref} (\frac{p}{p_{ref}})^{\frac{1}{\gamma}}.\end{split}\]