gf_mesh_fem_set
Synopsis
gf_mesh_fem_set(MF, 'fem', fem fem [, ivec CVIDX]) gf_mesh_fem_set(MF, 'classical fem', fem fem, int K [, ivec CVIDX]) gf_mesh_fem_set(MF, 'classical discontinuous fem', fem fem, int K [, ivec CVIDX]) gf_mesh_fem_set(MF, 'qdim', int Qdim) gf_mesh_fem_set(MF, 'dof partition', ivec DOFP)
Description
gf_mesh_fem_set(MF, 'fem', fem [, CVIDX]) set the finite element method to fem for all the convexes listed in CVIDX in the mesh linked to MF. If CVIDX is not used, the fem is assigned to all convexes.
gf_mesh_fem_set(MF, 'classical fem', fem, K , [, CVIDX]) : set the classical fem (polynomial and Lagrange) of order K on the listed convexes (PK for simplexes, QK for parallelepipeds, etc..).
gf_mesh_fem_set(MF, 'classical discontinuous fem', K [, CVIDX]) is similar to the previous one, but for discontinuous (i.e. 'FEM_PK_DISCONTINUOUS' etc) FEMs. This can be useful to interpolate the gradient of a continuous mesh_fem (which will be discontinuous across elements, except if you are using a C1 element such as Argyris or HCT).
gf_mesh_fem_set(MF, 'qdim', Qdim) : change the Q dimension of the field that is interpolated by the mesh_fem. Q=1 means that the mesh_fem describes a scalar field, Q=N means that the mesh_fem describes a vector field of dimension N (see gf_mesh_fem_set('Qdim')).
gf_mesh_fem_set(MF, 'dof partition', ivec DOFP) : change the array which associates an integer (the partition number) to each convex of the mesh_fem (see gf_mesh_fem_get(MF, 'dof partition')).
Examples
mfdu=gfMeshFem(m); % use polynomials of degree 2, and no integration method gf_mesh_fem_set(mfdu,'classical discontinuous fem',2); DU=gf_compute(mf,U,'gradient',mfdu);
