SpECTRE  v2024.04.12
grmhd::ValenciaDivClean::ComputeFluxes Struct Reference

The fluxes of the conservative variables. More...

#include <Fluxes.hpp>

Public Types

using return_tags = tmpl::list<::Tags::Flux< grmhd::ValenciaDivClean::Tags::TildeD, tmpl::size_t< 3 >, Frame::Inertial >, ::Tags::Flux< grmhd::ValenciaDivClean::Tags::TildeYe, tmpl::size_t< 3 >, Frame::Inertial >, ::Tags::Flux< grmhd::ValenciaDivClean::Tags::TildeTau, tmpl::size_t< 3 >, Frame::Inertial >, ::Tags::Flux< grmhd::ValenciaDivClean::Tags::TildeS<>, tmpl::size_t< 3 >, Frame::Inertial >, ::Tags::Flux< grmhd::ValenciaDivClean::Tags::TildeB<>, tmpl::size_t< 3 >, Frame::Inertial >, ::Tags::Flux< grmhd::ValenciaDivClean::Tags::TildePhi, tmpl::size_t< 3 >, Frame::Inertial > >
 
using argument_tags = tmpl::list< grmhd::ValenciaDivClean::Tags::TildeD, grmhd::ValenciaDivClean::Tags::TildeYe, grmhd::ValenciaDivClean::Tags::TildeTau, grmhd::ValenciaDivClean::Tags::TildeS<>, grmhd::ValenciaDivClean::Tags::TildeB<>, grmhd::ValenciaDivClean::Tags::TildePhi, gr::Tags::Lapse< DataVector >, gr::Tags::Shift< DataVector, 3 >, gr::Tags::SqrtDetSpatialMetric< DataVector >, gr::Tags::SpatialMetric< DataVector, 3 >, gr::Tags::InverseSpatialMetric< DataVector, 3 >, hydro::Tags::Pressure< DataVector >, hydro::Tags::SpatialVelocity< DataVector, 3 >, hydro::Tags::LorentzFactor< DataVector >, hydro::Tags::MagneticField< DataVector, 3 > >
 

Static Public Member Functions

static void apply (gsl::not_null< tnsr::I< DataVector, 3, Frame::Inertial > * > tilde_d_flux, gsl::not_null< tnsr::I< DataVector, 3, Frame::Inertial > * > tilde_ye_flux, gsl::not_null< tnsr::I< DataVector, 3, Frame::Inertial > * > tilde_tau_flux, gsl::not_null< tnsr::Ij< DataVector, 3, Frame::Inertial > * > tilde_s_flux, gsl::not_null< tnsr::IJ< DataVector, 3, Frame::Inertial > * > tilde_b_flux, gsl::not_null< tnsr::I< DataVector, 3, Frame::Inertial > * > tilde_phi_flux, const Scalar< DataVector > &tilde_d, const Scalar< DataVector > &tilde_ye, const Scalar< DataVector > &tilde_tau, const tnsr::i< DataVector, 3, Frame::Inertial > &tilde_s, const tnsr::I< DataVector, 3, Frame::Inertial > &tilde_b, const Scalar< DataVector > &tilde_phi, const Scalar< DataVector > &lapse, const tnsr::I< DataVector, 3, Frame::Inertial > &shift, const Scalar< DataVector > &sqrt_det_spatial_metric, const tnsr::ii< DataVector, 3, Frame::Inertial > &spatial_metric, const tnsr::II< DataVector, 3, Frame::Inertial > &inv_spatial_metric, const Scalar< DataVector > &pressure, const tnsr::I< DataVector, 3, Frame::Inertial > &spatial_velocity, const Scalar< DataVector > &lorentz_factor, const tnsr::I< DataVector, 3, Frame::Inertial > &magnetic_field)
 

Detailed Description

The fluxes of the conservative variables.

\begin{align*} F^i({\tilde D}) = &~ {\tilde D} v^i_{tr} \\ F^i({\tilde Y}_e) = &~ {\tilde Y}_e v^i_{tr} \\ F^i({\tilde S}_j) = &~ {\tilde S}_j v^i_{tr} + \sqrt{\gamma} \alpha \left( p + p_m \right) \delta^i_j - \frac{B_j {\tilde B}^i}{W^2} - v_j {\tilde B}^i B^m v_m\\ F^i({\tilde \tau}) = &~ {\tilde \tau} v^i_{tr} + \sqrt{\gamma} \alpha \left( p + p_m \right) v^i - \alpha {\tilde B}^i B^m v_m \\ F^i({\tilde B}^j) = &~ {\tilde B}^j v^i_{tr} - \alpha v^j {\tilde B}^i + \alpha \gamma^{ij} {\tilde \Phi} \\ F^i({\tilde \Phi}) = &~ \alpha {\tilde B^i} - \beta^i {\tilde \Phi} \end{align*}

where the conserved variables \({\tilde D}\), \({\tilde Y}_e\), \({\tilde S}_i\), \({\tilde \tau}\), \({\tilde B}^i\), and \({\tilde \Phi}\) are a generalized mass-energy density, electron fraction, momentum density, specific internal energy density, magnetic field, and divergence cleaning field. Furthermore, \(v^i_{tr} = \alpha v^i - \beta^i\) is the transport velocity, \(\alpha\) is the lapse, \(\beta^i\) is the shift, \(\gamma\) is the determinant of the spatial metric \(\gamma_{ij}\), \(Y_e\) is the electron fraction, \(v^i\) is the spatial velocity, \(B^i\) is the spatial magnetic field measured by an Eulerian observer, \(p\) is the fluid pressure, and \(p_m = \frac{1}{2} \left[ \left( B^n v_n \right)^2 + B^n B_n / W^2 \right]\) is the magnetic pressure.


The documentation for this struct was generated from the following file: