SpECTRE
v2025.03.17
|
Brill Lindquist data [31] corresponding to two black holes momentarily at rest. More...
#include <BrillLindquist.hpp>
Classes | |
struct | CenterA |
struct | CenterB |
class | IntermediateComputer |
Computes the intermediates and quantities that we do not want to recompute across the solution's implementation. More... | |
class | IntermediateVars |
Computes and returns spacetime quantities of interest. More... | |
struct | internal_tags |
Tags defined for intermediates specific to BrillLindquist data. More... | |
struct | MassA |
struct | MassB |
Public Types | |
using | options = implementation defined |
template<typename DataType , typename Frame > | |
using | DerivSpatialMetric = ::Tags::deriv< gr::Tags::SpatialMetric< DataType, volume_dim, Frame >, tmpl::size_t< volume_dim >, Frame > |
template<typename DataType , typename Frame > | |
using | CachedBuffer = CachedTempBuffer< internal_tags::x_minus_center_a< DataType, Frame >, internal_tags::r_a< DataType >, internal_tags::x_minus_center_b< DataType, Frame >, internal_tags::r_b< DataType >, internal_tags::conformal_factor< DataType >, internal_tags::deriv_conformal_factor< DataType, Frame >, gr::Tags::SpatialMetric< DataType, 3, Frame >, DerivSpatialMetric< DataType, Frame > > |
Buffer for caching computed intermediates and quantities that we do not want to recompute across the solution's implementation. More... | |
![]() | |
using | DerivLapse = ::Tags::deriv< gr::Tags::Lapse< DataType >, tmpl::size_t< volume_dim >, Frame > |
using | DerivShift = ::Tags::deriv< gr::Tags::Shift< DataType, volume_dim, Frame >, tmpl::size_t< volume_dim >, Frame > |
using | DerivSpatialMetric = ::Tags::deriv< gr::Tags::SpatialMetric< DataType, volume_dim, Frame >, tmpl::size_t< volume_dim >, Frame > |
using | tags = implementation defined |
Public Member Functions | |
BrillLindquist (double mass_a, double mass_b, const std::array< double, 3 > ¢er_a, const std::array< double, 3 > ¢er_b, const Options::Context &context={}) | |
BrillLindquist (CkMigrateMessage *) | |
BrillLindquist (const BrillLindquist &)=default | |
BrillLindquist & | operator= (const BrillLindquist &)=default |
BrillLindquist (BrillLindquist &&)=default | |
BrillLindquist & | operator= (BrillLindquist &&)=default |
template<typename DataType , typename Frame , typename... Tags> | |
tuples::TaggedTuple< Tags... > | variables (const tnsr::I< DataType, volume_dim, Frame > &x, tmpl::list< Tags... >) const |
Computes and returns spacetime quantities for BrillLindquist data at a specific Cartesian position. More... | |
void | pup (PUP::er &p) |
double | mass_a () const |
Return the mass of black hole A. | |
double | mass_b () const |
Return the mass of black hole B. | |
const std::array< double, 3 > & | center_a () const |
Return the center of black hole A. | |
const std::array< double, 3 > & | center_b () const |
Return the center of black hole B. | |
Static Public Attributes | |
static constexpr Options::String | help |
![]() | |
static constexpr size_t | volume_dim |
Brill Lindquist data [31] corresponding to two black holes momentarily at rest.
The spatial metric is given by
The data is time symmetric (
using gr::AnalyticData::BrillLindquist::CachedBuffer = CachedTempBuffer<internal_tags::x_minus_center_a<DataType, Frame>, internal_tags::r_a<DataType>, internal_tags::x_minus_center_b<DataType, Frame>, internal_tags::r_b<DataType>, internal_tags::conformal_factor<DataType>, internal_tags::deriv_conformal_factor<DataType, Frame>, gr::Tags::SpatialMetric<DataType, 3, Frame>, DerivSpatialMetric<DataType, Frame> > |
Buffer for caching computed intermediates and quantities that we do not want to recompute across the solution's implementation.
See internal_tags
documentation for details on what quantities the internal tags represent
|
inline |
Computes and returns spacetime quantities for BrillLindquist data at a specific Cartesian position.
x | Cartesian coordinates of the position at which to compute spacetime quantities |
|
staticconstexpr |