|
| KleinGordonWorldtubeH5BufferUpdater (const std::string &cce_data_filename, std::optional< double > extraction_radius=std::nullopt) |
| The constructor takes the filename of the SpEC h5 file that will be used for boundary data. The extraction radius can either be passed in directly, or if it takes the value std::nullopt , then the extraction radius is retrieved as an integer in the filename.
|
|
| WRAPPED_PUPable_decl_template (KleinGordonWorldtubeH5BufferUpdater) |
|
| KleinGordonWorldtubeH5BufferUpdater (CkMigrateMessage *) |
|
double | update_buffers_for_time (gsl::not_null< Variables< klein_gordon_input_tags > * > buffers, gsl::not_null< size_t * > time_span_start, gsl::not_null< size_t * > time_span_end, double time, size_t computation_l_max, size_t interpolator_length, size_t buffer_depth) const override |
| update the buffers , time_span_start , and time_span_end with time-varies-fastest, Goldberg modal data and the start and end index in the member time_buffer_ covered by the newly updated buffers . More...
|
|
std::unique_ptr< WorldtubeBufferUpdater< klein_gordon_input_tags > > | get_clone () const override |
|
bool | time_is_outside_range (const double time) const override |
| The time can only be supported in the buffer update if it is between the first and last time of the input file. More...
|
|
size_t | get_l_max () const override |
| retrieves the l_max of the input file More...
|
|
double | get_extraction_radius () const override |
| retrieves the extraction radius. In most normal circumstances, this will not be needed for Klein-Gordon data. More...
|
|
DataVector & | get_time_buffer () override |
| The time buffer is supplied by non-const reference to allow views to easily point into the buffer. More...
|
|
bool | has_version_history () const override |
|
void | pup (PUP::er &p) override |
| Serialization for Charm++.
|
|
| WRAPPED_PUPable_abstract (WorldtubeBufferUpdater) |
|
virtual double | update_buffers_for_time (gsl::not_null< Variables< klein_gordon_input_tags > * > buffers, gsl::not_null< size_t * > time_span_start, gsl::not_null< size_t * > time_span_end, double time, size_t computation_l_max, size_t interpolator_length, size_t buffer_depth) const=0 |
|
virtual std::unique_ptr< WorldtubeBufferUpdater > | get_clone () const=0 |
|
virtual bool | time_is_outside_range (double time) const=0 |
|
virtual size_t | get_l_max () const=0 |
|
virtual double | get_extraction_radius () const=0 |
|
virtual bool | has_version_history () const=0 |
|
virtual DataVector & | get_time_buffer ()=0 |
|
A WorldtubeBufferUpdater
specialized to the Klein-Gordon input worldtube H5 file produced by the SpEC format. We assume the scalar field is real-valued.