Finite Volume Solver  prototype
A framework to build finite volume solvers for the AG Klein at the Freie Universität Berlin.
Public Types | Public Member Functions | Static Public Member Functions | List of all members
fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension > Struct Template Reference

This is a special FluxMethod class that uses the stored Pv field within the CompressibleAdvectionIntegratorContext sa advection velocities. More...

#include <CompressibleAdvection.hpp>

Public Types

using Conservative = typename CompressibleAdvection< SpaceDimension, VelocityDimension >::Conservative
 
using Complete = typename CompressibleAdvection< SpaceDimension, VelocityDimension >::Complete
 

Public Member Functions

CompressibleAdvection< SpaceDimension, VelocityDimension > GetEquation () const noexcept
 
Duration ComputeStableDt (amrex::IntegratorContext &context, int level, Direction dir)
 

Static Public Member Functions

constexpr static int GetStencilWidth ()
 
static Duration ComputeStableDt (const View< const Complete > &states, const StridedDataView< const double, SpaceDimension > Pv, double dx, Direction dir)
 
static Conservative ComputeNumericFluxes (const std::array< Complete, 4 > &stencil, const std::array< double, 5 > Pvs, Duration dt, double dx, Direction dir)
 
static void ComputeNumericFluxes (amrex::IntegratorContext &context, int level, Duration dt, 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)
 

Detailed Description

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
struct fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >

This is a special FluxMethod class that uses the stored Pv field within the CompressibleAdvectionIntegratorContext sa advection velocities.

Member Typedef Documentation

◆ Complete

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
using fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::Complete = typename CompressibleAdvection<SpaceDimension, VelocityDimension>::Complete

◆ Conservative

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
using fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::Conservative = typename CompressibleAdvection<SpaceDimension, VelocityDimension>::Conservative

Member Function Documentation

◆ ComputeNumericFluxes() [1/3]

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
static void fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::ComputeNumericFluxes ( amrex::IntegratorContext context,
int  level,
Duration  dt,
Direction  dir 
)
static

◆ ComputeNumericFluxes() [2/3]

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
static Conservative fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::ComputeNumericFluxes ( const std::array< Complete, 4 > &  stencil,
const std::array< double, 5 >  Pvs,
Duration  dt,
double  dx,
Direction  dir 
)
static

◆ ComputeNumericFluxes() [3/3]

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
static void fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::ComputeNumericFluxes ( const View< Conservative > &  fluxes,
const View< const Complete > &  states,
const StridedDataView< const double, SpaceDimension > &  Pv,
Duration  dt,
double  dx,
Direction  dir 
)
static

◆ ComputeStableDt() [1/2]

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
Duration fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::ComputeStableDt ( amrex::IntegratorContext context,
int  level,
Direction  dir 
)

◆ ComputeStableDt() [2/2]

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
static Duration fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::ComputeStableDt ( const View< const Complete > &  states,
const StridedDataView< const double, SpaceDimension >  Pv,
double  dx,
Direction  dir 
)
static

◆ GetEquation()

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
CompressibleAdvection<SpaceDimension, VelocityDimension> fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::GetEquation ( ) const
inlinenoexcept

◆ GetStencilWidth()

template<int SpaceDimension, int VelocityDimension = SpaceDimension>
constexpr static int fub::CompressibleAdvectionFluxMethod< SpaceDimension, VelocityDimension >::GetStencilWidth ( )
inlinestaticconstexpr

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