SpECTRE  v2024.04.12
evolution::dg::BoundaryMessage< Dim > Struct Template Reference

[Charm++ Message] (https://charm.readthedocs.io/en/latest/charm%2B%2B/manual.html#messages) intended to be used in receive_data calls on the elements to send boundary data from one element on one node, to a different element on a (potentially) different node. More...

#include <BoundaryMessage.hpp>

Public Types

using base = CMessage_BoundaryMessage< Dim >
 

Public Member Functions

 BoundaryMessage (const size_t subcell_ghost_data_size_in, const size_t dg_flux_data_size_in, const bool owning_in, const bool enable_if_disabled_in, const size_t sender_node_in, const size_t sender_core_in, const int tci_status_in, const ::TimeStepId &current_time_step_id_in, const ::TimeStepId &next_time_step_id_in, const Direction< Dim > &neighbor_direction_in, const ElementId< Dim > &element_id_in, const Mesh< Dim > &volume_or_ghost_mesh_in, const Mesh< Dim - 1 > &interface_mesh_in, double *subcell_ghost_data_in, double *dg_flux_data_in)
 

Static Public Member Functions

static std::string name ()
 
static size_t total_bytes_with_data (const size_t subcell_size, const size_t dg_size)
 This is the size (in bytes) necessary to allocate a BoundaryMessage including the arrays of data as well. More...
 
static void * pack (BoundaryMessage *)
 
static BoundaryMessageunpack (void *)
 

Public Attributes

size_t subcell_ghost_data_size
 
size_t dg_flux_data_size
 
bool owning
 
bool enable_if_disabled
 
size_t sender_node
 
size_t sender_core
 
int tci_status
 
::TimeStepId current_time_step_id
 
::TimeStepId next_time_step_id
 
Direction< Dim > neighbor_direction
 
ElementId< Dim > element_id
 
Mesh< Dim > volume_or_ghost_mesh
 
Mesh< Dim - 1 > interface_mesh
 
double * subcell_ghost_data
 
double * dg_flux_data
 

Detailed Description

template<size_t Dim>
struct evolution::dg::BoundaryMessage< Dim >

[Charm++ Message] (https://charm.readthedocs.io/en/latest/charm%2B%2B/manual.html#messages) intended to be used in receive_data calls on the elements to send boundary data from one element on one node, to a different element on a (potentially) different node.

If this message is to be sent across nodes, the pack() and unpack() methods will be called on the sending and receiving node, respectively.

Member Function Documentation

◆ total_bytes_with_data()

template<size_t Dim>
static size_t evolution::dg::BoundaryMessage< Dim >::total_bytes_with_data ( const size_t  subcell_size,
const size_t  dg_size 
)
static

This is the size (in bytes) necessary to allocate a BoundaryMessage including the arrays of data as well.

This will add (subcell_size + dg_size) * sizeof(double) number of bytes to sizeof(BoundaryMessage<Dim>).


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