4. Operands#

4.1. MAILLAGE#

Name of the mesh (or skeleton) that you want to affect by material characteristics.

Notes:

  • The assignment operation is the same for skeletal cells as for mesh cells. In the rest of the document, we will always say mesh to simplify.

  • When we assign materials to the cells of a skeleton, it is because we want to calculate stresses (for example) on the post-treatment cells (coarser) .

4.2. MODELE#

Model name.

If this argument is used, it is checked that the cells assigned in the command are part of the model.

4.3. Keyword factor AFFE#

The keyword factor AFFE makes it possible to assign different materials to « pieces » of the mesh.

4.3.1. Note concerning fracture mechanics calculations#

As a general rule, material characteristics must be known about the finite elements modeling « matter »: « volume » (or structural) elements. The finite « skin » elements are there to apply boundary conditions and do not have to know the material properties of the underlying material. An exception exists for the calculation of option CALC_K_G for the CALC_G_XXXX operators. For these calculations, the finite elements modeling the crack lips must be affected by the same material as the underlying « volume » elements.

4.3.2. Operands TOUT =” OUI “, GROUP_MA#

The keywords TOUT and GROUP_MA make it possible to designate all the cells that will be affected.

If a mesh appears in several occurrences of the keyword factor AFFE, the overload rule is applied: the last assignment takes precedence [U2.01.08].

4.3.3. Operand MATER#

♦ MATER = matt,

The name of the material you want to affect.

In the general case, each mesh is affected by only one material. Sometimes a list of materials must be specified when the non-linear mechanical behavior is obtained by the DEFI_COMPOR [U4.43.06] command. In the latter case, the number of materials on the list is limited to 26.

Attention: if you can have several materials per mesh, you can only use one field of type cham_master in the operators.


4.4. Keyword factor CHAM_MATER#

The keyword CHAM_MATER is an alternative to AFFE and makes it possible to use the material characteristics defined in a previous concept AFFE_MATERIAU. Thus, it is possible to distinguish in the command file the assignment of materials (AFFE) and the assignment of control variables (AFFE_VARC). Here is an example:

cm1 = AFFE_MATERIAU (MODELE =mo, AFFE = _F (GROUP_MA =”gma”, MATER =material))

cm2 = AFFE_MATERIAU (MODELE =mo, CHAM_MATER =cm1, AFFE_VARC =…)

The keywords AFFE and CHAM_MATER are mutually exclusive and both allow the definition of material assignments.

4.5. Keyword AFFE_VARC#

This factor keyword makes it possible to assign command variable fields to the mesh cells.

This key word can be repeated. Multiple occurrences of AFFE_VARC must be used to be able to assign several different command variables. But you can also use multiple occurrences for a single variable. For example, on a mixed model (3D + beams), you can assign as temperature:

1 evol_ther calculated on 3D elements

1 temperature field (constant over time) on the beam elements.

A control variable is a scalar (real) that can influence hardware behavior via parameters that are functions (for example a parameter of DEFI_MATERIAU/ELAS_FO). A control variable is a field that is known before the calculation. This field can be variable over time. In rare cases, command variables can be used as variables for a function defining a loading (ex: AFFE_CHAR_THER_F/SOURCE).

Control variables were introduced primarily for mechanical calculations. The most common control variable for mechanical calculations is temperature.

For thermal calculations, it is possible to use one (or several) control variables, but this concerns only a few very rare parameters:

SECH_NAPPE/FONCTION

THER_FO/LAMBDA

THER_FO/RHO_CP

THER_COQUE_FO/COND_LMM, COND_TMM,…

Also for thermal calculations, command variables can be used among the variables of the functions given to the following command:

AFFE_CHAR_THER_F/SOURCE

4.5.1. Operand NOM_VARC#

♦ NOM_VARC = varc name,

Name of the command variable you want to assign (TEMP, GEOM,,,, IRRA,,, CORR, HYDR, SECH,…).

Meaning and role of the various variables:

Some control variables are scalars. Others are « vectors » comprising several scalar components.

In the table below we give the names of the components of the command variables

TEMP

TEMP, TEMP_MIL,, TEMP_SUP, TEMP_INF

GEOM

X, Y, Z

CORR

CORR

EPSA

EPSAXX, EPSAYY, EPSAZZ,, EPSAXY,, EPSAXZ, EPSAYZ

HYDR

HYDR

IRRA

IRRA

M_ ACIER

FERRITE, PPERLITE, PBAINITE,, PMARTENS,,, PAUSTENI, PCOLDSUM, TAUSTE, TRANSF, TACIER

M_ ZIRC

ALPHPUR, ALPHBETA,, BETA,, TZIRC, TEMPS

NEUT1

NEUT1

NEUT2

NEUT2

NEUT3

NEUT3

SECH

SECH

PTOT

PTOT

The control variable IRRA corresponds to a fluence, that is to say to the integral over time of a neutron flux. It is used by several laws of behavior, in specific units:

  • it must be expressed in DPA (displacement by atom) for the IRRAD3M law (cf. [R5.03.23]);

  • it must be expressed in \({10}^{20}n/{\mathrm{cm}}^{2}\) for laws VISC_IRRA_LOG, GRAN_IRRA_LOG, LEMAITRE_IRRA (cf. [R5.03.09]).

In the case of using an Mfront law, refer to the documentation [U2.10.02] for the correspondence between the names of the external variables Aster and Mfront.

4.5.2. Operands TOUT =” OUI “, GROUP_MA#

These keywords make it possible to designate the cells of the area to be affected.

4.5.3. Operand CHAM_GD#

This keyword makes it possible to associate the chvarc field with the nomvarc command variable. This field is a real field (no function). It is therefore independent of time and will be used throughout the transitional calculations.

If the values of the control variable are time-dependent, the EVOL keyword should be used (see below). Cham_elem ELGA are allowed only if they come from the PROJ_CHAMP/METHODE = “SOUS_POINT” operator, to assign the values to the Gauss subpoints of the elements with subpoints.

4.5.4. Operands EVOL, NOM_CHAM, FONC_INST, PROL_DROITE, PROL_GAUCHE#

These keywords make it possible to associate the evovarc transient with the nomvarc command variable. The NOM_CHAM keyword is used to indicate the symbolic name of the SD_résultat fields to use. By default, the code chooses:

NOM_VARC

NOM_CHAM

TEMP

“TEMP”

GEOM

“GEOM”

CORR

“CORR”

EPSA

“EPSA_ELNO”

HYDR

“HYDR_ELNO”

IRRA

“IRRA”

M_ ACIER

“META_ELNO”

M_ ZIRC

“META_ELNO”

NEUT1

“NEUT”

NEUT2

“NEUT”

NEUT3

“NEUT”

SECH

“TEMP”

PTOT

“DEPL”

Fields are real fields (neither complex, nor functions).

Cham_elem ELGA are allowed only if they come from the PROJ_CHAMP/METHODE = “SOUS_POINT” operator, to assign the values to the Gauss subpoints of the elements with subpoints.

The keyword FONC_INST = finst allows you to define a function (of time) that serves as a correspondence between the « time » of the evovarc evolution (t_evo) and the « time » of the subsequent calculation (t_calc). The function can be a simple « translation » (to take into account the fact that the start of the moments of the mechanical calculation is different from the moment of the start of the thermal calculation), but we can do more complicated things, for example to impose a « cyclic » mechanical loading (thermal expansion) by calculating only one temperature cycle. We can consult the zzzz223a test case to illustrate the use of this keyword.

Attention: The finst function is the one that transforms t_calc into t_evo: t_evo = finst (t_calc)

The keywords PROL_GAUCHE and PROL_DROITE make it possible to specify whether the evovarc transient can be used before the « min » moment of the transient (PROL_GAUCHE) and/or after the « max » moment of the transient (PROL_DROITE).

The value “EXCLU” will cause an error if you try to use the transient outside your domain.

The value “CONSTANT” extends the transient by the values at the time « min » (or « max »).

The value “LINEAIRE” extends the transient linearly from the first (or last) 2 points of the transient.

4.5.5. Operand VALE_REF#

This keyword allows you to define a « reference » value for the command variable nomvarc when the command variable nomvarc needs a reference value.

Currently, only two command variables require a reference value: “TEMP” and “SECH”. For these two variables, the VALE_REF keyword is mandatory. For other variables, this keyword is forbidden.

For the control variable “TEMP” in the case of shells, the reference temperature is assumed to be the same for all 3 components. That’s why we only bring her in once.

♦ VALE_REF = Tref (orc0) [R]

4.5.5.1. Reference temperature (\({T}_{\mathrm{ref}}\)):#

The reference temperature \({T}_{\mathit{ref}}\) introduced behind the keyword VALE_REF is the temperature for which there is no thermal deformation (cf. [R4.08.01]).

If the thermal expansion coefficient \(\alpha\) (whose value is entered in the DEFI_MATERIAU [U4.43.01] command) does not depend on the temperature: \({\varepsilon }^{\mathrm{th}}(T)=\alpha (T-{T}_{\mathrm{ref}})\).

If the coefficient of thermal expansion depends on the temperature, the mathematical expression for calculating the thermal deformation differs according to the specification of the coefficient of thermal expansion in command DEFI_MATERIAU:

  • the values of the thermal expansion coefficient (introduced in DEFI_MATERIAU) were determined by dilatometry tests carried out at temperature \({T}_{\mathrm{ref}}\).

In this case, the TEMP_DEF_ALPHA keyword does not have to be specified in the DEFI_MATERIAU command and the thermal deformation is calculated by the expression:

\({\varepsilon }^{\mathrm{th}}(T)=\alpha (T)(T-{T}_{\mathrm{ref}})\) and \({\varepsilon }^{\mathrm{th}}({T}_{\mathrm{ref}})=0\)

where \(\alpha (T)\) is entered under the keyword ALPHA (or ALPHA_ *) in DEFI_MATERIAU.

  • the values of the thermal expansion coefficient are determined by dilatometry tests that took place at a temperature \({T}_{\text{def}}\) different from the reference temperature \({T}_{\mathrm{ref}}\).

It is then necessary to change the frame of reference in the calculation of thermal deformation [R4.08.01].

\({\epsilon }^{\mathit{th}}(T)={\epsilon }_{m}^{\mathit{th}}(T)-{\epsilon }_{m}^{\mathit{th}}({T}_{\mathit{ref}})\)

where

\({\varepsilon }_{m}^{\mathrm{th}}\) is the measured thermal deformation (defined with respect to temperature \({T}_{\text{def}}\)),

\({\varepsilon }^{\mathrm{th}}\) is the calculated thermal deformation (defined with respect to temperature \({T}_{\mathrm{ref}}\)).

Temperature \({T}_{\text{def}}\) is entered under the keyword TEMP_DEF_ALPHA in DEFI_MATERIAU, and the expansion coefficient values (defined with respect to temperature \({T}_{\text{def}}\)) are entered under the keyword ALPHA or (ALPHA_ *) in DEFI_MATERIAU.

Note:

  • In a THM model, temperature is not a control variable and*the expansion coefficient* not*may be a function of temperature.* Therefore, the TEMP control variable should not be used in THM. An error message will stop you

  • It is not possible to use a formula or a tablecloth for ALPHA , due to the changes to be taken into account described above. Parameter ALPHA cannot depend QUE on temperature and provided that it is a function. *The user, if he**wants to use a formula, must first tabulate it using the command*CALC_FONC_INTERP* . *

4.5.5.2. Reference drying (\({c}_{0}\)):#

\({c}_{0}\) represents the initial water content of concrete. The user must provide this number when doing a mechanical calculation (MECA_STATIQUE or STAT_NON_LINE) with a loading type of drying.

c0 must be given in the same units as « drying » (AFFE_MATERIAU/AFFE_VARC = _F (NOM_VARC =” SECH “…) for example in \(L\mathrm{/}{m}^{3}\)). This unit should be consistent with the DEFI_MATERIAU/ELAS_FO /K_ DESSIC parameter.

At this initial water content, the desiccation shrinkage is zero since:

EPS_rd = K_ DESSIC (c0‑c).

4.5.6. Initial status in STAT_NON_LINE#

In command STAT_NON_LINE, the initial state is not calculated. It is provided by the user. By default, the initial state of a calculation is « blank »: displacements, constraints and internal variables are zero.

The possible inconsistency of an initial state may disappear as soon as the first calculated time step is taken, but it may persist. It depends on how the law of behavior is integrated (choice of the law programmer).

If the behavior is integrated incrementally (old vocabulary: COMP_INCR), the inconsistency of the initial state will persist for all the moments of the calculation. Otherwise, the inconsistency will disappear at the first step of time.

It is therefore very important that the initial state of the calculation be « fair ».

If the control variables, at the initial moment, are such that they cause non-zero anelastic deformations, this deformation results in an incorrect initial state.

In fact, we must have:

\(\sigma =A(ϵ-{ϵ}_{\mathit{anel}})\)

As the displacement is zero, deformation \(ϵ\) is zero. Constraint \(\sigma\) cannot be null.

In practice, therefore, at the initial moment, it is necessary that:

  • the temperature is equal to the reference temperature

  • the hydration is zero

*

4.5.7. « Hidden » keywords for assigning control variables#

We have seen how the user can assign fields (isolated or from sd_result) as control variables for subsequent calculations.

But command variables are named scalars and associated fields also have named components. The problem is to associate each control variable with a component of the field.

There are as many « hidden » factor keywords as there are control variables that allow these associations. These keywords are « hidden » because they have values by default (see table below). You should only use them when you want to do something a bit « special. » For example:

  • use variables NEUT_1 or NEUT_2,

  • pass off a temperature field for a corrosion field,

*

Let’s explain these keywords factors on two examples:

The user has carried out a « thermal » calculation whose solution is in reality an evo1 evolution whose fields contain drying. In this evol_ther, fields called TEMP have a component also called TEMP.

The user who wants to use such fields as command variable SECH can write:

CHMAT = AFFE_MATERIAU (…

VAR_SECH =_F (NOM_VARC =” SECH “, GRANDEUR =” TEMP_R”,

CMP_VARC =” SECH “, CMP_GD =” TEMP”))

This can be translated as: « the fields I want to assign as command variable “SECH” are of the magnitude TEMP_R and the component to use is” TEMP “.

When a control variable is a « vector » with several scalar components, for example the variable M_ ACIER which has 9 components (“PFERRITE”,… , “TACIER”). The user can write:

CHMAT = AFFE_MATERIAU (…

VAR_M_ACIER =_F (NOM_VARC =”M_ ACIER “, GRANDEUR =” VARI_R”,

CMP_VARC =( “PFERRITE”, “PPERLITE”,…, “TACIER”),

CMP_GD =( “V1”, “V2”,…, “V9 »)))

This means: « the fields I want to assign as a command variable “M_ ACIER “are of the magnitude VARI_R and the correspondence of the components to use is: (” PFERRITE “,” V1 “), (” TACIER “,” V9 “).

Hidden keywords have the following values by default:

NOM_VARC

GRANDEUR

CMP_VARC

CMP_GD

TEMP

TEMP_R

TEMP

TEMP

GEOM

GEOM_R

X

X

Y

Y

Z

Z

SECH

TEMP_R

SECH

TEMP

HYDR

HYDR_R

HYDR

HYDR

CORR

CORR_R

CORR

CORR

IRRA

IRRA_R

IRRA

IRRA

NEUT1

NEUT_R

NEUT1

X1

NEUT2

NEUT_R

NEUT2

X1

NEUT3

NEUT_R

NEUT3

X1

EPSA

EPSI_R

EPSAXX

EPXX

EPSAYY

EPYY

EPSAZZ

EPZZ

EPSAXY

EPXY

EPSAXZ

EPXZ

EPSAXZ

EPXZ

M_ ACIER

VARI_R

PFERRITE

V1

PPERLITE

V2

PBAINITE

V3

PMARTENS

V4

PAUSTENI

V5

PCOLDSUM

V6

TAUSTE

V7

TRANSF

V8

TACIER

V9

M_ ZIRC

VARI_R

ALPHPUR

V1

ALPHBETA

V2

BETA

V3

TZIRC

V4

TEMPS

V5

PTOT

DEPL_R

PTOT

PTOT

4.6. Keyword factor AFFE_COMPOR#

This keyword factor makes it possible to affect the « multi-fiber behavior » of multi-fiber beam elements.

The keywords TOUT and GROUP_MA make it possible to designate all the cells that will be affected.

Behind the keyword COMPOR, the user will indicate the name of a compor concept from the DEFI_COMPOR/MULTIFIBRE command.

4.6.1. Operand MATER#

♦ MATER = matt,

The name of the material you want to affect.

In the general case, each mesh is affected by only one material. Sometimes a list of materials must be specified when the non-linear mechanical behavior is obtained by the DEFI_COMPOR [U4.43.06] command.