SpECTRE
v2025.03.17
|
Finite difference functionality for ForceFree evolution system. More...
Classes | |
class | AdaptiveOrder |
Adaptive order FD reconstruction. See fd::reconstruction::positivity_preserving_adaptive_order() for details. Note that in the ForceFree evolution system no variable needs to be kept positive. More... | |
class | MonotonisedCentral |
Monotonised central reconstruction. See fd::reconstruction::monotonised_central() for details. More... | |
class | Reconstructor |
The base class from which all reconstruction schemes must inherit. More... | |
class | Wcns5z |
Fifth order weighted nonlinear compact scheme reconstruction using the Z oscillation indicator. See fd::reconstruction::wcns5z() for details. More... | |
Typedefs | |
using | tags_list_for_reconstruction = implementation defined |
Functions | |
bool | operator== (const MonotonisedCentral &, const MonotonisedCentral &) |
bool | operator!= (const MonotonisedCentral &lhs, const MonotonisedCentral &rhs) |
template<typename TagsList , typename Reconstructor > | |
void | reconstruct_work (gsl::not_null< std::array< Variables< TagsList >, 3 > * > vars_on_lower_face, gsl::not_null< std::array< Variables< TagsList >, 3 > * > vars_on_upper_face, const Reconstructor &reconstruct, const Variables< System::variables_tag::tags_list > &volume_evolved_vars, const tnsr::I< DataVector, 3, Frame::Inertial > &volume_tilde_j, const Element< 3 > &element, const DirectionalIdMap< 3, evolution::dg::subcell::GhostData > &neighbor_data, const Mesh< 3 > &subcell_mesh, const size_t ghost_zone_size) |
Reconstructs the evolved variables vars_on_lower_face and vars_on_upper_face . | |
template<typename TagsList , typename ReconstructLower , typename ReconstructUpper > | |
void | reconstruct_fd_neighbor_work (gsl::not_null< Variables< TagsList > * > vars_on_face, const ReconstructLower &reconstruct_lower_neighbor, const ReconstructUpper &reconstruct_upper_neighbor, const Variables< System::variables_tag::tags_list > &subcell_volume_evolved_vars, const tnsr::I< DataVector, 3, Frame::Inertial > &subcell_volume_tilde_j, const Element< 3 > &element, const DirectionalIdMap< 3, evolution::dg::subcell::GhostData > &ghost_data, const Mesh< 3 > &subcell_mesh, const Direction< 3 > &direction_to_reconstruct, const size_t ghost_zone_size) |
Reconstructs the evolved variables | |
void | register_derived_with_charm () |
Finite difference functionality for ForceFree evolution system.
void ForceFree::fd::reconstruct_fd_neighbor_work | ( | gsl::not_null< Variables< TagsList > * > | vars_on_face, |
const ReconstructLower & | reconstruct_lower_neighbor, | ||
const ReconstructUpper & | reconstruct_upper_neighbor, | ||
const Variables< System::variables_tag::tags_list > & | subcell_volume_evolved_vars, | ||
const tnsr::I< DataVector, 3, Frame::Inertial > & | subcell_volume_tilde_j, | ||
const Element< 3 > & | element, | ||
const DirectionalIdMap< 3, evolution::dg::subcell::GhostData > & | ghost_data, | ||
const Mesh< 3 > & | subcell_mesh, | ||
const Direction< 3 > & | direction_to_reconstruct, | ||
const size_t | ghost_zone_size | ||
) |
Reconstructs the evolved variables
All results are written into vars_on_face
.
This is used on DG elements to reconstruct their subcell neighbors' solution on the shared faces.