21 #ifndef FUB_EQUATIONS_COMPRESSIBLE_ADVECTION_HPP 
   22 #define FUB_EQUATIONS_COMPRESSIBLE_ADVECTION_HPP 
   40 template <
typename Density, 
typename Momentum, 
typename PTDensity>
 
   47 template <
int VelocityRank>
 
   55 template <
typename... Xs>
 
   57   static constexpr 
auto names =
 
   58       std::make_tuple(
"Density", 
"Momentum", 
"PTdensity");
 
   60   static constexpr 
auto pointers_to_member =
 
   75 template <
int VelocityRank>
 
   83 template <
typename... Xs>
 
   85   static constexpr 
auto names =
 
   86       std::make_tuple(
"Density", 
"Momentum", 
"PTdensity", 
"PTinverse");
 
   87   static constexpr 
auto pointers_to_member =
 
   93   template <
int VelocityDim>
 
  104   static constexpr 
int Rank() noexcept { 
return N; }
 
  108     state.density = cons.density;
 
  109     state.momentum = cons.momentum;
 
  110     state.PTdensity = cons.PTdensity;
 
  111     state.PTinverse = cons.density / cons.PTdensity;
 
  118   template <
typename State>
 
  121     return typename State::Traits::template Depths<VelocityDim>{};
 
  127 template <
int SpaceDimension, 
int VelocityDimension = SpaceDimension>
 
  152                        const std::array<double, 5> Pvs, 
Duration dt, 
double dx,
 
This class is used by the HypebrolicSplitLevelIntegrator and delegates AMR related tasks to the AMReX...
Definition: AMReX/IntegratorContext.hpp:49
 
constexpr struct fub::euler::MomentumFn Momentum
 
constexpr struct fub::euler::DensityFn Density
 
The fub namespace.
Definition: AnyBoundaryCondition.hpp:31
 
std::chrono::duration< double > Duration
Definition: Duration.hpp:31
 
Direction
This is a type safe type to denote a dimensional split direction.
Definition: Direction.hpp:30
 
Definition: State.hpp:403
 
This type has a constructor which takes an equation and might allocate any dynamically sized member v...
Definition: State.hpp:335
 
Definition: CompressibleAdvection.hpp:71
 
PTInverse PTinverse
Definition: CompressibleAdvection.hpp:72
 
This is a template class for constructing conservative states for the perfect gas equations.
Definition: CompressibleAdvection.hpp:41
 
Momentum momentum
Definition: CompressibleAdvection.hpp:43
 
PTDensity PTdensity
Definition: CompressibleAdvection.hpp:44
 
Density density
Definition: CompressibleAdvection.hpp:42
 
This is a special FluxMethod class that uses the stored Pv field within the CompressibleAdvectionInte...
Definition: CompressibleAdvection.hpp:128
 
static Duration ComputeStableDt(const View< const Complete > &states, const StridedDataView< const double, SpaceDimension > Pv, double dx, Direction dir)
 
static void ComputeNumericFluxes(const View< Conservative > &fluxes, const View< const Complete > &states, const StridedDataView< const double, SpaceDimension > &Pv, Duration dt, double dx, Direction dir)
 
CompressibleAdvection< SpaceDimension, VelocityDimension > GetEquation() const noexcept
Definition: CompressibleAdvection.hpp:138
 
typename CompressibleAdvection< SpaceDimension, VelocityDimension >::Complete Complete
Definition: CompressibleAdvection.hpp:133
 
constexpr static int GetStencilWidth()
Definition: CompressibleAdvection.hpp:135
 
Duration ComputeStableDt(amrex::IntegratorContext &context, int level, Direction dir)
 
static void ComputeNumericFluxes(amrex::IntegratorContext &context, int level, Duration dt, Direction dir)
 
typename CompressibleAdvection< SpaceDimension, VelocityDimension >::Conservative Conservative
Definition: CompressibleAdvection.hpp:131
 
static Conservative ComputeNumericFluxes(const std::array< Complete, 4 > &stencil, const std::array< double, 5 > Pvs, Duration dt, double dx, Direction dir)
 
Definition: CompressibleAdvection.hpp:97
 
static constexpr int VelocityRank() noexcept
Definition: CompressibleAdvection.hpp:105
 
void CompleteFromCons(Complete &state, const Conservative &cons)
Definition: CompressibleAdvection.hpp:107
 
constexpr friend auto tag_invoke(fub::DepthsFn, const CompressibleAdvection &, Type< State >) noexcept
This specializes the customization point object "fub::Depth" for this equation.
Definition: CompressibleAdvection.hpp:119
 
static constexpr int Rank() noexcept
Definition: CompressibleAdvection.hpp:104
 
This type has a constructor which takes an equation and might allocate any dynamically sized member v...
Definition: State.hpp:251
 
Definition: State.hpp:166
 
Definition: PatchDataView.hpp:201
 
This type is used to tag scalar quantities.
Definition: State.hpp:109
 
Definition: State.hpp:162