|
From: | Yves Renard |
Subject: | Re: [Getfem-users] Getfem enumeration of DOFs in XFEM |
Date: | Thu, 25 Jun 2015 10:40:07 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 |
Dear Bianca, The answer is not so easy. The implementation of Xfem in Getfem is quite general and support the multi-level-sets case. Thi means that an element can be cut by an arbitrary number of level-sets. A finite element shape function whose support is (completely) cut by n level-sets will be duplicated the necessary number of time (max 2^n). It corresponds to Hansbo's strategy but generalized to the multi-level-sets case. In the case of a unique level-set, each shape function whose support is completely cut by the level-set is duplicated into two, each degree of freedom representing the finite element field on one side of the level-set (this means that there is not the standard degree of freedom and the enriched one). Of course, this is equivalent to the standard Xfem strategy and a linear combination of the two degrees of freedom can give you the non-enriched and enriched degree of freedom of the standard Xfem. The information for each dof that it is enriched or not can be retreived by pdof_description pdd = mf.fem_of_element(cv)->dof_types()[i]; where i is the local (to the element) dof number and pdd is a pointer on a structure describing the type of dof (see the file src/getfem_fem.cc) The function dof_xfem_index(pdd) will return the index of enrichement (0 : non eneriched, n : first zone, n+1 : second zone ...) where n is typically 1000. Concerning tip enrichement, this is taken into account in a very different way. It uses a global mesh_fem (i.e. not really linked to a mesh), see src/getfem/getfem_mesh_fem_global_function.h and a mesh_fem_sum object. This is a quite tricky part of Getfem which would have to be optimized. Similarly, such dofs can be detected since they are declared as "global dofs", see getfem_mesh_fem_global_functions. Best regards, Yves. Le 24/06/2015 18:39, Bianca Giovanardi a écrit :
-- Yves Renard (address@hidden) tel : (33) 04.72.43.87.08 Pole de Mathematiques, INSA-Lyon fax : (33) 04.72.43.85.29 20, rue Albert Einstein 69621 Villeurbanne Cedex, FRANCE http://math.univ-lyon1.fr/~renard --------- |
[Prev in Thread] | Current Thread | [Next in Thread] |