SpECTRE  v2024.04.12
ScalarAdvection::fd Namespace Reference

Finite difference functionality for ScalarAdvection system. More...

Classes

class  AoWeno53
 Adaptive-order WENO reconstruction hybridizing orders 5 and 3. See fd::reconstruction::aoweno_53() for details. 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...
 

Functions

template<size_t Dim>
bool operator== (const AoWeno53< Dim > &lhs, const AoWeno53< Dim > &rhs)
 
template<size_t Dim>
bool operator!= (const AoWeno53< Dim > &lhs, const AoWeno53< Dim > &rhs)
 
template<size_t Dim>
bool operator== (const MonotonisedCentral< Dim > &, const MonotonisedCentral< Dim > &)
 
template<size_t Dim>
bool operator!= (const MonotonisedCentral< Dim > &lhs, const MonotonisedCentral< Dim > &rhs)
 
template<size_t Dim, typename TagsList , typename Reconstructor >
void reconstruct_work (gsl::not_null< std::array< Variables< TagsList >, Dim > * > vars_on_lower_face, gsl::not_null< std::array< Variables< TagsList >, Dim > * > vars_on_upper_face, const Reconstructor &reconstruct, const Variables< tmpl::list< Tags::U > > volume_vars, const Element< Dim > &element, const DirectionalIdMap< Dim, evolution::dg::subcell::GhostData > &ghost_data, const Mesh< Dim > &subcell_mesh, const size_t ghost_zone_size)
 Reconstructs the scalar field \(U\). All results are written into vars_on_lower_face and vars_on_upper_face.
 
template<size_t Dim, 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< tmpl::list< Tags::U > > &subcell_volume_vars, const Element< Dim > &element, const DirectionalIdMap< Dim, evolution::dg::subcell::GhostData > &ghost_data, const Mesh< Dim > &subcell_mesh, const Direction< Dim > &direction_to_reconstruct, const size_t ghost_zone_size)
 Reconstructs the scalar field \(U\) for a given direction. All results are written into vars_on_face. More...
 
void register_derived_with_charm ()
 

Detailed Description

Finite difference functionality for ScalarAdvection system.

Function Documentation

◆ reconstruct_fd_neighbor_work()

template<size_t Dim, typename TagsList , typename ReconstructLower , typename ReconstructUpper >
void ScalarAdvection::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< tmpl::list< Tags::U > > &  subcell_volume_vars,
const Element< Dim > &  element,
const DirectionalIdMap< Dim, evolution::dg::subcell::GhostData > &  ghost_data,
const Mesh< Dim > &  subcell_mesh,
const Direction< Dim > &  direction_to_reconstruct,
const size_t  ghost_zone_size 
)

Reconstructs the scalar field \(U\) for a given direction. All results are written into vars_on_face.

This is used on DG elements to reconstruct \(U\) with their subcell neighbors' solution (ghost data received) on the shared faces.