gf_geotrans
Synopsis
I = gf_geotrans(string name)
Description
The geometric transformation must be used when you are building a
custom mesh convex by convex (see the 'add convex'
sub-command of gf_mesh_set): it also defines the kind of
convex (triangle, hexahedron, prism, etc..).
The name argument contains the specification of the geometric
transformation as a string, which may be:
Geometric transformations of an existing mesh can be obtained with gf_mesh_get(M,'geotrans').
| 'GT_PK(N,K)' | geometric transformation of a simplex of dimension N , degree K |
| 'GT_QK(N,K)' | geometric transformation of a parallelepiped of dimension N, degree K |
| 'GT_PRISM(N,K)' | geometric transformation of a prism of dimension N, degree K |
| 'GT_PRODUCT(a,b)' | tensorial product of two geometric transformations a and b |
| 'GT_LINEAR_PRODUCT(a,b)' | linear tensorial product of two geometric transformations a and b |
Examples
In order to get the geometric transformation for a prism of dimension 3, you could use
If you want the geometric transformation for a curved triangle, you might choose
If you want to use a cartesian mesh, then it is preferable to use
since the geometric transformation for parallelepipeds is linear, and getfem++ can take
advantage of it (exact integration method, direct inversion of the geometrical transformation,...).
gt = gf_geotrans('GT_PRISM(3,1)') or gt = gf_geotrans('GT_PRODUCT(GT_PK(2,1),GT_PK(1,1))')
gt = gf_geotrans('GT_PK(2,2)') % 6-noded triangle
gt = gf_geotrans('GT_LINEAR_PRODUCT(GT_PK(1,1), GT_PK(1,1))') instead of gf_geotrans('GT_QK(2,1)') or gf_geotrans('GT_PRODUCT(GT_PK(1,1), GT_PK(1,1))'),
