SpECTRE  v2024.04.12
domain::CoordinateMaps::DiscreteRotation< VolumeDim > Class Template Reference

A CoordinateMap that swaps/negates the coordinate axes. More...

#include <DiscreteRotation.hpp>

Public Member Functions

 DiscreteRotation (OrientationMap< VolumeDim > orientation=OrientationMap< VolumeDim >{})
 
 DiscreteRotation (const DiscreteRotation &)=default
 
 DiscreteRotation (DiscreteRotation &&)=default
 
DiscreteRotationoperator= (const DiscreteRotation &)=default
 
DiscreteRotationoperator= (DiscreteRotation &&)=default
 
template<typename T >
std::array< tt::remove_cvref_wrap_t< T >, VolumeDim > operator() (const std::array< T, VolumeDim > &source_coords) const
 
std::optional< std::array< double, VolumeDim > > inverse (const std::array< double, VolumeDim > &target_coords) const
 The inverse function is only callable with doubles because the inverse might fail if called for a point out of range, and it is unclear what should happen if the inverse were to succeed for some points in a DataVector but fail for other points.
 
template<typename T >
tnsr::Ij< tt::remove_cvref_wrap_t< T >, VolumeDim, Frame::NoFramejacobian (const std::array< T, VolumeDim > &source_coords) const
 
template<typename T >
tnsr::Ij< tt::remove_cvref_wrap_t< T >, VolumeDim, Frame::NoFrameinv_jacobian (const std::array< T, VolumeDim > &source_coords) const
 
void pup (PUP::er &p)
 
bool is_identity () const
 

Static Public Attributes

static constexpr size_t dim = VolumeDim
 

Friends

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

Detailed Description

template<size_t VolumeDim>
class domain::CoordinateMaps::DiscreteRotation< VolumeDim >

A CoordinateMap that swaps/negates the coordinate axes.

Providing an OrientationMap to the constructor allows for the resulting map to have different orientations.


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