This structure holds the connectivity data of the coarse mesh.
Definition: t8_cmesh_types.h:88
Definition: t8_geometry_handler.hxx:37
The base class for all geometries.
Definition: t8_geometry_base.hxx:48
This is the administrative header file for t8code.
int64_t t8_gloidx_t
A type for global indexing that holds really big numbers.
Definition: t8.h:100
We define the coarse mesh of trees in this file.
int t8_geometry_tree_negative_volume(const t8_cmesh_t cmesh, const t8_gloidx_t gtreeid)
Check if a tree has a negative volume.
Definition: t8_geometry.cxx:68
t8_geometry_type_t t8_geometry_get_type(t8_cmesh_t cmesh, t8_gloidx_t gtreeid)
This function returns the geometry type of a tree.
Definition: t8_geometry.cxx:61
t8_geometry_type
This enumeration contains all possible geometries.
Definition: t8_geometry.h:35
@ T8_GEOMETRY_TYPE_UNDEFINED
This is no geometry type but is used for every geometry, where no type is defined.
Definition: t8_geometry.h:51
@ T8_GEOMETRY_TYPE_LINEAR
The linear geometry uses linear interpolations to interpolate between the tree vertices.
Definition: t8_geometry.h:39
@ T8_GEOMETRY_TYPE_ANALYTIC
The analytic geometry uses a user-defined analytic function to map into the physical domain.
Definition: t8_geometry.h:45
@ T8_GEOMETRY_TYPE_CAD
The opencascade geometry uses CAD shapes to map trees exactly to the underlying CAD model.
Definition: t8_geometry.h:47
@ T8_GEOMETRY_TYPE_LINEAR_AXIS_ALIGNED
The linear, axis aligned geometry uses only 2 vertices, since it is axis aligned.
Definition: t8_geometry.h:41
@ T8_GEOMETRY_TYPE_ZERO
The zero geometry maps all points to zero.
Definition: t8_geometry.h:37
@ T8_GEOMETRY_TYPE_COUNT
This is no geometry type but can be used as the number of geometry types.
Definition: t8_geometry.h:49
@ T8_GEOMETRY_TYPE_LAGRANGE
The Lagrange geometry uses a mapping with Lagrange polynomials to approximate curved elements .
Definition: t8_geometry.h:43
enum t8_geometry_type t8_geometry_type_t
This enumeration contains all possible geometries.
void t8_geometry_evaluate(t8_cmesh_t cmesh, t8_gloidx_t gtreeid, const double *ref_coords, const size_t num_coords, double *out_coords)
Evaluates the geometry of a tree at a given reference point.
Definition: t8_geometry.cxx:28
void t8_geometry_jacobian(t8_cmesh_t cmesh, t8_gloidx_t gtreeid, const double *ref_coords, const size_t num_coords, double *jacobian)
Evaluates the jacobian of a tree at a given reference point.
Definition: t8_geometry.cxx:53
We inherit the reference counting mechanism from libsc.