|
SpECTRE
v2025.08.19
|
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 = tmpl::list< ForceFree::Tags::TildeJ, ForceFree::Tags::TildeE, ForceFree::Tags::TildeB, ForceFree::Tags::TildePsi, ForceFree::Tags::TildePhi, ForceFree::Tags::TildeQ > |
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 \(\tilde{E}^i, \tilde{B}^i, \tilde{\psi}, \tilde{\phi}, \tilde{q}\) and the generalized electric current density \(\tilde{J}^i\). All results are written into 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 \(\tilde{E}^i, \tilde{B}^i, \tilde{\psi}, \tilde{\phi}, \tilde{q}\) and the generalized electric current density \(\tilde{J}^i\). More... | |
| 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 \(\tilde{E}^i, \tilde{B}^i, \tilde{\psi}, \tilde{\phi}, \tilde{q}\) and the generalized electric current density \(\tilde{J}^i\).
All results are written into vars_on_face.
This is used on DG elements to reconstruct their subcell neighbors' solution on the shared faces.