|
p4est 2.8.5.190-3fcf-dirty
p4est is a software library for parallel adaptive mesh refinement.
|
transforms from vertex frame to physical space. More...
#include <p4est_connectivity.h>

Go to the source code of this file.
Data Structures | |
| struct | p4est_geometry |
| This structure can be filled or allocated by the user. More... | |
Typedefs | |
| typedef struct p4est_geometry | p4est_geometry_t |
| This object encapsulates a custom geometry transformation. | |
| typedef void(* | p4est_geometry_X_t) (p4est_geometry_t *geom, p4est_topidx_t which_tree, const double abc[3], double xyz[3]) |
| Forward transformation from the reference unit square to physical space. More... | |
| typedef void(* | p4est_geometry_destroy_t) (p4est_geometry_t *geom) |
| Destructor prototype for a user-allocated p4est_geometry_t. More... | |
Functions | |
| void | p4est_geometry_destroy (p4est_geometry_t *geom) |
| Can be used to conveniently destroy a geometry structure. More... | |
| p4est_geometry_t * | p4est_geometry_new_connectivity (p4est_connectivity_t *conn) |
| Create a geometry structure based on the vertices in a connectivity. More... | |
| p4est_geometry_t * | p4est_geometry_new_icosahedron (p4est_connectivity_t *conn, double R) |
| Create a geometry for mapping the 3d sphere using 2d connectivity icosahedron. | |
| p4est_geometry_t * | p4est_geometry_new_shell2d (p4est_connectivity_t *conn, double R2, double R1) |
| Create a geometry for mapping 2d shell. More... | |
| p4est_geometry_t * | p4est_geometry_new_disk2d (p4est_connectivity_t *conn, double R0, double R1) |
| disk2d geometry associated to disk2d connectivity. More... | |
transforms from vertex frame to physical space.
| typedef void(* p4est_geometry_destroy_t) (p4est_geometry_t *geom) |
Destructor prototype for a user-allocated p4est_geometry_t.
It is invoked by p4est_geometry_destroy. If the user chooses to reserve the structure statically, simply don't call p4est_geometry_destroy.
| typedef void(* p4est_geometry_X_t) (p4est_geometry_t *geom, p4est_topidx_t which_tree, const double abc[3], double xyz[3]) |
Forward transformation from the reference unit square to physical space.
Note that the two-dimensional connectivities have 3D vertex coordinates that can be used in the transformation if so desired. The physical space "xyz" is user-defined, currently used for VTK output.
| void p4est_geometry_destroy | ( | p4est_geometry_t * | geom | ) |
Can be used to conveniently destroy a geometry structure.
The user is free not to call this function at all if they handle the memory of the p4est_geometry_t in their own way.
| p4est_geometry_t * p4est_geometry_new_connectivity | ( | p4est_connectivity_t * | conn | ) |
Create a geometry structure based on the vertices in a connectivity.
The transformation is constructed using bilinear interpolation.
| [in] | conn | A p4est_connectivity_t with valid vertices. We do NOT take ownership and expect this structure to stay alive. |
| p4est_geometry_t * p4est_geometry_new_disk2d | ( | p4est_connectivity_t * | conn, |
| double | R0, | ||
| double | R1 | ||
| ) |
disk2d geometry associated to disk2d connectivity.
| [in] | conn | The result of p4est_connectivity_new_disk2d. |
| [in] | R0 | radius of the inner circle. |
| [in] | R1 | radius of the outer circle (external border). |
This geometry is meant to be used with the disk2d connectivity, which is a 5-tree connectivity to map the spherical disk.
| p4est_geometry_t * p4est_geometry_new_shell2d | ( | p4est_connectivity_t * | conn, |
| double | R2, | ||
| double | R1 | ||
| ) |
Create a geometry for mapping 2d shell.
This a direct adaptation of geometric shell in 3d.