22 template <
typename EOSImpl,
typename TransportImpl>
36 const LTETables &T_in,
const EOSImpl &eos_in,
const TransportImpl &tr_in)
43 :
phys(phys_in),
L(L_in),
T(T_in)
46 template<
typename HostDataT>
51 host_data.lteTableData->inv_table.Read(),
52 host_data.lteTableData->rho_grid.Read(),
53 host_data.lteTableData->T_grid.Read(),
54 host_data.lteTableData->e_grid.Read()
65 inline int dim()
const
69 template<
typename StateView>
71 inline mfem::real_t
velocity(
const StateView &S,
int d)
const
72 {
return S.velocity(
L,d);};
74 template<
typename StateView>
76 inline mfem::real_t
momentum(
const StateView &S,
int d)
const
77 {
return S.momentum(
L,d);};
79 template<
typename StateView>
81 inline mfem::real_t
density(
const StateView &S)
const
86 template<
typename StateView>
88 inline mfem::real_t
mass(
const StateView &S)
const
93 template<
typename StateView>
95 inline mfem::real_t
scalar(
const StateView &S,
int s)
const
97 return S.scalar(
L, s);
100 template<
typename StateView>
102 inline mfem::real_t
energy(
const StateView &S)
const
108 template<
typename StateView>
110 inline mfem::real_t
pressure(
const StateView &S)
const
115 template<
typename StateView>
117 inline mfem::real_t
gamma(
const StateView &S)
const
122 template<
typename StateView>
124 inline mfem::real_t
cp(
const StateView &S)
const
129 template<
typename StateView>
131 inline mfem::real_t
R_gas(
const StateView &S)
const
136 template<
typename StateView>
143 template<
typename StateView>
150 template<
typename StateView>
154 return eos.kinetic_energy_density(
phys,
L, S,
T);
157 template<
typename StateView>
165 template<
typename StateView>
169 return eos.specific_internal_energy(
phys,
L, S,
T);
172 template<
typename StateView>
175 const mfem::real_t *grad_r,
const mfem::real_t *grad_p,
176 mfem::real_t *grad_t)
const
178 return eos.grad_temperature(
phys,
L, S, grad_r, grad_p, grad_t,
T);
181 template<
typename StateView>
183 inline mfem::real_t
entropy(
const StateView &S)
const
188 template<
typename InStateView,
typename OutStateView>
192 return eos.entropy_state(
phys,
L, S, E,
T);
195 template<
typename InStateView,
typename OutStateView>
198 OutStateView &dPrim)
const
200 return eos.grad_entropy_to_grad_prim(
phys,
L, S, dS, dPrim,
T);
203 template<
typename InStateView,
typename OutStateView>
207 return eos.entropy_to_conserved(
phys,
L, Se, Sc,
T);
210 template<
typename InStateView,
typename OutStateView>
213 return eos.primitive_to_conserved(
phys,
L, prim, cons,
T);
218 template<
typename StateView>
225 template<
typename StateView>
232 template<
typename StateView>
Definition LTETable.hpp:19
Definition AxisymmetricGeometry.hpp:15
LTEGasModel< LTEGasEOS, LTETransport > LTEGas
Definition LTEGasModel.hpp:241
Definition LTEGasModel.hpp:24
MFEM_HOST_DEVICE void grad_entropy_to_grad_prim(const InStateView &S, const InStateView &dS, OutStateView &dPrim) const
Definition LTEGasModel.hpp:197
MFEM_HOST_DEVICE mfem::real_t cp(const StateView &S) const
Definition LTEGasModel.hpp:124
MFEM_HOST_DEVICE mfem::real_t internal_energy_from_pressure(const StateView &S, mfem::real_t pressure) const
Definition LTEGasModel.hpp:159
MFEM_HOST_DEVICE mfem::real_t entropy(const StateView &S) const
Definition LTEGasModel.hpp:183
MFEM_HOST_DEVICE mfem::real_t pressure(const StateView &S) const
Definition LTEGasModel.hpp:110
MFEM_HOST_DEVICE mfem::real_t kinetic_energy_density(const StateView &S) const
Definition LTEGasModel.hpp:152
TransportImpl transport
Definition LTEGasModel.hpp:30
MFEM_HOST_DEVICE int num_equations() const
Definition LTEGasModel.hpp:61
MFEM_HOST_DEVICE mfem::real_t density(const StateView &S) const
Definition LTEGasModel.hpp:81
Theseus::PhysicsConstants phys
Definition LTEGasModel.hpp:26
MFEM_HOST_DEVICE void grad_temperature(const StateView &S, const mfem::real_t *grad_r, const mfem::real_t *grad_p, mfem::real_t *grad_t) const
Definition LTEGasModel.hpp:174
MFEM_HOST_DEVICE void entropy_state(const InStateView &S, OutStateView &E) const
Definition LTEGasModel.hpp:190
MFEM_HOST_DEVICE int dim() const
Definition LTEGasModel.hpp:65
MFEM_HOST_DEVICE mfem::real_t temperature(const StateView &S) const
Definition LTEGasModel.hpp:138
void primitive_to_conserved(const InStateView &prim, OutStateView &cons) const
Definition LTEGasModel.hpp:211
MFEM_HOST_DEVICE mfem::real_t thermal_conductivity(const StateView &S) const
Definition LTEGasModel.hpp:234
MFEM_HOST_DEVICE mfem::real_t R_gas(const StateView &S) const
Definition LTEGasModel.hpp:131
MFEM_HOST_DEVICE mfem::real_t sound_speed(const StateView &S) const
Definition LTEGasModel.hpp:145
MFEM_HOST_DEVICE mfem::real_t viscosity(const StateView &S) const
Definition LTEGasModel.hpp:220
MFEM_HOST_DEVICE mfem::real_t bulk_viscosity(const StateView &S) const
Definition LTEGasModel.hpp:227
MFEM_HOST_DEVICE LTEGasModel()=default
MFEM_HOST_DEVICE void entropy_to_conserved(const InStateView &Se, OutStateView &Sc) const
Definition LTEGasModel.hpp:205
MFEM_HOST_DEVICE mfem::real_t scalar(const StateView &S, int s) const
Definition LTEGasModel.hpp:95
LTEGasModel< EOSImpl, TransportImpl > to_device(HostDataT &host_data)
Definition LTEGasModel.hpp:47
MFEM_HOST_DEVICE mfem::real_t momentum(const StateView &S, int d) const
Definition LTEGasModel.hpp:76
MFEM_HOST_DEVICE mfem::real_t velocity(const StateView &S, int d) const
Definition LTEGasModel.hpp:71
Theseus::StateLayout L
Definition LTEGasModel.hpp:27
EOSImpl eos
Definition LTEGasModel.hpp:29
MFEM_HOST_DEVICE LTEGasModel(const PhysicsConstants &phys_in, const StateLayout &L_in, const LTETables &T_in, const EOSImpl &eos_in, const TransportImpl &tr_in)
Definition LTEGasModel.hpp:35
MFEM_HOST_DEVICE mfem::real_t gamma(const StateView &S) const
Definition LTEGasModel.hpp:117
LTETables T
Definition LTEGasModel.hpp:28
MFEM_HOST_DEVICE LTEGasModel(const PhysicsConstants &phys_in, const StateLayout &L_in, const LTETables &T_in)
Definition LTEGasModel.hpp:41
MFEM_HOST_DEVICE mfem::real_t specific_internal_energy(const StateView &S) const
Definition LTEGasModel.hpp:167
MFEM_HOST_DEVICE mfem::real_t energy(const StateView &S) const
Definition LTEGasModel.hpp:102
MFEM_HOST_DEVICE mfem::real_t mass(const StateView &S) const
Definition LTEGasModel.hpp:88
Definition LTETable.hpp:75
LTETable::View tables
Definition LTETable.hpp:82
const mfem::real_t * lte_table
Definition LTETable.hpp:67
Definition Physics.hpp:14
Definition GasState.hpp:37
MFEM_HOST_DEVICE int nequations() const
Definition GasState.hpp:91
int dim
Definition GasState.hpp:38