5. Example of using PROJ_MESU_MODAL#
For examples of use, it is strongly recommended to refer to test cases SDLD104 and SDLV122.
In this section, the various steps for expanding the measurement on the numerical model are presented.
Reading the mesh made up of the measurement points:
The purpose of this operation is to read the position of the measurement points in a mesh-type file. The format of this file must be readable by the Code_Aster (format GIBI, universal (i-Deas) or soon MED). Meshes connecting the measurement nodes may have been defined. They obviously have no physical meaning but will eventually make it possible to visualize the results during the post-treatment phase.
In the majority of cases, the mesh comes from an experimental measurement code that provides a file in universal format (i-Deas format). To transform it into an Aster format, we use the PRE_IDEAS operator.
PRE_IDEAS (UNITE_IDEAS = 19, UNITE_MAILLAGE = 21,)
mailmesu = LIRE_MAILLAGE (UNITE = 21),
Assigning a mechanical model to the mesh:
The objective of this operation is to define the support model for the nodes of the mesh made up of the measurement points. Two cases can be considered: assignment of a DIS_T model (discrete in translation => 3 degrees of freedom per node: DX, DY and DZ) or assignment of a DIS_TR model (discrete in translation - rotation => 6 degrees of freedom per node: DX, DY, DZ, DZ, DRX, DY and DZ) or assignment of a model (discrete in translation - rotation => 6 degrees of freedom per node: DX, DY, DZ, DZ,, DY and DZ) in the case where rotation measurements are carried out. DRY DRZ
modlmesu = AFFE_MODELE (MAILLAGE = mailmesu,
AFFE = _F (GROUP_NO = “knotty”, MODELISATION = “DIS_T”, PHENOMENE = “MECANIQUE”,),
)
Reading the measurement:
The measurement can be read using the LIRE_RESU operator. This operator allows you to read a file in universal format (dataset 58). It retrieves the component of the observed field and assigns it to the corresponding model.
measure = LIRE_RESU (FORMAT = 'IDEAS_DS58',
UNITE = 33,
MAILLAGE = mailmesu,
TYPE_RESU = 'DYNA_TRANS',
NOM_CHAM = 'SIEF_NOEU',)
Definition of the expansion base:
The expansion base must be of the mode_meca type. This concept can come from CALC_MODES or DEFI_BASE_MODALE.
If you want to extrapolate a deformation or stress field, the database must be enriched, via the CALC_CHAMP command, by the deformation or stress fields calculated at the nodes.
Generalized coordinate calculation:
The calculation of the generalized coordinates relating to the expansion base is provided by the operator PROJ_MESU_MODAL.
repgene = PROJ_MESU_MODAL (
MODELE_CALCUL = _F (MODELE = modlcalc,
BASE = base,),
MODELE_MESURE = _F (MODELE = modlmesu,
MESURE = measure,
NOM_CHAM = 'SIEF_NOEU',),
CORR_MANU = _F (NOEU_MESURE = 'no1',
NOEU_CALCUL = 'no2',),
RESOLUTION = _F (METHODE = 'SVD',
EPS = 1.E-4,),
)
Expansion on the digital model:
This expansion consists in calculating, on all the nodes of the numerical model, the field compatible with the field observed on the measured degrees of freedom. This expansion is carried out by the REST_GENE_PHYS command.
answer = REST_GENE_PHYS (RESU_GENE = repgene,
TOUT_CHAM = 'OUI',)