SpECTRE  v2024.04.12
evolution::dg::subcell::GhostData Class Reference

#include <GhostData.hpp>

Public Member Functions

 GhostData (size_t number_of_buffers=1)
 
void next_buffer ()
 Move to the next internal mortar buffer.
 
size_t current_buffer_index () const
 Return the current internal buffer index.
 
size_t total_number_of_buffers () const
 Return the total number of buffers that this GhostData was constructed with.
 
void pup (PUP::er &p)
 
DataVectorlocal_ghost_data ()
 The local ghost data for in the current buffer. More...
 
const DataVectorlocal_ghost_data () const
 The local ghost data for in the current buffer. More...
 
DataVectorneighbor_ghost_data_for_reconstruction ()
 The ghost data from our neighbor which is meant to be used in reconstruction for in the current buffer. More...
 
const DataVectorneighbor_ghost_data_for_reconstruction () const
 The ghost data from our neighbor which is meant to be used in reconstruction for in the current buffer. More...
 

Friends

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

Detailed Description

Ghost data used on the subcell grid for reconstruction

This class holds both the local ghost data on the local subcell mesh for a given direction, as well as the neighbor's ghost data (on the neighbor's mesh) in that same direction. This class is similar to evolution::dg::MortarData in the sense that it holds both local and neighbor data in a direction. However, it differs because the local ghost data is not used in our own calculation when reconstructing the solution at the face between the elements. This is because we already have our own data on our own FD grid. Only the neighbor ghost data is used to reconstruct the solution on the face.

With Charm++ messages, storing the local ghost data is necessary because it must live somewhere so we can send a pointer to our neighbor.

Member Function Documentation

◆ local_ghost_data() [1/2]

DataVector & evolution::dg::subcell::GhostData::local_ghost_data ( )

The local ghost data for in the current buffer.

The non-const reference function can be used to edit the data in-place

◆ local_ghost_data() [2/2]

const DataVector & evolution::dg::subcell::GhostData::local_ghost_data ( ) const

The local ghost data for in the current buffer.

The non-const reference function can be used to edit the data in-place

◆ neighbor_ghost_data_for_reconstruction() [1/2]

DataVector & evolution::dg::subcell::GhostData::neighbor_ghost_data_for_reconstruction ( )

The ghost data from our neighbor which is meant to be used in reconstruction for in the current buffer.

The non-const reference function can be used to edit the data in-place

◆ neighbor_ghost_data_for_reconstruction() [2/2]

const DataVector & evolution::dg::subcell::GhostData::neighbor_ghost_data_for_reconstruction ( ) const

The ghost data from our neighbor which is meant to be used in reconstruction for in the current buffer.

The non-const reference function can be used to edit the data in-place


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