5. TP implementation#
5.1. Objectives of the TP#
It is a question of carrying out a calculation combining thermo-hydration, drying and mechanics.
This TP allows you to:
implement a thermal and drying calculation in Code_Aster: managing the loading, materials, behavior and parameters of THER_NON_LINE;
understand and implement the concept of control variables;
define parameters of a law of behavior that depend on control variables;
5.2. Geometry and meshing#
Geometry and meshing (quadratic) are provided. Simply import the med file which can be retrieved from the salome_meca sources (directory XXX /salome_meca/ VYYY /tools/code_aster_stable_ ZZZZ /share/aster/tests) and which is called forma41a.20 or forma41.mmed depending on the version.
5.3. First step: elastic calculation#
The elastic calculation corresponds to modeling A. It is proposed to start directly from this file.
Start in AsterStudy by importing the forma41a test case. Depending on the code_aster version used: - or the study is broken down into 2 steps: the first defines the mesh, the model, the materials; the second defines the mechanical loads, starts the mechanical calculation and proposes some post-treatments - or the study is a single block and it is advisable to divide it into 2 stages, according to the same distribution (Operations/Insert a Stage Above then by copying and pasting the various orders from one Stage to another). |
Define the output files and then start the calculation. Open the result file in Paravis and observe the stress state of the beam. |
5.4. Second step: adding the thermohydration calculation and taking into account the dehydration withdrawal#
The objective here is to perform the thermohydration calculation prior to the mechanical calculation and then to take into account thermal expansion and endogenous shrinkage in the mechanical calculation.
We recall that the idea is to do the thermal calculation with a linear mesh and the mechanical calculation with the quadratic mesh, which involves a projection step.
1st step: carrying out the thermohydration calculation (Stage 1)
Create a new linear mesh from the initial quadratic mesh with CREA_MAILLAGE. (Note: the linear mesh can also be, or have been obtained, in Mesh) |
Create a model THERMIQUEutilisant modeling 3D_DIAG. Note: the thermal calculation will only be done on concrete (steels are not taken into account). |
Define thermal parameters in DEFI_MATERIAU (the user can either comple t er an existing concept or create one new). For law THER_NLqui to simulate thermohydration, it is necessary to define: - the conductivity, and the heat of hydration of concrete - the affinity and enthalpy functions using the CALC_FONC_INTERP command. Assign the material to the concrete meshes on the linear mesh or thermal model. |
Define thermal loading on the faces concerned in AFFE_CHAR_CINE_Favec THER_IMPO. |
Define a list of moments from 0 to 100 days that goes through 10 days and 30 days (attention list defined in seconds, use a sufficiently fine discretization, especially in the first 10 days when the temperature varies rapidly). Defining an archiving list can also be useful in order not to store all the time steps for mechanical calculation. |
Use THER_NON_LINE to solve the thermal problem using the THER_HYDR relationship |
Calculate the hydration field at the node with CALC_CHAMP. |
2nd step: updating the mechanical calculation (Stage 2)
Create a temperature function that defines Young’s modulus. |
Change mechanical parameters in DEFI_MATERIAU with ELAS_FO. Add the endogenous expansion and shrinkage coefficient. |
Use PROJ_CHAM to project thermal results from the linear mesh to the quadratic mesh. |
Add the temperature and hydration control variables associated with the result in AFFE_MATERIAU. Don’t forget to specify reference values. |
Define a relevant list of moments and the load function for the MECA_STATIQUE command that is already present. Remove the bending load and stop the calculation one step before the end. |
Add a MECA_STATIQUE command with the flexure load that calculates the last moment. |
Add in CALC_CHAM the calculation of option EPVC_ELNO which calculates the deformations due to withdrawals. |
Start the calculation and visualize the results. Do not hesitate to vary the discretization over time to check the relevance of the solution. |
5.5. Third step: adding the drying calculation and taking account of withdrawals#
1st step: adding the drying calculation (Stage 1 & new Stage 2)
In Stage 1, add the drying parameters in DEFI_MATERIAU linked to the SECH_GRANGER law. |
Insert a New Stage after the thermohydration calculation. Define the drying load on the faces concerned in AFFE_CHAR_THER_Favec TEMP_IMPO. |
Use THER_NON_LINEpour to solve the drying problem (COMPORTEMENT = “SECH_GRANGER”). Don’t forget to enter the previous thermal result in EVOL_THER_SECH. |
2nd step: updating the mechanical calculation (Stage 1 & 3)
Add desiccation indent in DEFI_MATERIAU/ELAS_FO. |
Use PROJ_CHAM to project the drying result. |
Add to AFFE_MATERIAU the drying control variables associated with the previous projected result. Don’t forget to specify the reference values. |
If necessary, adjust the list of moments for the MECA_STATIQUE command already present. |
Start the calculation and visualize the results. Do not hesitate to vary the discretization over time to check the relevance of the solution. |
5.6. Analysis of the results#
We can use Salomé’s VISU or PARAVIS module to visualize the fields of displacement, stress and deformation.
For example, it will be possible to visualize the stresses along segment \(\mathrm{BF}\) and observe the high tensile stresses in skin due to desiccation shrinkage, and verify the deformations related to the various control variables.
The final result corresponds to modeling B from test FORMA41.