3. THM models using a second gradient approach#

Second gradient and second expansion gradient models are described in the documentation [R5.04.03] in the context of porous media. Their use is essential when the laws of mechanical behavior model material degradation — we speak of softening laws. In fact, in this case, the solutions depend on the mesh, including when the medium is coupled with the hydraulic equations.

The digital integration of these models followed an atypical protocol during its implementation to facilitate their use in Code_Aster. Thus, the regularizing part (second gradient) is defined as a patch that simply needs to be « stuck » onto the structure to be modelled. The steps to follow to produce such a simulation are described below.

  1. Patch definition

  2. Model choice

  3. Definition of material

  4. Boundary conditions

  5. Calculus

3.1. Patch definition#

For the simulation of a THM study using a second gradient approach, it is necessary to define a quadratic mesh for the discretization of the structure, then a second mesh for the regularizing patch. The particularity of this second mesh is that it must necessarily be topologically identical to the first mesh (same nodes and same geometric elements). For reasons of numerical simplification and for reasons of model consistency, it is recommended to use the following procedure:

  1. Definition of spatial discretization for structure and modeling THM;

  2. Duplicating the previous mesh across the entire structure using the CREA_MAILLAGE command to define the patch

  3. Possible modification of the type of cells for a study with Lagrange multipliers at the centers of the elements.

3.1.1. Step 1. Structure mesh definition#

This first step is to be produced by a mesher in order to discretize the structure. The mesh is then retrieved by the Code_Aster command:

reading the mesh (quadratic)

MA = LIRE_MAILLAGE ()

3.1.2. Step 2. Duplicating the mesh to define the patch#

In Code_Aster there is a procedure that allows you to duplicate a mesh while maintaining the same nodes as the original mesh — it is essential that the nodes of the first mesh be included in the patch (cf [R5.04.03]). It is necessary to define this second mesh in order to make it possible to define the second gradient modeling to the regularizing patch.

Duplication of the mesh (quadratic). Only the stitches are duplicated, the knots remain common. The aim is to associate a different model with each of these meshes.

MAIL = CREA_MAILLAGE (MAILLAGE = MA,

CREA_GROUP_MA = (_F (NOM = “ROCHE_REG”,

GROUP_MA = “ROCHE”)))

3.1.3. Step 3. Modification (possible) of the patch mesh#

There are various finite element discretizations to interpolate second gradient models (with or without Lagrange multipliers, Lagrange multipliers at the center of the elements or at the vertex nodes). Consequently, it is necessary to adapt the patch mesh to the discretization space of the second gradient modeling.

For example, to take into account an interpolation with Lagrange multipliers at the centers of the elements, it is necessary to define the nodes at the centers of the elements because these are not provided, in general, in the spatial discretizations proposed by most donors. So in this case, you can use the following Code_Aster command:

Introduction of central nodes to the finite elements of the new mesh for \(\mathit{P2}\mathrm{-}\mathit{P1}\mathrm{-}\mathit{P0}\) interpolation. Procedure required to take into account the interpolations of the Lagrange multipliers.

MAILLAGE = CREA_MAILLAGE (MAILLAGE = MAIL,

MODI_MAILLE =( _F (GROUP_MA = “ROCHE_REG”,

OPTION = “QUAD8_9”),

_F (GROUP_MA = “ROCHE_REG”,

OPTION = “TRIA6_7”)))

This step is only possible in 2D when finite element interpolation considers constant Lagrange multipliers per element.

3.2. Model choice#

The « regularizing patches » second gradient or second expansion gradient can be combined with any type of modeling THM. They are of interest, of course, only in the presence of a mechanical (softening) component. The available models are:

Modeling

Geometric modelling

Phenomenon taken into account

D_ PLAN_2DG

Plane

Second Gradient

D_ PLAN_DIL

Plane

Second expansion gradient

3D_ DIL

3D

Second expansion gradient

Note:

Note that it is strongly recommended to use second expansion gradient models to treat the behaviors of soils and rocks or more particularly any type of material presenting a volume variation during its degradation.

The nodal unknowns of the THM models are then enriched after adding the second gradient « patch ». The number of unknowns varies according to the patch in question and the type of mesh characterizing the spatial discretization of the patch. For second expansion gradient modeling, it is therefore by choosing the topology of the mesh that the interpolation of the Lagrange multipliers will be determined (see the table below). The table below summarizes the various possibilities where we note in accordance with [R5.04.03], \({f}_{\mathit{ij}}\) the components of the tensor of microscopic deformations, \(\chi\) the microscopic volume deformation and \(\lambda\) the Lagrange multiplier:

Modeling

Mesh type

Degrees of liberty

Position of the degree of liberty

D_ PLAN_2DG

TRIA7, QUAD9

\({f}_{\mathit{ij}}\)

At the vertices of each element

\({\lambda }_{\mathit{ij}}\)

In the center of each element

D_ PLAN_DIL

TRIA7, QUAD9

\(\chi\)

At the vertices of each element

\(\lambda\)

In the center of each element

TRIA6, QUAD8

\(\chi\)

At the vertices of each element

3D_ DIL

TETRA10, HEXA20, PENTA15

\(\chi\), \(\lambda\)

At the vertices of each element

The procedure is then as follows:

MODELE = AFFE_MODELE (MAILLAGE = MAILLAGE,

AFFE = (_F (GROUP_MA = “ROCHE”,

PHENOMENE = “MECANIQUE”,

MODELISATION = “D_ PLAN_HMS “),

_F (GROUP_MA = “ROCHE_REG”,

PHENOMENE = “MECANIQUE”,

MODELISATION = “D_ PLAN_DIL “)))

3.3. Definition of material#

In addition to defining the material parameters required for calculation THM described in the previous chapter, it is necessary to add a parameter that characterizes the characteristic length of second gradient modeling (cf. [R5.04.03]). This data actually characterizes the dimension of the neighborhood that contributes to the description of a material point.

This length is defined using material components \(\mathit{A1}\) and \(\mathit{A3}\) of the law of linear elasticity behavior second gradient inspired by the work of Mindlin in the case of second expansion gradient modeling. It is in determining these parameters that the greatest difficulty lies. Today, there is no analytical method to identify them. The practice is to do some preliminary tests. In the case of second gradient models, this length is a function of the 5 components \(\mathit{A1}\), \(\mathit{A2}\),, \(\mathit{A3},\), \(\mathit{A4}\) and \(\mathit{A5}\), to be entered under the keyword ELAS_2NDG of DEFI_MATERIAU (cf. [R5.04.03]).

In addition, a numerical penalty parameter can be added. It has been shown that the term penalization of second expansion gradient models improves numerical convergence without disturbing the quality of the results.

Here is an example of defining material parameters for the second gradient part.

SOL2 = DEFI_MATERIAU (ELAS_2NDG = _F (A1 = 4.0E4,

A2 = 0.0,

A3 = 0.0,

A4 = 0.0,

A5 = 0.0,),

NON_LOCAL = _F (PENA_LAGR =1.0E12,),);

Then assignment of the material parameters according to the same procedure as for the definition of the models.

MATE = AFFE_MATERIAU (MAILLAGE = MAILLAGE,

AFFE = (_F (TOUT = “ROCHE”,

MATER = SOL_HM,),

_F (GROUP_MA = “ROCHE_REG”,

MATER = SOL2))))

3.4. Impact on boundary conditions#

There is no impact to be made in the Code_Aster command file to take into account boundary conditions with second gradient models compared to classical THM models. On the other hand, it is essential to note that the physical meaning of conditions at normal stress pressure limits is modified with second gradient models (cf. [R5.04.03]).

3.5. Solving the problem#

The calculation is to be performed by the command STAT_NON_LINE. All you have to do is add to the classical calculation THM the second gradient elasticity behavior relationship on the mesh corresponds to the patch as in the example below (keyword ELAS). There is no incompatibility with the laws of behavior. It should be noted, however, that a simulation THM using a second gradient approach is only useful in the presence of a mechanical component in the coupled calculation.

It is important to note that when the modeling takes into account an interpolation of constant Lagrange multipliers by elements, it is necessary to use the Mumps solver for the resolution.

Definition of nonlinear static calculation with a law of behavior associated with each model: Drucker-Prager type behavior for the first gradient, and linear elasticity for the second gradient

U1 = STAT_NON_LINE (MODELE = MODELE,

CHAM_MATER = MATE,

EXCIT = (_F (CHARGE = CHCI),…),

SOLVEUR = (_F (METHODE =” MUMPS “,)),

COMPORTEMENT = (_F (GROUP_MA =” ROCHE “,

RELATION = “DRUCK_PRAGER”,),

_F (GROUP_MA = “ROCHE_REG”,

RELATION = “ELAS”,),),

NEWTON = _F (MATRICE = “TANGENTE”, REAC_ITER = 1),

INCREMENT = _F (LIST_INST = TEMPS)

An example of modeling by second gradient will be found, for example in the ssll117 test case.