petsc-3.12.5 2020-03-29
DMPlexCreateBasisRotation
Create an internal transformation from the global basis, used to specify boundary conditions and global solutions, to a local basis, appropriate for discretization integrals and assembly.
Synopsis
#include "petscdmplex.h"
PetscErrorCode DMPlexCreateBasisRotation(DM dm, PetscReal alpha, PetscReal beta, PetscReal gamma)
Input Parameters
| dm | - The DM
|
| alpha | - The first Euler angle, and in 2D the only one
|
| beta | - The second Euler angle
|
| gamma | - The third Euler angle
|
Note: Following https://en.wikipedia.org/wiki/Euler_angles, we will specify Euler angles by extrinsic rotations, meaning that
we rotate with respect to a fixed initial coordinate system, the local basis (x-y-z). The global basis (X-Y-Z) is reached as follows
$ The XYZ system rotates about the z axis by alpha. The X axis is now at angle alpha with respect to the x axis.
$ The XYZ system rotates again about the x axis by beta. The Z axis is now at angle beta with respect to the z axis.
$ The XYZ system rotates a third time about the z axis by gamma.
See Also
DMPlexGlobalToLocalBasis(), DMPlexLocalToGlobalBasis()
Level
developer
Location
src/dm/impls/plex/plexfem.c
Index of all DMPLEX routines
Table of Contents for all manual pages
Index of all manual pages