21 #ifndef FUB_EQUATIONS_IDEAL_GAS_MIX_MUSCL_HANCOCK_CHAR_HPP 
   22 #define FUB_EQUATIONS_IDEAL_GAS_MIX_MUSCL_HANCOCK_CHAR_HPP 
   44       : 
species(eq.GetReactor().GetNSpecies()) {}
 
   97     for (
int d = 0; d < 3; ++d) {
 
   98       velocity.row(d) = q.momentum.row(d) / q.density;
 
  104     for (
int d = 0; d < 2; ++d) {
 
  105       velocity.row(d) = q.momentum.row(d) / q.density;
 
  111     for (
int d = 0; d < 1; ++d) {
 
  112       velocity.row(d) = q.momentum.row(d) / q.density;
 
  141   template <
typename Limiter>
 
This class applies a base flux nethod on a view of states.
Definition: flux_method/FluxMethod.hpp:57
 
Definition: HllMethod.hpp:139
 
This is a variation of the Muscl Hancock Method where the reconstruction at the half time level is ba...
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:130
 
const Equation & GetEquation() const noexcept
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:175
 
void ComputeNumericFlux(Conservative &flux, span< const Complete, 4 > stencil, Duration dt, double dx, Direction dir)
 
IdealGasMix< Rank > equation_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:181
 
void ComputeNumericFlux(ConservativeArray &flux, Array1d face_fractions, span< const CompleteArray, 4 > stencil, span< const Array1d, 4 > volume_fractions, Duration dt, double dx, Direction dir)
 
Characteristics amplitudes_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:185
 
CharacteristicsArray slopes_array_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:193
 
MusclHancockCharacteristic(const IdealGasMix< Rank > &equation)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:138
 
std::function< Array1d(Array1d, Array1d)> array_limiter_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:194
 
Characteristics slopes_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:186
 
::fub::Complete< Equation > Complete
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:133
 
void ComputeNumericFlux(ConservativeArray &flux, span< const CompleteArray, 4 > stencil, Duration dt, double dx, Direction dir)
 
Array1d ComputeStableDt(span< const CompleteArray, 4 > states, Array1d face_fraction, span< const Array1d, 4 > volume_fraction, double dx, Direction dir) noexcept
Returns an array of stable time step estimates based on HLL signal velocities.
 
CharacteristicsArray amplitudes_array_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:192
 
HlleMethod hlle_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:198
 
Equation & GetEquation() noexcept
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:178
 
double ComputeStableDt(span< const Complete, 4 > states, double dx, Direction dir) noexcept
Returns a stable time step estimate based on HLL signal velocities.
 
MusclHancockCharacteristic(const IdealGasMix< Rank > &equation, Limiter &&limiter)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:142
 
Primitives diffs_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:184
 
std::array< Complete, 2 > reconstruction_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:182
 
std::array< CompleteArray, 2 > reconstruction_array_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:189
 
PrimitivesArray diffs_array_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:191
 
Array1d ComputeStableDt(span< const CompleteArray, 4 > states, double dx, Direction dir) noexcept
 
std::function< double(double, double)> limiter_
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:187
 
static constexpr int GetStencilWidth() noexcept
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:147
 
::fub::CompleteArray< Equation > CompleteArray
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:135
 
A span is a view over a contiguous sequence of objects, the storage of which is owned by some other o...
Definition: span.hpp:81
 
The fub namespace.
Definition: AnyBoundaryCondition.hpp:31
 
Array< double, 3 > Array3d
Definition: Eigen.hpp:56
 
std::conditional_t< N==1||M==1, Eigen::Array< T, N, M >, Eigen::Array< T, N, M, Eigen::RowMajor > > Array
Definition: Eigen.hpp:50
 
Array< double, Eigen::Dynamic > ArrayXd
Definition: Eigen.hpp:57
 
std::chrono::duration< double > Duration
Definition: Duration.hpp:31
 
Array< double, 1 > Array1d
Definition: Eigen.hpp:53
 
constexpr const int kDefaultChunkSize
Definition: Eigen.hpp:39
 
Direction
This is a type safe type to denote a dimensional split direction.
Definition: Direction.hpp:30
 
Definition: StateArray.hpp:178
 
This type has a constructor which takes an equation and might allocate any dynamically sized member v...
Definition: State.hpp:335
 
This is a customization point for equations which can define two signal velocities for usage with the...
Definition: EinfeldtSignalVelocities.hpp:37
 
Definition: flux_method/MusclHancockMethod.hpp:137
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:47
 
Array1d minus
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:48
 
Array1d zero
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:49
 
Array1d v
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:51
 
Array1d plus
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:50
 
Array1d w
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:52
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:31
 
double plus
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:34
 
double zero
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:33
 
double w
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:36
 
double minus
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:32
 
double v
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:35
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:90
 
Array3d velocity
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:92
 
Array1d density
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:91
 
Array1d pressure
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:93
 
BasicPrimitivesArray(const CompleteArray< IdealGasMix< 1 >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:109
 
BasicPrimitivesArray(const CompleteArray< IdealGasMix< 3 >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:95
 
BasicPrimitivesArray(const CompleteArray< IdealGasMix< 2 >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:102
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:63
 
BasicPrimitives(const Complete< IdealGasMix< 3 >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:68
 
Array< double, 3, 1 > velocity
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:65
 
double pressure
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:66
 
double density
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:64
 
BasicPrimitives(const Complete< IdealGasMix< 2 >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:72
 
BasicPrimitives(const Complete< IdealGasMix< 1 >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:77
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:55
 
CharacteristicsArray(const IdealGasMix< Rank > &eq)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:59
 
ArrayXd species
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:56
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:39
 
Array< double, -1, 1 > species
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:40
 
Characteristics(const IdealGasMix< Rank > &eq)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:43
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:117
 
ArrayXd species
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:122
 
PrimitivesArray(const CompleteArray< IdealGasMix< Rank >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:119
 
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:82
 
Primitives(const Complete< IdealGasMix< Rank >> &q)
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:84
 
Array< double, -1, 1 > species
Definition: ideal_gas_mix/MusclHancockCharactersticMethod.hpp:87