3. Operands#
3.1. Keyword RESULTAT#
In the case where you want to enrich an existing result data structure, the keyword RESULTATindique that the object is enriched with. This is a way in particular to modify MODELE, EXCIT,, COMPORTEMENT,, CARA_ELEM, and CHAM_MATER between several moments.
Note: it is mandatory that the order numbers and/or the moments be (strictly) increasing in the case where an already existing result data structure is enriched. If this is not the case, a fatal error will be issued.
3.2. Operands FORMAT/UNITE/NOM_FICHIER#
/FORMAT = 'IDEAS' or 'IDEAS_DS58'
Read the file in IDEAS format.
◊ UNITE
The logical unit number of the file in the universal format IDEAS, by default 19.
/FORMAT = 'MED'
Read the file in MED format.
◊ UNITE
Logical unit number of the file in MED format, by default 81.
Note:
The logical unit number may have been associated with a file using the command DEFI_FICHIER [U4.12.03].
3.3. Operands if FORMAT = “IDEAS”#
We don’t read datasets 58 (but only datasets 55, 57 and 2414)
3.3.1. Keyword FORMAT_IDEAS#
3.3.1.1. Objective#
The fields to be read in the universal file are written as datasets. Each dataset is composed of a « identity card » header and a set of values (results at the nodes or by element at the nodes). This identity card is composed of several « record » records, composed of « field » fields. The objective of this keyword is to allow the user to define their own « identity card » by specifying their own search criteria.
Notes:
A number of « ID cards » are set by default [§6]. You can « overload » them using the keyword FORMAT_IDEAS.
In some specific cases (non-regression tests) the mesh associated with the model was not created by PRE_IDEAS. If the node associated with the number in the dataset 55 is not found in the mesh, then the name of the node is retrieved as a comment in the universal file, while verifying that the associated number corresponds to the name retrieved.
3.3.1.2. Syntax#
♦ NOM_CHAM = name, [Kn] ◊ NUME_DATASET = /55, /57, /2414, ◊ | RECORD_3 = r3, [L_i] ◊ | RECORD_6 = r6, [L_i] ◊ | RECORD_9 = r9, [L_i] ♦ POSI_ORDRE = po, [L_i] ◊ POSI_NUME_MODE = PNM, [L_i] ◊ POSI_MASS_GENE = PMG, [L_i] ◊ POSI_AMOR_GENE = page, [L_i] ◊/POSI_INST = pi, [L_i] /POSI_FREQ = pf, [L_i] ♦ NOM_CMP = lcmp, [L_kn] ◊ NB_VARI = nvari, [I] ),
3.3.1.3. Operands#
♦ NOM_CHAM = name
Symbolic name of the field for which the user defines the search criteria. See the NOM_CHAM keyword outside the factors keywords [§3.5.1].
♦ NUME_DATASET =
Number of the*dataset* from which the results will be extracted:
|
: values at the nodes, |
|
: values at nodes per element |
|
: values |
◊ | RECORD_3
◊ | RECORD_6
◊ | RECORD_9
Each of these keywords is composed of the word RECORD and a number. The number indicates the number of the record for which the search criteria will be defined. Each operand allows you to define a maximum of 10 integer values.
Ex: RECORD_6 = (1, 4, 9999, 9999, 8, 2, 6),
In this example, if the dataset read contains the values (1 4 9999 8 2 6) at the level of record No. 6, it will be retained for the rest of the searches. The value 9999 is a wild card that allows you to ignore the value read in the*dataset*.
♦/POSI_ORDRE
Vector of two integers to locate the order number
\(V(1)\): Record number
\(V(2)\): Order number position
◊/POSI_NUME_MODE
Vector of two integers to locate the mode number
\(V(1)\): Record number
\(V(2)\): Mode number position
◊/POSI_MASS_GENE
Vector of two integers to locate the generalized mass
\(V(1)\): Record number
\(V(2)\): Position of the generalized mass
◊/POSI_AMOR_GENE
Vector of two integers to locate generalized depreciation
\(V(1)\): Record number
\(V(2)\): Generalized depreciation position
◊/POSI_INST
Vector of two integers to locate the moment
\(V(1)\): Record number
\(V(2)\): Position of the moment
◊/POSI_FREQ
Vector of two integers to locate the frequency
\(V(1)\): Record number
\(V(2)\): Frequency position
♦ NOM_CMP
Name of the components to be read.
Ex: NOM_CMP = ('DX', 'DY', 'DY', 'DZ', 'DZ', 'XXX', 'DRX', 'XXX', 'DRZ',),
The character string “XXX” is a wild card that allows you to ignore the component when reading values.
If the number of components to be read is greater than the number of components present in the.unv file, they are ignored.
Important note:
When reading a cham_elem, this one is sized according to the finite elements of the model (see keyword MODELEci -below). For example, if we read a constraint field on a 2D model, the components carried by the elements will be SIXX, SIYY, SIXYet * SIZZ. If in file IDEAS, we find the components: SIXX, , , SIZZ, SIXZ, the components SIXZseront ignored. On the other hand, all components not found in the file (SIYYet SIXYdans our example) will be set to zero.
Note on assigning the field to the node in datasets 55:
In a file in universal format (Ideas), a mesh node is known by its number. In Aster, a node is known by name. Transcription is done by assigning to the node a name that starts with \(\text{N}\) followed by its Ideas number. When reading the field at the node in a dataset 55, we check that the node exists in the Aster mesh. If this is not the case, then we consider the name given, usually, as a comment next to the node number in the dataset 55.
◊ NB_VARI
Number of internal variables for fields of type “VARI”
◊ PROL_ZERO =
If PROL_ZERO = “OUI”: we set the values of the components at the nodes to 0 where the field is not defined, and we emit information of the type: « The non-existing values of the field TEMP read on the given mesh are considered zero. »
If PROL_ZERO = “NON”: keep the field as it is.
This keyword is only dedicated to fields with nodes, because for fields with elements, the field is extended by 0 by default.
3.3.2. Operand NB_VARI#
◊ NB_VARI = nbvar,
Number of internal variables to read for internal variable fields (VARI_R).
3.4. Operands if FORMAT = “IDEAS_DS58”#
We only read datasets 58.
3.4.1. Operand NOM_CHAM#
♦ NOM_CHAM = name,
Symbolic name of the field (s) to be read. You can read the fields at the nodes corresponding to:
NOM_CHAM = “DEPL”, “VITE”, “”, “ACCE”, “”, “SIEF_NOEU”, “EPSI_NOEU”.
3.4.2. Keyword REDEFI_ORIENT#
This optional factor keyword makes it possible to possibly redefine the sensitive direction of the sensor at certain measurement points. This redefinition is currently only being processed for NOM_CHAM =” DEPL “,” VITE “and” ACCE “. As many guidelines as necessary are being redefined. If this keyword is absent, the usual convention set out in the following table is adopted:
Direction code |
“ DEPL “,” “,” VITE “,” “,” ACCE “ |
“ SIEF_NOEU “ |
“ EPSI_NOEU “ |
1 |
DX |
SIXX |
|
2 |
DY |
SIYY |
|
3 |
DZ |
SIZZ |
|
4 |
SIXY |
|
|
5 |
SIXZ |
|
|
6 |
SIYZ |
|
3.4.2.1. Operands#
◊ CODE_DIR = /1,
/2,
/3,
Code describing the measurement direction, given in the header of dataset 58.
◊ DIRECTION =( DX, DY, DZ)
Directional vector, expressed in the global coordinate system, indicating the sensitive direction to be associated with CODE_DIR
◊ NOEUD = l_no,
List of nodes where CODE_DIR should be associated with the director vector DIRECTION.
3.4.3. Note: structure of the field created#
Universal files in dataset 58 contain « gap » fields: each dataset contains the data associated with a node and a direction. The field cannot be extended by null values, as is the case for dataset files 55, 57, or 2414. A field is created whose components are, for each node:
\(\mathrm{Di}\), the number \(i\) being associated with the direction code in the local coordinate system,
\(\mathrm{DiX}\), \(\mathrm{DiY}\) and \(\mathrm{DiZ}\), giving local direction in the global frame of reference.
Note: it is not possible to directly print and visualize the field read in standard formats (type MED). On the other hand, the field read can be used in calculation-test correlation operators. The result field contains the standard components and can be printed.
3.5. Operands if FORMAT = “MED”#
In format MED it is possible to read data structures of the following type: DYNA_TRAN, DYNA_HARMO, MODE_MECA, MODE_MECA_C. However, it should be noted that this rereading does not make it possible to fill in the parameters of the data structure. The calculation may stop if these parameters are necessary for the execution of a command.
3.5.1. Operand NOM_CHAM#
♦ NOM_CHAM = name,
Symbolic name of the field to be read. We can read fields at nodes, fields by elements at nodes (ELNO), constant fields (ELEM) and fields at integration points (ELGA). See the NOM_CHAM keyword outside the factor keywords [§3.5.1]
3.5.2. Operand NOM_CHAM_MED/NOM_RESU#
♦/NOM_CHAM_MED = named,
/NOM_RESU = named,
Allows you to define the name of the MED field, either explicitly or automatically:
NOM_CHAM_MED: Name according to the MED convention of the field to be read in the file. It’s a 32-character string,
NOM_RESU: Prefix for the name of the MED field to be read in the file. This is the name of the result associated with field MED. It is a string of at most 8 characters. It allows you to define the name of the med field automatically with the data provided to NOM_CHAM.
3.5.3. Operands NOM_CMP/NOM_CMP_MED#
◊ NOM_CMP = lcmp,
◊ NOM_CMP_MED = lcmpmed,
These two lists should be of the same length. We read the components listed in lcmpmed in the file MED, then we assign them to the components in the sense of Code_Aster, of the same rank in the lcmp list.
MED component names are limited to 16 characters.
If these 2 lists are absent, it is assumed that the names of the components are the same for MED and for Aster.
3.5.4. Operand PROL_ZERO#
When reading a field at Gauss points in MED format, we check the coherence between the Gauss points as defined in file MED and in Aster.
If the number of Gauss points « MED » is different from the number of Gauss points « Aster » we simply emit an alarm and we do not fill in the field on the elements in question. We will therefore have undefined values (NaN) where the field is not defined. The keyword PROL_ZERO = “OUI” allows the user to enter null values if they want to.
3.6. Other operands#
3.6.1. Operands TYPE_RESU/NOM_CHAM#
♦ TYPE_RESU
Type of the result data structure created.
For the EVOL_VARC type and for the MED format, if the field name is” IRRA “then NOMGD =” IRRA_R”.
♦ NOM_CHAM = l_name
Symbolic name of the field (s) to be read. It is under this (or these names) that the fields will be stored in the result data structure.
In principle, for the “IDEAS” format, you can read the fields at the nodes (NOEU) or constant by element (ELEM) or by nodes at the elements (ELNO). For the “EVOL_CHAR” type, the fields that can be read are:
PRES |
Fields at pressure nodes \((N/{m}^{2})\), component \(\mathit{PRES}\) |
FVOL_3D |
Fields at nodes with volume forces \((N/m\mathrm{³})\), components \(\mathit{FX}\), \(\mathit{FY}\), \(\mathit{FZ}\) |
FVOL_2D |
Fields at nodes with volume forces \((N/m\mathrm{³})\), components \(\mathit{FX}\), \(\mathit{FY}\) |
FSUR_3D |
Fields at nodes with surface forces \((N/{m}^{2})\), components \(\mathit{FX}\), \(\mathit{FY}\), \(\mathit{FZ}\) |
FSUR_2D |
Fields at nodes with surface forces \((N/{m}^{2})\), components \(\mathit{FX}\), \(\mathit{FY}\) |
VITE_VENT |
Fields at knots of wind speed \((m/s)\), components \(\mathit{DX}\), \(\mathit{DY}\), \(\mathit{DZ}\) |
T_ EXT |
Outdoor temperature map, component \(\mathit{TEMP}\) |
COEF_H |
Exchange coefficient map, component \(H\) |
For the “IDEAS_DS58” format, fields at the following nodes are not currently being treated: displacement, speed, acceleration, stress and deformation.
For the “MED” format, the Gauss point family is chosen from the name provided by
the user, for example:
U3 = LIRE_RESU (TYPE_RESU =' EVOL_NOLI ',
FORMAT =” MED “, MODELE = MOMECA, FORMAT_MED =( _F (NOM_CHAM_MED =”U_______ VARI_ELGA_______________ “, NOM_CMP_MED =( “V1”, “V2”,), NOM_CHAM =” VARI_ELGA “),) )
For the “MED” format, the fields that can be read for the “EVOL_CHAR” type are:
PRES |
Fields with pressure elements \((N/{m}^{2})\), component \(\mathit{PRES}\) |
FSUR_3D |
Fields with elements of volume forces \((N/m\mathrm{³})\), components \(\mathit{FX}\), \(\mathit{FY}\), \(\mathit{FZ}\) |
T_ EXT |
Outdoor temperature map, component \(\mathit{TEMP}\) |
COEF_H |
Exchange coefficient map, component \(H\) |
FORC_NODA |
Fields at nodes, components \(\mathit{FX}\), \(\mathit{FY}\), \(\mathit{FZ}\) |
3.6.2. Operands MATR_RIGI/MATR_MASS#
◊ MATR_RIGI = matr_rigi,
◊ MATR_MASS = matr_mass,
When you reread a mode_meca concept and want to use this mode_meca in certain operators (for example PROJ_MATR_BASE), you must:
the product mode refers to the two matrices (stiffness and mass) that were used to calculate it,
the modes_meca fields are numbered in the same way as the unknowns of these two matrices.
For this consistent numbering to be established in LIRE_RESU, you must use these 2 optional keywords MATR_RIGI and MATR_MASS (see for example the sdnv102a test).
Attention:
This option is only available in the format “ IDEAS “ .
3.6.3. Operands MAILLAGE/MODELE#
♦/MAILLAGE = my,
The mesh on which the field (s) read are assigned.
/MODELE = mo,
Name of the model where the types of finite elements affected on the mesh are defined. If you want to read a cham_elem, you have to give the name of the model.
3.6.4. Operands CHAM_MATER/CARA_ELEM/EXCIT#
To make an output from the command easier to use in post-processing (CALC_CHAMP), it is recommended to add information about the material field, basic characteristics, and loads.
Operands TOUT_ORDRE/NUME_ORDRE/LIST_ORDRE/INST//LIST_INST//FREQ/LIST_FREQ/PRECISION/CRITERE ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~
Selection in a data structure result [U4.71.00].
3.7. Reading MODE_MECA#
You can read clean modes stored in IDEAS format. But in order to be able to reuse them in dynamics operators (in particular DYNA_TRAN_MODAL), we need assembled matrices (stiffness and mass) associated with these modes. The keywords MATR_RIGI and MATR_MASS (recalling those of the modal calculation operator CALC_MODES) make it possible to fill in these two matrices.
3.8. Reading MODE_EMPI#
◊ NUME_PLAN = /0 [DEFAUT]
The empirical modes on a thermal result can be defined on a section of the mesh (so-called « linear » model) for welding simulation. The NUME_PLAN operand makes it possible to specify which section the empirical modes read belong to. If this parameter is equal to zero, then the empirical mode read is 3D (general case).
3.9. Reading EVOL_NOLI#
3.9.1. Operand COMPORTEMENT#
The syntax for this keyword that is common to several commands is described in document [U4.51.11]. This keyword must be entered in the case of non-linear mechanics because it is used to repeat the calculation in STAT_NON_LINE and DYNA_NON_LINE to check the compatibility of behaviors (number of internal variables in particular). If it is not specified, the structure will be considered to have elastic behavior (COMPORTEMENT =” ELAS “) in small deformations (RELATION =” PETIT”).
The EVOL_THER concept is used for linear thermics and nonlinear thermics. In the latter case, thermal behavior (keyword COMP_THER_NL in THER_NON_LINE) is not available in LIRE_RES. This means that the concept EVOL_THER created by LIRE_RESU does not contain the thermal behavior map (COMPORTHER) and is therefore not entirely consistent. However, this problem is not annoying insofar as the behavior map is created in THER_NON_LINE, including in recovery, and non-linear thermal behaviors do not have internal variables, so there is no need to check the compatibility of non-linear fields in recovery, there is no risk of false results
3.9.2. Operand VERI_VARI#
◊ VERI_VARI = /” OUI “[DEFAUT]
This keyword is used to check the consistency between the size of VARI_ELGA fields and the definition of non-linear behavior.
If there are differences, alarms are issued.
3.10. Other operands#
3.10.1. Operand TITRE#
◊ TITRE
Title we want to give to the result [U4.03.01].
3.10.2. Operand INFO#
◊ INFO = under
Allows you to print information related to the operator’s procedures in file MESSAGE.
3.10.3. About an alarm#
It may happen that the values read from the file cannot be copied into the fields of the SD_RESULTAT produced. For example, a pressure field existing on surface meshes cannot be copied onto a model containing only 3D elements. In this case, the code emits an alarm message similar to:
<A><LIRE_RESU> <LRCEME>
VALEURS NON AFFECTEES DANS THE CHAMP: 3699
VALEURS LUES DANS THE FICHIER: 3699