SpECTRE  v2023.09.07
evolution::dg::subcell::SubcellOptions Class Reference

Holds the system-agnostic subcell parameters, such as numbers controlling when to switch between DG and subcell. More...

#include <SubcellOptions.hpp>

Classes

struct  AlwaysUseSubcells
 If true, then we always use the subcell method, not DG. More...
 
struct  FiniteDifferenceDerivativeOrder
 The order of the FD derivative used. More...
 
struct  InitialData
 
struct  InitialDataPerssonExponent
 The exponent \(\alpha\) passed to the Persson troubled-cell indicator when applied to the initial data. More...
 
struct  InitialDataRdmpDelta0
 The \(\delta_0\) parameter in the relaxed discrete maximum principle troubled-cell indicator when applied to the initial data. More...
 
struct  InitialDataRdmpEpsilon
 The \(\epsilon\) parameter in the relaxed discrete maximum principle troubled-cell indicator when applied to the initial data. More...
 
struct  OnlyDgBlocksAndGroups
 A list of block names on which to never do subcell. More...
 
struct  PerssonExponent
 The exponent \(\alpha\) passed to the Persson troubled-cell indicator. More...
 
struct  RdmpDelta0
 The \(\delta_0\) parameter in the relaxed discrete maximum principle troubled-cell indicator. More...
 
struct  RdmpEpsilon
 The \(\epsilon\) parameter in the relaxed discrete maximum principle troubled-cell indicator. More...
 
struct  SubcellToDgReconstructionMethod
 Method to use for reconstructing the DG solution from the subcell solution. More...
 
struct  UseHalo
 Use a width-one halo of FD elements around any troubled element. More...
 

Public Types

using options = tmpl::list< InitialDataRdmpDelta0, InitialDataRdmpEpsilon, RdmpDelta0, RdmpEpsilon, InitialDataPerssonExponent, PerssonExponent, AlwaysUseSubcells, SubcellToDgReconstructionMethod, UseHalo, OnlyDgBlocksAndGroups, FiniteDifferenceDerivativeOrder >
 

Public Member Functions

 SubcellOptions (double initial_data_rdmp_delta0, double initial_data_rdmp_epsilon, double rdmp_delta0, double rdmp_epsilon, double initial_data_persson_exponent, double persson_exponent, bool always_use_subcells, fd::ReconstructionMethod recons_method, bool use_halo, std::optional< std::vector< std::string > > only_dg_block_and_group_names, ::fd::DerivativeOrder finite_difference_derivative_order)
 
template<size_t Dim>
 SubcellOptions (const SubcellOptions &subcell_options_with_block_names, const DomainCreator< Dim > &domain_creator)
 Given an existing SubcellOptions that was created from block and group names, create one that stores block IDs. More...
 
void pup (PUP::er &p)
 
double initial_data_rdmp_delta0 () const
 
double initial_data_rdmp_epsilon () const
 
double rdmp_delta0 () const
 
double rdmp_epsilon () const
 
double initial_data_persson_exponent () const
 
double persson_exponent () const
 
bool always_use_subcells () const
 
fd::ReconstructionMethod reconstruction_method () const
 
bool use_halo () const
 
const std::vector< size_t > & only_dg_block_ids () const
 
::fd::DerivativeOrder finite_difference_derivative_order () const
 

Static Public Attributes

static constexpr Options::String help
 

Friends

bool operator== (const SubcellOptions &lhs, const SubcellOptions &rhs)
 

Detailed Description

Holds the system-agnostic subcell parameters, such as numbers controlling when to switch between DG and subcell.

Constructor & Destructor Documentation

◆ SubcellOptions()

template<size_t Dim>
evolution::dg::subcell::SubcellOptions::SubcellOptions ( const SubcellOptions subcell_options_with_block_names,
const DomainCreator< Dim > &  domain_creator 
)

Given an existing SubcellOptions that was created from block and group names, create one that stores block IDs.

The DomainCreator is used to convert block and group names into IDs and also to check that all listed block names and groups are in the domain.

Note
This is a workaround since our option parser does not allow us to retrieve options specified somewhere completely different in the input file.

Member Data Documentation

◆ help

constexpr Options::String evolution::dg::subcell::SubcellOptions::help
staticconstexpr
Initial value:
{
"System-agnostic options for the DG-subcell method."}

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