5. Integrating drying into Code_Aster#

These developments concern 2D elements and axisymmetric elements, as well as isoparametric 3D elements, with any number of linear and quadratic nodes.

5.1. Introduction of the concept of behavior in the nonlinear thermal operator#

The THER_NON_LINE operator was reserved exclusively for non-linear thermal, which will remain the default calculation option. But the same resolution module is used to solve the drying and hydration problems, because of the analogy of the equations.

The concept of behavior has been added to the nonlinear thermal operator, with a nomenclature and syntax similar to those of the nonlinear mechanics operator. For drying, it implies a concept of topological entity, on which this behavior is applied. This can be useful, when there are several possible types of diffusion laws, or when one wants to perform a purely thermal calculation on one part of the mesh, while on another part one makes a thermohydration calculation (on the other hand, the simultaneous use of drying type behaviors, and thermal or hydration behaviors on the same mesh would not make sense).

A “drying” behavior is associated with each of the diffusion laws, as can be found in the literature, just as a specific material is associated with each of the diffusion laws, to define the characteristic coefficients. The drying resolution is identical, except for coefficients, to that of non-linear thermal, and no modification has been made to the resolution algorithm.

For drying, four distinct behaviors are defined under the keywords” SECH_GRANGER “,” “,” SECH_BAZANT “,” “, or” SECH_NAPPE “, to characterize each of the possible diffusion laws. SECH_MENSI They can be attributed to complementary parts of the mesh, during the same calculation. The simultaneous definition of several “drying” behaviors associated with different topological entities requires several occurrences of the “COMPORTEMENT” keyword. So, the topological entity must be identified by entering one of the keywords GROUP_MA or MAILLE.

In parallel with the four “drying” behaviors, in operator DEFI_MATERIAU, four materials first make it possible to define the values of the coefficients of the diffusion laws, non-linear functions of water content and temperature. The user can choose the law (s) of his choice, and define the value he wants for each of these coefficients.

The key word SECH_GRANGER makes it possible to define the law of diffusion of liquid and gaseous water in its most classical form among expressions in literature. Four coefficients as well as a reference temperature \({T}_{0}\) characterize this law.

The keywords SECH_MENSI and SECH_BAZANT make it possible to define the laws of Mensi and Bazant, using the appropriate coefficients. The law of Bazant, expressed from the degree of humidity, requires the definition of a desorption curve to convert the water content into the degree of humidity in the context of this modeling.

Finally, the keyword SECH_NAPPE makes it possible to use a diffusion law, based on a tabulated function of two variables, which will be interpolated in the calculations based on the values of water concentration and temperature. This last possibility has the disadvantage of not removing the ambiguity between these two variables associated with an identical type, “TEMP”.

For drying, it is necessary to introduce an [evol_ther] concept at the input of the calculation, representing the evolution of the temperature field of the concrete structure, as part of a thermal/drying chained calculation. In fact, the calculation of drying requires the preliminary calculation of the temperature and possibly of the hydration, because the diffusion coefficient \(D(C,T)\) depends on the temperature.

5.2. Implementation of boundary conditions for drying#

5.2.1. Expression of boundary conditions#

Boundary conditions are expressed in the form of moisture flow on surfaces in contact with the external environment according to the expression [éq 4.4-1].

5.2.2. Delineation of the drying calculation using boundary conditions#

The drying calculation is defined on the entire mesh where finite elements are affected. To make the drying calculation effective only on a portion of the mesh (this in order to maintain the same model for drying calculations and for mechanical calculations and to facilitate the « continuation » of the Aster calculation [bib4]), we will use the boundary conditions. In fact, drying only takes place if there is exchange with the outside world. It is therefore the assignment of boundary conditions that makes it possible to « localize » the calculation. The absence of drying on a portion of the structure will be expressed by the absence of boundary conditions on the exchange surfaces concerned.

5.2.3. Implemented in Aster#

Boundary conditions can be defined, as in thermal, in the form of a non-linear normal flow formulated from a tabulated function of the calculation variable, and interpolated during the calculations. This avoids creating new calculation options, similar to the char_ther_flunl and resi_ther_fluxnl nonlinear thermal options that calculate the first and second members, and that can be used directly for drying. All you have to do is then choose a tabulated function corresponding to the flow expression, given by the equation [éq 4.4-1].

Using a predefined function (FORMULE), the flow expression, given in polynomial form and as a function of the calculation variable, is transformed into a tabulated curve, using the Aster operators (CALC_FONC_INTERP). Therefore, no new calculation option is created for the treatment of boundary conditions.

The calculation of new options would have the advantage of being optimal in terms of result (due to the absence of interpolations and due to « exact » derivative calculations), but would require the development of two new calculation options, similar to the options char_ther_flunl and resi_ther_fluxnl.

5.2.4. Example of formatting boundary conditions#

The sequence of commands, described in the following example (from test HSNA100 [V7.20.100]) involves the creation of a boundary condition CHARSE05 on a group of elements L_ INT.

Note:

The “ FORMULE “ Aster is the numerical expression for the normal flow of water concentration that uses the equation [éq 4.4-1].

BETA =3.41557E-08

C_0=105.7

C_ EQ_I05 =69.1

C_ EQ_E05 =69.1

C_ EQ_I10 =51.6

C_ EQ_E10 =69.1


FL_INT05 = FORMULE (NOM_PARA =' TEMP ',

VALE ="' (0.5*BETA/((C_0 - C_ EQ_I05)**2)

*(TEMP - (2.*C_0 - C_ EQ_I05)) * (TEMP - C_ EQ_I05))) "')


LIST0 = DEFI_LIST_REEL (DEBUT =0. , INTERVALLE =( _F (JUSQU_A = 200. , PAS = 10.))))


HU_INT05 = CALC_FONC_INTERP (FONCTION = FL_INT05,

LIST_PARA = LIST0, NOM_PARA = 'TEMP', NOM_RESU =' FL_INT05 ',

PROL_GAUCHE =' LINEAIRE ', PROL_DROITE =' LINEAIRE',

INTERPOL =' LIN ', TITRE =' FLUX D HUMIDITE')


CHARSE05 = AFFE_CHAR_THER_F (MODELE = MOTH,

FLUX_NL =_F (GROUP_MA = 'L_ INT ', FLUN = HU_INT05))

Note:

It is important that the interpreted function and the tabulated function do not have the same name, so that the right and left interpolations are properly defined, because the right and left exclusions do not « overload » the extensions of an interpreted function, transformed using the operator CALC_FONC_INTERP.

5.3. Digital integration of drying#

In the case of a normal flow boundary condition on border \(\Gamma\), the heat equation \(\rho {C}_{p}\frac{\text{dT}}{\text{dt}}-\text{Div}(\lambda \text{grad}T)=s(T)\) or \(\dot{\beta }-\text{Div}\left[\lambda (T)\nabla T\right]=s(T)\) leads to the variational formulation:

\(\underset{\Omega }{\int }\frac{\partial \beta (T)}{\partial t}v\text{.}d\Omega +\underset{\Omega }{\int }\lambda (T)\nabla T\text{.}\nabla v\text{.}d\Omega =\underset{\Omega }{\int }s(T)\text{.}v\text{.}d\Omega +\underset{G}{\int }\lambda (T)\frac{\partial T}{\partial n}\text{.}v\text{.}\mathrm{dG}\) eq 5.3-1

Similarly, the drying equation \(\frac{\partial C}{\partial t}-\text{Div}\left[D(C,T)\nabla C\right]=0\) leads, in the case of a boundary condition in normal flow on the \(\Gamma\) border, to the variational formulation:

\(\underset{\Omega }{\int }\frac{\partial C}{\partial t}v\text{.}d\Omega +\underset{\Omega }{\int }D(C,T)\nabla C\text{.}\nabla v\text{.}d\Omega =0+\underset{G}{\int }D(C,T)\frac{\partial C}{\partial n}\text{.}v\text{.}\mathrm{dG}\) eq 5.3-2

The drying resolution is integrated into the operator THER_NON_LINE, by replacing \(\rho {C}_{p}\) with the constant function equal to the identity, and the conductivity with the diffusion \(D(C,T)\), the temperature being used as a constant in the calculations (auxiliary variable). According to the law of diffusion chosen, it is necessary to calculate the value of the diffusion coefficient as well as its derivatives, according to the temperature and the water concentration at the current moment, at the current point.

Refer to the documentation of the nonlinear thermal operator [R5.02.02] for more details on the numerical integration of nonlinear thermics.

In the context of drying, the boundary conditions are given in terms of normal flow, and lead, as in thermal terms, to a term in the first member, associated with the calculation option rigi_ther_fluxnl, and to a term in the second member, associated with the option char_ther_fluxnl.