SpECTRE  v2024.03.19
domain::CoordinateMaps Namespace Reference

Contains all coordinate maps. More...

Namespaces

namespace  FocallyLiftedInnerMaps
 Contains FocallyLiftedInnerMaps.
 
namespace  FocallyLiftedMapHelpers
 Holds helper functions for use with domain::CoordinateMaps::FocallyLiftedMap.
 
namespace  Tags
 Tags for the coordinate maps.
 
namespace  TimeDependent
 Contains the time-dependent coordinate maps.
 

Classes

class  Affine
 Affine map from \(\xi \in [A, B]\rightarrow x \in [a, b]\). More...
 
class  BulgedCube
 Three dimensional map from the cube to a bulged cube. The cube is shaped such that the surface is compatible with the inner surface of Wedge<3>. The shape of the object can be chosen to be cubical, if the sphericity is set to 0, or to a sphere, if the sphericity is set to 1. The sphericity can be set to any number between 0 and 1 for a bulged cube. More...
 
struct  Composition
 A composition of coordinate maps at runtime. More...
 
struct  Composition< Frames, Dim, std::index_sequence< Is... > >
 
class  CylindricalEndcap
 Map from 3D unit right cylinder to a volume that connects portions of two spherical surfaces. More...
 
class  CylindricalFlatEndcap
 Map from 3D unit right cylinder to a volume that connects a portion of a circle to a portion of a spherical surface. More...
 
class  CylindricalFlatSide
 Map from 3D unit right cylindrical shell to a volume that connects a portion of an annulus to a portion of a spherical surface. More...
 
class  CylindricalSide
 Map from a 3D unit right cylindrical shell to a volume that connects portions of two spherical surfaces. More...
 
class  DiscreteRotation
 A CoordinateMap that swaps/negates the coordinate axes. More...
 
class  EquatorialCompression
 Redistributes gridpoints on the sphere. More...
 
class  Equiangular
 Non-linear map from \(\xi \in [A, B]\rightarrow x \in [a, b]\). More...
 
class  FocallyLiftedMap
 Map from \((\bar{x},\bar{y},\bar{z})\) to the volume contained between a 2D surface and the surface of a 2-sphere. More...
 
class  Frustum
 A reorientable map from the cube to a frustum. More...
 
class  Identity
 Identity map from \(\xi \rightarrow x\). More...
 
class  Interval
 Maps \(\xi\) in the 1D interval \([A, B]\) to \(x\) in the interval \([a, b]\) according to a domain::CoordinateMaps::Distribution. More...
 
class  KerrHorizonConforming
 Distorts cartesian coordinates \(x^i\) such that a coordinate sphere \(\delta_{ij}x^ix^j=C^2\) is mapped to an ellipsoid of constant Kerr-Schild radius \(r=C\). More...
 
class  ProductOf2Maps
 Product of two codimension=0 CoordinateMaps. More...
 
class  ProductOf3Maps
 Product of three one-dimensional CoordinateMaps. More...
 
class  Rotation< 2 >
 Spatial rotation in two dimensions. More...
 
class  Rotation< 3 >
 Spatial rotation in three dimensions using Euler angles. More...
 
class  SpecialMobius
 Redistributes gridpoints within the unit sphere. More...
 
class  UniformCylindricalEndcap
 Map from 3D unit right cylinder to a volume that connects portions of two spherical surfaces. More...
 
class  UniformCylindricalFlatEndcap
 Map from 3D unit right cylinder to a 3D volume that connects a portion of a spherical surface with a disk. More...
 
class  UniformCylindricalSide
 Map from 3D unit right cylindrical shell to a volume that connects portions of two spherical surfaces. More...
 
class  Wedge
 Map from a square or cube to a wedge. More...
 

Enumerations

enum class  Distribution {
  Linear , Equiangular , Logarithmic , Inverse ,
  Projective
}
 Distribution of grid points in one dimension. More...
 

Functions

bool operator!= (const CoordinateMaps::Affine &lhs, const CoordinateMaps::Affine &rhs)
 
bool operator!= (const BulgedCube &lhs, const BulgedCube &rhs)
 
template<typename FirstMap , typename... Maps>
 Composition (std::unique_ptr< FirstMap >, std::unique_ptr< Maps >... maps) -> Composition< tmpl::list< typename FirstMap::source_frame, typename FirstMap::target_frame, typename Maps::target_frame... >, FirstMap::dim >
 
bool operator!= (const CylindricalEndcap &lhs, const CylindricalEndcap &rhs)
 
bool operator!= (const CylindricalFlatEndcap &lhs, const CylindricalFlatEndcap &rhs)
 
bool operator!= (const CylindricalFlatSide &lhs, const CylindricalFlatSide &rhs)
 
bool operator!= (const CylindricalSide &lhs, const CylindricalSide &rhs)
 
template<size_t VolumeDim>
bool operator!= (const CoordinateMaps::DiscreteRotation< VolumeDim > &lhs, const CoordinateMaps::DiscreteRotation< VolumeDim > &rhs)
 
std::ostreamoperator<< (std::ostream &os, Distribution distribution)
 
bool operator!= (const EquatorialCompression &lhs, const EquatorialCompression &rhs)
 
bool operator!= (const CoordinateMaps::Equiangular &lhs, const CoordinateMaps::Equiangular &rhs)
 
template<typename InnerMap >
bool operator== (const FocallyLiftedMap< InnerMap > &lhs, const FocallyLiftedMap< InnerMap > &rhs)
 
template<typename InnerMap >
bool operator!= (const FocallyLiftedMap< InnerMap > &lhs, const FocallyLiftedMap< InnerMap > &rhs)
 
bool operator!= (const Frustum &lhs, const Frustum &rhs)
 
template<size_t Dim>
constexpr bool operator== (const CoordinateMaps::Identity< Dim > &, const CoordinateMaps::Identity< Dim > &)
 
template<size_t Dim>
constexpr bool operator!= (const CoordinateMaps::Identity< Dim > &lhs, const CoordinateMaps::Identity< Dim > &rhs)
 
bool operator!= (const CoordinateMaps::Interval &lhs, const CoordinateMaps::Interval &rhs)
 
bool operator!= (const KerrHorizonConforming &lhs, const KerrHorizonConforming &rhs)
 
template<typename Map1 , typename Map2 >
bool operator!= (const ProductOf2Maps< Map1, Map2 > &lhs, const ProductOf2Maps< Map1, Map2 > &rhs)
 
template<typename Map1 , typename Map2 , typename Map3 >
bool operator!= (const ProductOf3Maps< Map1, Map2, Map3 > &lhs, const ProductOf3Maps< Map1, Map2, Map3 > &rhs)
 
bool operator!= (const Rotation< 2 > &lhs, const Rotation< 2 > &rhs)
 
bool operator!= (const Rotation< 3 > &lhs, const Rotation< 3 > &rhs)
 
bool operator!= (const SpecialMobius &lhs, const SpecialMobius &rhs)
 
bool operator!= (const UniformCylindricalEndcap &lhs, const UniformCylindricalEndcap &rhs)
 
bool is_uniform_cylindrical_endcap_invertible_on_sphere_one (const std::array< double, 3 > &center_one, const std::array< double, 3 > &center_two, const double radius_one, const double radius_two, const double theta_max_one, const double theta_max_two)
 Given parameters for UniformCylindricalEndcap, returns whether the map is invertible for target points on sphere_one. More...
 
bool operator!= (const UniformCylindricalFlatEndcap &lhs, const UniformCylindricalFlatEndcap &rhs)
 
bool is_uniform_cylindrical_flat_endcap_invertible_on_sphere_one (const std::array< double, 3 > &center_one, const std::array< double, 3 > &center_two, const double radius_one, const double radius_two, const double theta_max_one)
 Given parameters for UniformCylindricalFlatEndcap, returns whether the map is invertible for target points on sphere_one. More...
 
bool operator!= (const UniformCylindricalSide &lhs, const UniformCylindricalSide &rhs)
 
template<size_t Dim>
bool operator!= (const Wedge< Dim > &lhs, const Wedge< Dim > &rhs)
 

Variables

template<typename FirstMap , typename... Maps>
constexpr size_t map_dim = FirstMap::dim
 

Detailed Description

Contains all coordinate maps.

Enumeration Type Documentation

◆ Distribution

Distribution of grid points in one dimension.

Used to select a distribution of grid points in the input file.

See also
domain::CoordinateMaps::Wedge

Function Documentation

◆ is_uniform_cylindrical_endcap_invertible_on_sphere_one()

bool domain::CoordinateMaps::is_uniform_cylindrical_endcap_invertible_on_sphere_one ( const std::array< double, 3 > &  center_one,
const std::array< double, 3 > &  center_two,
const double  radius_one,
const double  radius_two,
const double  theta_max_one,
const double  theta_max_two 
)

Given parameters for UniformCylindricalEndcap, returns whether the map is invertible for target points on sphere_one.

is_uniform_cylindrical_endcap_invertible_on_sphere_one is publicly visible because it is useful for unit tests that need to choose valid parameters to pass into the map.

◆ is_uniform_cylindrical_flat_endcap_invertible_on_sphere_one()

bool domain::CoordinateMaps::is_uniform_cylindrical_flat_endcap_invertible_on_sphere_one ( const std::array< double, 3 > &  center_one,
const std::array< double, 3 > &  center_two,
const double  radius_one,
const double  radius_two,
const double  theta_max_one 
)

Given parameters for UniformCylindricalFlatEndcap, returns whether the map is invertible for target points on sphere_one.

is_uniform_cylindrical_flat_endcap_invertible_on_sphere_one is publicly visible because it is useful for unit tests that need to choose valid parameters to pass into the map.