CDT++
Causal Dynamical Triangulations in C++
Loading...
Searching...
No Matches
Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
foliated_triangulations::FoliatedTriangulation< 3 > Class Reference

3D Foliated triangulation More...

#include <Foliated_triangulation.hpp>

+ Collaboration diagram for foliated_triangulations::FoliatedTriangulation< 3 >:

Public Member Functions

 FoliatedTriangulation ()=default
 Default ctor.
 
 FoliatedTriangulation (Causal_vertices_t< 3 > const &causal_vertices, double const t_initial_radius=INITIAL_RADIUS, double const t_foliation_spacing=FOLIATION_SPACING)
 Constructor from Causal_vertices.
 
 FoliatedTriangulation (Delaunay triangulation, double const initial_radius=INITIAL_RADIUS, double const foliation_spacing=FOLIATION_SPACING)
 Constructor using delaunay triangulation Pass-by-value-then-move. Delaunay is the ctor for the Delaunay triangulation.
 
 FoliatedTriangulation (FoliatedTriangulation &&other) noexcept
 Move ctor.
 
 FoliatedTriangulation (FoliatedTriangulation const &other) noexcept
 Copy Constructor.
 
 FoliatedTriangulation (Int_precision const t_simplices, Int_precision const t_timeslices, double const t_initial_radius=INITIAL_RADIUS, double const t_foliation_spacing=FOLIATION_SPACING)
 Constructor with parameters.
 
 ~FoliatedTriangulation ()=default
 Default dtor.
 
auto check_all_cells () const -> bool
 Check that all cells are correctly classified.
 
auto check_all_vertices () const -> bool
 
template<typename VertexHandle >
auto degree (VertexHandle &&t_vertex) const
 Perfect forwarding to TriangulationDataStructure_3::degree.
 
auto delaunay () -> Delaunay &
 
auto dimension () const
 
auto does_vertex_radius_match_timevalue (Vertex_handle_t< 3 > const t_vertex) const -> bool
 Check the radius of a vertex from the origin with its timevalue.
 
auto expected_radius (Vertex_handle_t< 3 > const &t_vertex) const -> double
 Calculates the expected radial distance of a vertex.
 
auto expected_timevalue (Vertex_handle_t< 3 > const &t_vertex) const -> int
 Calculate the expected timevalue for a vertex.
 
auto find_incorrect_vertices () const
 
auto fix_cells () const -> bool
 Fix all cells in the triangulation.
 
auto fix_vertices () const -> bool
 Fix vertices with wrong timevalues after foliation.
 
template<typename... Ts>
auto flip (Ts &&... args)
 Call one of the TSD3.flip functions.
 
auto foliation_spacing () const
 
auto get_cells () const -> Cell_container const &
 
auto get_delaunay () const -> Delaunay const &
 
auto get_one_three () const noexcept -> Cell_container const &
 
auto get_spacelike_edges () const -> Edge_container const &
 
auto get_three_one () const noexcept -> std::span< Cell_handle const >
 
auto get_timelike_edges () const noexcept -> Edge_container const &
 
auto get_two_two () const noexcept -> Cell_container const &
 
auto get_vertices () const noexcept -> Vertex_container const &
 
auto get_vertices_span () const noexcept -> std::span< Vertex_handle const >
 
template<typename... Ts>
auto incident_cells (Ts &&... args) const noexcept -> decltype(auto)
 Perfect forwarding to TriangulationDataStructure_3::incident_cells.
 
template<typename VertexHandle >
auto incident_cells (VertexHandle &&t_vh) const noexcept -> decltype(auto)
 Perfect forwarding to TriangulationDataStructure_3::incident_cells.
 
auto infinite_vertex () const
 
auto initial_radius () const
 
auto is_correct () const -> bool
 
auto is_delaunay () const -> bool
 
auto is_fixed () -> bool
 
auto is_foliated () const -> bool
 Verifies the triangulation is properly foliated.
 
template<typename VertexHandle >
auto is_infinite (VertexHandle &&t_vertex) const
 
auto is_initialized () const -> bool
 
auto is_tds_valid () const -> bool
 
auto max_time () const
 
auto min_time () const
 
auto N1_SL () const
 
auto N1_TL () const
 
auto N2_SL () const -> std::multimap< Int_precision, TriangulationTraits< 3 >::Facet > const &
 
auto number_of_finite_cells () const
 
auto number_of_finite_edges () const
 
auto number_of_finite_facets () const
 
auto number_of_vertices () const
 
auto operator= (FoliatedTriangulation other) noexcept -> FoliatedTriangulation &
 Copy/Move Assignment operator.
 
void print () const
 Print triangulation statistics.
 
void print_cells () const
 Print timevalues of each vertex in the cell and the resulting cell->info()
 
void print_edges () const
 Print timevalues of each vertex in the edge and classify as timelike or spacelike.
 
void print_vertices () const
 Print values of a vertex.
 
void print_volume_per_timeslice () const
 Print the number of spacelike faces per timeslice.
 

Private Types

using Cell_container = std::vector< Cell_handle >
 
using Cell_handle = Cell_handle_t< 3 >
 
using Delaunay = Delaunay_t< 3 >
 
using Edge_container = std::vector< Edge_handle_t< 3 > >
 
using Face_container = std::vector< Face_handle_t< 3 > >
 
using Vertex_container = std::vector< Vertex_handle >
 
using Vertex_handle = Vertex_handle_t< 3 >
 
using Volume_by_timeslice = std::multimap< Int_precision, Facet_t< 3 > >
 

Private Member Functions

auto classify_cells (Cell_container const &cells) const -> Cell_container
 Classify cells.
 
auto classify_vertices (Vertex_container const &vertices) const -> Vertex_container
 
auto collect_edges () const -> Edge_container
 
auto collect_faces () const -> Face_container
 

Private Attributes

Cell_container m_cells
 
Edge_container m_edges
 
Face_container m_faces
 
double m_foliation_spacing {FOLIATION_SPACING}
 
double m_initial_radius {INITIAL_RADIUS}
 
Int_precision m_max_timevalue {0}
 
Int_precision m_min_timevalue {0}
 
Cell_container m_one_three
 
Edge_container m_spacelike_edges
 
Volume_by_timeslice m_spacelike_facets
 
Cell_container m_three_one
 
Edge_container m_timelike_edges
 
Delaunay m_triangulation {Delaunay{}}
 
Cell_container m_two_two
 
Vertex_container m_vertices
 

Friends

void swap (FoliatedTriangulation &swap_from, FoliatedTriangulation &swap_into) noexcept
 Non-member swap function for Foliated Triangulations.
 

Detailed Description

3D Foliated triangulation

This class is a wrapper around a Delaunay triangulation. The Delaunay triangulation is augmented with a timevalue for each vertex and a simplex type for each cell. The FoliatedTriangulation class invariant is that the Delaunay triangulation has validly foliated vertices and cells, and has further containers for the various sub-simplicial complexes of the triangulation.

Definition at line 995 of file Foliated_triangulation.hpp.

Member Typedef Documentation

◆ Cell_container

using foliated_triangulations::FoliatedTriangulation< 3 >::Cell_container = std::vector<Cell_handle>
private

Definition at line 999 of file Foliated_triangulation.hpp.

◆ Cell_handle

using foliated_triangulations::FoliatedTriangulation< 3 >::Cell_handle = Cell_handle_t<3>
private

Definition at line 998 of file Foliated_triangulation.hpp.

◆ Delaunay

using foliated_triangulations::FoliatedTriangulation< 3 >::Delaunay = Delaunay_t<3>
private

Definition at line 997 of file Foliated_triangulation.hpp.

◆ Edge_container

using foliated_triangulations::FoliatedTriangulation< 3 >::Edge_container = std::vector<Edge_handle_t<3> >
private

Definition at line 1001 of file Foliated_triangulation.hpp.

◆ Face_container

using foliated_triangulations::FoliatedTriangulation< 3 >::Face_container = std::vector<Face_handle_t<3> >
private

Definition at line 1000 of file Foliated_triangulation.hpp.

◆ Vertex_container

using foliated_triangulations::FoliatedTriangulation< 3 >::Vertex_container = std::vector<Vertex_handle>
private

Definition at line 1003 of file Foliated_triangulation.hpp.

◆ Vertex_handle

using foliated_triangulations::FoliatedTriangulation< 3 >::Vertex_handle = Vertex_handle_t<3>
private

Definition at line 1002 of file Foliated_triangulation.hpp.

◆ Volume_by_timeslice

using foliated_triangulations::FoliatedTriangulation< 3 >::Volume_by_timeslice = std::multimap<Int_precision, Facet_t<3> >
private

Definition at line 1004 of file Foliated_triangulation.hpp.

Constructor & Destructor Documentation

◆ FoliatedTriangulation() [1/5]

foliated_triangulations::FoliatedTriangulation< 3 >::FoliatedTriangulation ( FoliatedTriangulation< 3 > const &  other)
inlinenoexcept

Copy Constructor.

Definition at line 1032 of file Foliated_triangulation.hpp.

◆ FoliatedTriangulation() [2/5]

foliated_triangulations::FoliatedTriangulation< 3 >::FoliatedTriangulation ( FoliatedTriangulation< 3 > &&  other)
inlinenoexcept

Move ctor.

Definition at line 1047 of file Foliated_triangulation.hpp.

◆ FoliatedTriangulation() [3/5]

foliated_triangulations::FoliatedTriangulation< 3 >::FoliatedTriangulation ( Delaunay  triangulation,
double const  initial_radius = INITIAL_RADIUS,
double const  foliation_spacing = FOLIATION_SPACING 
)
inlineexplicit

Constructor using delaunay triangulation Pass-by-value-then-move. Delaunay is the ctor for the Delaunay triangulation.

Parameters
triangulationDelaunay triangulation
initial_radiusRadius of first timeslice
foliation_spacingRadial separation between timeslices

Definition at line 1094 of file Foliated_triangulation.hpp.

References foliated_triangulations::collect_cells(), foliated_triangulations::collect_edges(), foliated_triangulations::collect_vertices(), foliated_triangulations::filter_cells(), foliated_triangulations::filter_edges(), foliated_triangulations::find_max_timevalue(), foliated_triangulations::find_min_timevalue(), and foliated_triangulations::volume_per_timeslice().

◆ FoliatedTriangulation() [4/5]

foliated_triangulations::FoliatedTriangulation< 3 >::FoliatedTriangulation ( Int_precision const  t_simplices,
Int_precision const  t_timeslices,
double const  t_initial_radius = INITIAL_RADIUS,
double const  t_foliation_spacing = FOLIATION_SPACING 
)
inline

Constructor with parameters.

Parameters
t_simplicesNumber of desired simplices
t_timeslicesNumber of desired timeslices
t_initial_radiusRadius of first timeslice
t_foliation_spacingRadial separation between timeslices

Definition at line 1119 of file Foliated_triangulation.hpp.

References foliated_triangulations::make_triangulation().

◆ FoliatedTriangulation() [5/5]

foliated_triangulations::FoliatedTriangulation< 3 >::FoliatedTriangulation ( Causal_vertices_t< 3 > const &  causal_vertices,
double const  t_initial_radius = INITIAL_RADIUS,
double const  t_foliation_spacing = FOLIATION_SPACING 
)
inlineexplicit

Constructor from Causal_vertices.

Parameters
causal_verticesCausal_vertices to place into the FoliatedTriangulation
t_initial_radiusRadius of first timeslice
t_foliation_spacingRadial separation between timeslices

Definition at line 1134 of file Foliated_triangulation.hpp.

Member Function Documentation

◆ check_all_cells()

auto foliated_triangulations::FoliatedTriangulation< 3 >::check_all_cells ( ) const -> bool
inline

Check that all cells are correctly classified.

A default triangulation will have no cells, and for this case the triangulation is correctly classified. A triangulation with cells will have them checked via check_cells.

Returns
True if there are no cells or all cells are validly classified

Definition at line 1480 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::check_simplices().

◆ check_all_vertices()

auto foliated_triangulations::FoliatedTriangulation< 3 >::check_all_vertices ( ) const -> bool
inline
Returns
True if all vertices have correct timevalues

Definition at line 1397 of file Foliated_triangulation.hpp.

◆ classify_cells()

auto foliated_triangulations::FoliatedTriangulation< 3 >::classify_cells ( Cell_container const &  cells) const -> Cell_container
inlineprivate

Classify cells.

Parameters
cellsThe container of simplices to classify
Returns
A container of simplices with Cell_type written to cell->info()

Definition at line 1523 of file Foliated_triangulation.hpp.

◆ classify_vertices()

auto foliated_triangulations::FoliatedTriangulation< 3 >::classify_vertices ( Vertex_container const &  vertices) const -> Vertex_container
inlineprivate

Definition at line 1509 of file Foliated_triangulation.hpp.

◆ collect_edges()

auto foliated_triangulations::FoliatedTriangulation< 3 >::collect_edges ( ) const -> Edge_container
inlineprivate
Returns
Container of all the finite edges in the triangulation

Definition at line 1555 of file Foliated_triangulation.hpp.

◆ collect_faces()

auto foliated_triangulations::FoliatedTriangulation< 3 >::collect_faces ( ) const -> Face_container
inlineprivate
Returns
Container of all the finite facets in the triangulation

Definition at line 1535 of file Foliated_triangulation.hpp.

◆ degree()

template<typename VertexHandle >
auto foliated_triangulations::FoliatedTriangulation< 3 >::degree ( VertexHandle &&  t_vertex) const
inline

Perfect forwarding to TriangulationDataStructure_3::degree.

Returns
The number of incident edges to a vertex
See also
https://doc.cgal.org/latest/TDS_3/classTriangulationDataStructure__3.html#a51fce32aa7abf3d757bcabcebd22f2fe

Definition at line 1318 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::degree().

◆ delaunay()

auto foliated_triangulations::FoliatedTriangulation< 3 >::delaunay ( ) -> Delaunay&
inline
Returns
A mutable reference to the Delaunay triangulation

Definition at line 1193 of file Foliated_triangulation.hpp.

◆ dimension()

auto foliated_triangulations::FoliatedTriangulation< 3 >::dimension ( ) const
inline
Returns
Dimensionality of triangulation data structure (int)

Definition at line 1254 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::dimensionality().

◆ does_vertex_radius_match_timevalue()

auto foliated_triangulations::FoliatedTriangulation< 3 >::does_vertex_radius_match_timevalue ( Vertex_handle_t< 3 > const  t_vertex) const -> bool
inline

Check the radius of a vertex from the origin with its timevalue.

Parameters
t_vertexThe vertex to check
Returns
True if the effective radial distance squared matches timevalue squared

Definition at line 1359 of file Foliated_triangulation.hpp.

References TOLERANCE.

◆ expected_radius()

auto foliated_triangulations::FoliatedTriangulation< 3 >::expected_radius ( Vertex_handle_t< 3 > const &  t_vertex) const -> double
inline

Calculates the expected radial distance of a vertex.

The formula for the radius is:

\[R=I+S(t-1)\]

Where I is INITIAL_RADIUS, S is RADIAL_SEPARATION, and t is timevalue

Parameters
t_vertexThe vertex to check
Returns
The expected radial distance of the vertex with that timevalue

Definition at line 1379 of file Foliated_triangulation.hpp.

◆ expected_timevalue()

auto foliated_triangulations::FoliatedTriangulation< 3 >::expected_timevalue ( Vertex_handle_t< 3 > const &  t_vertex) const -> int
inline

Calculate the expected timevalue for a vertex.

Parameters
t_vertexThe vertex to check
Returns
The expected timevalue of the vertex

Definition at line 1389 of file Foliated_triangulation.hpp.

◆ find_incorrect_vertices()

auto foliated_triangulations::FoliatedTriangulation< 3 >::find_incorrect_vertices ( ) const
inline
Returns
A container of incorrect vertices

Definition at line 1404 of file Foliated_triangulation.hpp.

◆ fix_cells()

auto foliated_triangulations::FoliatedTriangulation< 3 >::fix_cells ( ) const -> bool
inline

Fix all cells in the triangulation.

Definition at line 1486 of file Foliated_triangulation.hpp.

◆ fix_vertices()

auto foliated_triangulations::FoliatedTriangulation< 3 >::fix_vertices ( ) const -> bool
inline

Fix vertices with wrong timevalues after foliation.

Definition at line 1411 of file Foliated_triangulation.hpp.

◆ flip()

template<typename... Ts>
auto foliated_triangulations::FoliatedTriangulation< 3 >::flip ( Ts &&...  args)
inline

Call one of the TSD3.flip functions.

See https://doc.cgal.org/latest/Triangulation_3/classCGAL_1_1Triangulation__3.html#a883fed00b53cae9e85feb20230f54dd9

Template Parameters
TsVariadic template of types of the arguments
Parameters
argsParameter pack of arguments to TDS3.flip
Returns
True if the flip occurred

Definition at line 1242 of file Foliated_triangulation.hpp.

◆ foliation_spacing()

auto foliated_triangulations::FoliatedTriangulation< 3 >::foliation_spacing ( ) const
inline
Returns
The spacing between timeslices

Definition at line 1311 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::foliation_spacing().

◆ get_cells()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_cells ( ) const -> Cell_container const&
inline
Returns
Container of cells

Definition at line 1450 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::simplices().

◆ get_delaunay()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_delaunay ( ) const -> Delaunay const&
inline

◆ get_one_three()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_one_three ( ) const -> Cell_container const&
inlinenoexcept
Returns
Container of (1,3) cells

Definition at line 1470 of file Foliated_triangulation.hpp.

◆ get_spacelike_edges()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_spacelike_edges ( ) const -> Edge_container const&
inline
Returns
Container of spacelike edges

Definition at line 1283 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::get_spacelike_edges().

◆ get_three_one()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_three_one ( ) const -> std::span<Cell_handle const>
inlinenoexcept
Returns
Container of (3,1) cells

Definition at line 1457 of file Foliated_triangulation.hpp.

◆ get_timelike_edges()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_timelike_edges ( ) const -> Edge_container const&
inlinenoexcept
Returns
Container of timelike edges

Definition at line 1276 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::get_timelike_edges().

◆ get_two_two()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_two_two ( ) const -> Cell_container const&
inlinenoexcept
Returns
Container of (2,2) cells

Definition at line 1464 of file Foliated_triangulation.hpp.

◆ get_vertices()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_vertices ( ) const -> Vertex_container const&
inlinenoexcept
Returns
Container of vertices

Definition at line 1289 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::get_vertices().

◆ get_vertices_span()

auto foliated_triangulations::FoliatedTriangulation< 3 >::get_vertices_span ( ) const -> std::span<Vertex_handle const>
inlinenoexcept
Returns
A span of vertices

Definition at line 1295 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::get_vertices_span().

◆ incident_cells() [1/2]

template<typename... Ts>
auto foliated_triangulations::FoliatedTriangulation< 3 >::incident_cells ( Ts &&...  args) const -> decltype(auto)
inlinenoexcept

Perfect forwarding to TriangulationDataStructure_3::incident_cells.

Template Parameters
TsVariadic template used to forward
Parameters
argsParameter pack of arguments to call incident_cells()
Returns
A Cell_circulator
See also
https://doc.cgal.org/latest/TDS_3/classTriangulationDataStructure__3.html#a93f8ab30228b2a515a5c9cdacd9d4d36

Definition at line 1349 of file Foliated_triangulation.hpp.

◆ incident_cells() [2/2]

template<typename VertexHandle >
auto foliated_triangulations::FoliatedTriangulation< 3 >::incident_cells ( VertexHandle &&  t_vh) const -> decltype(auto)
inlinenoexcept

Perfect forwarding to TriangulationDataStructure_3::incident_cells.

If there are n incident edges there are 2(n-2) incident cells

Template Parameters
VertexHandleTemplate parameter used to forward
Parameters
t_vhVertex
Returns
A container of incident cells
See also
https://doc.cgal.org/latest/TDS_3/classTriangulationDataStructure__3.html#a93f8ab30228b2a515a5c9cdacd9d4d36

Definition at line 1332 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::incident_cells().

◆ infinite_vertex()

auto foliated_triangulations::FoliatedTriangulation< 3 >::infinite_vertex ( ) const
inline
Returns
Returns the infinite vertex in the triangulation

Definition at line 1248 of file Foliated_triangulation.hpp.

◆ initial_radius()

auto foliated_triangulations::FoliatedTriangulation< 3 >::initial_radius ( ) const
inline
Returns
The initial radius for timeslice = 1

Definition at line 1308 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::initial_radius().

◆ is_correct()

auto foliated_triangulations::FoliatedTriangulation< 3 >::is_correct ( ) const -> bool
inline
Returns
True if the Foliated Triangulation class invariants hold

Definition at line 1168 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::is_correct().

◆ is_delaunay()

auto foliated_triangulations::FoliatedTriangulation< 3 >::is_delaunay ( ) const -> bool
inline
Returns
True if the triangulation is Delaunay

Definition at line 1156 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::is_delaunay().

◆ is_fixed()

auto foliated_triangulations::FoliatedTriangulation< 3 >::is_fixed ( ) -> bool
inline
Returns
True if fixes were done on the Delaunay triangulation

Definition at line 1181 of file Foliated_triangulation.hpp.

◆ is_foliated()

auto foliated_triangulations::FoliatedTriangulation< 3 >::is_foliated ( ) const -> bool
inline

Verifies the triangulation is properly foliated.

Can not be called until after Foliated_triangulation has been constructed (i.e. not in make_triangulation)

Returns
True if foliated correctly

Definition at line 1150 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::is_foliated().

◆ is_infinite()

template<typename VertexHandle >
auto foliated_triangulations::FoliatedTriangulation< 3 >::is_infinite ( VertexHandle &&  t_vertex) const
inline
Returns
If a cell or vertex contains or is the infinite vertex Forward parameters (see F.19 of C++ Core Guidelines)

Definition at line 1228 of file Foliated_triangulation.hpp.

◆ is_initialized()

auto foliated_triangulations::FoliatedTriangulation< 3 >::is_initialized ( ) const -> bool
inline
Returns
True if the Foliated Triangulation has been initialized correctly

Definition at line 1175 of file Foliated_triangulation.hpp.

◆ is_tds_valid()

auto foliated_triangulations::FoliatedTriangulation< 3 >::is_tds_valid ( ) const -> bool
inline
Returns
True if the triangulation data structure is valid

Definition at line 1162 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::is_valid().

◆ max_time()

auto foliated_triangulations::FoliatedTriangulation< 3 >::max_time ( ) const
inline
Returns
Maximum time value in triangulation

Definition at line 1302 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::max_time().

◆ min_time()

auto foliated_triangulations::FoliatedTriangulation< 3 >::min_time ( ) const
inline
Returns
Minimum time value in triangulation

Definition at line 1305 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::min_time().

◆ N1_SL()

auto foliated_triangulations::FoliatedTriangulation< 3 >::N1_SL ( ) const
inline
Returns
Number of spacelike edges

Definition at line 1270 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::N1_SL().

◆ N1_TL()

auto foliated_triangulations::FoliatedTriangulation< 3 >::N1_TL ( ) const
inline
Returns
Number of timelike edges

Definition at line 1264 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::N1_TL().

◆ N2_SL()

auto foliated_triangulations::FoliatedTriangulation< 3 >::N2_SL ( ) const -> std::multimap<Int_precision, TriangulationTraits<3>::Facet> const&
inline
Returns
Container of spacelike facets indexed by time value

Definition at line 1257 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::N2_SL().

◆ number_of_finite_cells()

auto foliated_triangulations::FoliatedTriangulation< 3 >::number_of_finite_cells ( ) const
inline
Returns
Number of 3D simplices in triangulation data structure

Definition at line 1202 of file Foliated_triangulation.hpp.

◆ number_of_finite_edges()

auto foliated_triangulations::FoliatedTriangulation< 3 >::number_of_finite_edges ( ) const
inline
Returns
Number of 1D edges in triangulation data structure

Definition at line 1214 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::edges().

◆ number_of_finite_facets()

auto foliated_triangulations::FoliatedTriangulation< 3 >::number_of_finite_facets ( ) const
inline
Returns
Number of 2D faces in triangulation data structure

Definition at line 1208 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::faces().

◆ number_of_vertices()

auto foliated_triangulations::FoliatedTriangulation< 3 >::number_of_vertices ( ) const
inline
Returns
Number of vertices in triangulation data structure

Definition at line 1220 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::vertices().

◆ operator=()

auto foliated_triangulations::FoliatedTriangulation< 3 >::operator= ( FoliatedTriangulation< 3 >  other) -> FoliatedTriangulation&
inlinenoexcept

Copy/Move Assignment operator.

Definition at line 1039 of file Foliated_triangulation.hpp.

◆ print()

void foliated_triangulations::FoliatedTriangulation< 3 >::print ( ) const
inline

Print triangulation statistics.

Definition at line 1499 of file Foliated_triangulation.hpp.

◆ print_cells()

void foliated_triangulations::FoliatedTriangulation< 3 >::print_cells ( ) const
inline

Print timevalues of each vertex in the cell and the resulting cell->info()

Definition at line 1493 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::print_cells().

◆ print_edges()

void foliated_triangulations::FoliatedTriangulation< 3 >::print_edges ( ) const
inline

Print timevalues of each vertex in the edge and classify as timelike or spacelike.

Definition at line 1430 of file Foliated_triangulation.hpp.

◆ print_vertices()

void foliated_triangulations::FoliatedTriangulation< 3 >::print_vertices ( ) const
inline

Print values of a vertex.

Definition at line 1418 of file Foliated_triangulation.hpp.

References foliated_triangulations::expected_timevalue().

Referenced by manifolds::Manifold< 3 >::print_vertices().

◆ print_volume_per_timeslice()

void foliated_triangulations::FoliatedTriangulation< 3 >::print_volume_per_timeslice ( ) const
inline

Print the number of spacelike faces per timeslice.

Definition at line 1440 of file Foliated_triangulation.hpp.

Referenced by manifolds::Manifold< 3 >::print_volume_per_timeslice().

Friends And Related Function Documentation

◆ swap

void swap ( FoliatedTriangulation< 3 > &  swap_from,
FoliatedTriangulation< 3 > &  swap_into 
)
friend

Non-member swap function for Foliated Triangulations.

Note that this function calls swap() from CGAL's Triangulation_3 base class, which assumes that the first triangulation is discarded after it is swapped into the second one.

Parameters
swap_fromThe value to be swapped from. Assumed to be discarded.
swap_intoThe value to be swapped into.

Definition at line 1059 of file Foliated_triangulation.hpp.

Member Data Documentation

◆ m_cells

Cell_container foliated_triangulations::FoliatedTriangulation< 3 >::m_cells
private

Definition at line 1012 of file Foliated_triangulation.hpp.

◆ m_edges

Edge_container foliated_triangulations::FoliatedTriangulation< 3 >::m_edges
private

Definition at line 1018 of file Foliated_triangulation.hpp.

◆ m_faces

Face_container foliated_triangulations::FoliatedTriangulation< 3 >::m_faces
private

Definition at line 1016 of file Foliated_triangulation.hpp.

◆ m_foliation_spacing

double foliated_triangulations::FoliatedTriangulation< 3 >::m_foliation_spacing {FOLIATION_SPACING}
private

Definition at line 1010 of file Foliated_triangulation.hpp.

◆ m_initial_radius

double foliated_triangulations::FoliatedTriangulation< 3 >::m_initial_radius {INITIAL_RADIUS}
private

Definition at line 1009 of file Foliated_triangulation.hpp.

◆ m_max_timevalue

Definition at line 1021 of file Foliated_triangulation.hpp.

◆ m_min_timevalue

Definition at line 1022 of file Foliated_triangulation.hpp.

◆ m_one_three

Cell_container foliated_triangulations::FoliatedTriangulation< 3 >::m_one_three
private

Definition at line 1015 of file Foliated_triangulation.hpp.

◆ m_spacelike_edges

Edge_container foliated_triangulations::FoliatedTriangulation< 3 >::m_spacelike_edges
private

Definition at line 1020 of file Foliated_triangulation.hpp.

◆ m_spacelike_facets

Volume_by_timeslice foliated_triangulations::FoliatedTriangulation< 3 >::m_spacelike_facets
private

Definition at line 1017 of file Foliated_triangulation.hpp.

◆ m_three_one

Cell_container foliated_triangulations::FoliatedTriangulation< 3 >::m_three_one
private

Definition at line 1013 of file Foliated_triangulation.hpp.

◆ m_timelike_edges

Edge_container foliated_triangulations::FoliatedTriangulation< 3 >::m_timelike_edges
private

Definition at line 1019 of file Foliated_triangulation.hpp.

◆ m_triangulation

Delaunay foliated_triangulations::FoliatedTriangulation< 3 >::m_triangulation {Delaunay{}}
private

Data members initialized in order of declaration (Working Draft, Standard for C++ Programming Language, 11.9.3 section 13.3)

Definition at line 1008 of file Foliated_triangulation.hpp.

◆ m_two_two

Cell_container foliated_triangulations::FoliatedTriangulation< 3 >::m_two_two
private

Definition at line 1014 of file Foliated_triangulation.hpp.

◆ m_vertices

Vertex_container foliated_triangulations::FoliatedTriangulation< 3 >::m_vertices
private

Definition at line 1011 of file Foliated_triangulation.hpp.


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