t8  1.2.0
t8code is a C library to manage a forest of adaptive space-trees of general element classes in parallel.
Functions
t8_geometry_helpers.h File Reference

Defines t8code internal functions that are useful for geometry implementations. More...

#include <t8.h>

Go to the source code of this file.

Functions

void t8_geom_compute_linear_geometry (t8_eclass_t tree_class, const double *tree_vertices, const double *ref_coords, double out_coords[3])
 
void t8_geom_linear_interpolation (const double *coefficients, const double *corner_values, int corner_value_dim, int interpolation_dim, double *evaluated_function)
 Interpolates linearly between 2, bilinearly between 4 or trilineraly between 8 points. More...
 
void t8_geom_get_face_vertices (t8_eclass_t tree_class, const double *tree_vertices, int face_index, int dim, double *face_vertices)
 Copies the vertex coordinates of a tree face in zorder into a separate array. More...
 
void t8_geom_get_edge_vertices (t8_eclass_t tree_class, const double *tree_vertices, int edge_index, int dim, double *edge_vertices)
 Copies the vertex coordinates of a tree edge in zorder into a separate array. More...
 

Detailed Description

Defines t8code internal functions that are useful for geometry implementations.

Function Documentation

◆ t8_geom_get_edge_vertices()

void t8_geom_get_edge_vertices ( t8_eclass_t  tree_class,
const double *  tree_vertices,
int  edge_index,
int  dim,
double *  edge_vertices 
)

Copies the vertex coordinates of a tree edge in zorder into a separate array.

Parameters
[in]tree_classThe eclass of the tree.
[in]tree_verticesArray with the tree vertex coordinates.
[in]edge_indexIndex of the edge, which vertices should be copied.
[in]dimThe dimension of the edge vertices.
[out]edge_verticesCoordinates of the edge vertices in zorder.

◆ t8_geom_get_face_vertices()

void t8_geom_get_face_vertices ( t8_eclass_t  tree_class,
const double *  tree_vertices,
int  face_index,
int  dim,
double *  face_vertices 
)

Copies the vertex coordinates of a tree face in zorder into a separate array.

Parameters
[in]tree_classThe eclass of the tree.
[in]tree_verticesArray with the tree vertex coordinates.
[in]face_indexIndex of the face, which vertices should be copied.
[in]dimThe dimension of the face vertices.
[out]face_verticesCoordinates of the face vertices in zorder.

◆ t8_geom_linear_interpolation()

void t8_geom_linear_interpolation ( const double *  coefficients,
const double *  corner_values,
int  corner_value_dim,
int  interpolation_dim,
double *  evaluated_function 
)

Interpolates linearly between 2, bilinearly between 4 or trilineraly between 8 points.

Parameters
[in]coefficientsAn array of size at least dim giving the coefficients used for the interpolation
[in]corner_valuesAn array of size 2^dim * 3, giving for each corner (in zorder) of the unit square/cube its function values in space.
[in]corner_value_dimThe dimension of the corner_values.
[in]interpolation_dimThe dimension of the interpolation (1 for linear, 2 for bilinear, 3 for trilinear)
[out]evaluated_functionAn array of size corner_value_dim, on output the result of the interpolation.