Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
1/10
Organisme(s) : EDF-R&D/AMA, DeltaCAD
Manuel d'Utilisation
Fascicule U4.3- : Fonction
Document : U4.33.03
Procédure CALC_TABLE
1 But
Manipuler les données des tables à la manière d'un tableur.
La commande permet d'effectuer des opérations sur les données des tables. Les opérations suivantes
sont actuellement disponibles :
·
Concaténer / Combiner deux tables,
·
Appliquer une formule,
·
Renommer des paramètres,
·
Filtrer les lignes selon certains critères,
·
Extraire certaines colonnes d'une table,
·
Ordonner les lignes,
Produit une structure de données table.
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
2/10
Table
des
matières
1 But .........................................................................................................................................................1
2 Syntaxe ..................................................................................................................................................3
3 Opérandes .............................................................................................................................................4
3.1 Opérande TABLE .............................................................................................................................4
3.2 Opérande COMB : concaténer/combiner deux tables.......................................................................4
3.2.1 Opérande TABLE....................................................................................................................4
3.2.2 Opérande NOM_PARA .............................................................................................................4
3.3 Opérande OPER : Appliquer une formule.........................................................................................4
3.3.1 Opérande FORMULE ...............................................................................................................4
3.3.2 Opérande NOM_PARA .............................................................................................................4
3.4 Opérande RENOMME : Renommer des paramètres d'une table.......................................................5
3.4.1 Opérande NOM_PARA .............................................................................................................5
3.5 Opérande FILTRE : Filtrer les lignes selon certains critères.........................................................5
3.5.1 Opérande NOM_PARA .............................................................................................................5
3.5.2 Opérande CRIT_COMP ...........................................................................................................5
3.5.3 Opérandes VALE / VALE_I / VALE_C / VALE_K .........................................................6
3.5.4 Opérandes CRITERE / PRECISION....................................................................................6
3.5.5 Exemple d'utilisation du mot clé FILTRE ...............................................................................6
3.6 Opérande EXTR : Extraire certaines colonnes d'une table..............................................................6
3.6.1 Opérande NOM_PARA .............................................................................................................6
3.7 Opérande TRI : Ordonner les lignes...............................................................................................6
3.7.1 Opérande NOM_PARA .............................................................................................................7
3.7.2 Opérande ORDRE....................................................................................................................7
3.8 Opérande INFO ...............................................................................................................................7
4 Exemples ...............................................................................................................................................8
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
3/10
2 Syntaxe
tab = CALC_TABLE (
reuse
= tab, [tabl_*]
TABLE
= matable,
[tabl_*]
TITRE
= titre
[l_Kn]
# 1. Concaténer/combiner deux tables :
COMB =_F(
TABLE
=
table,
[tabl_*]
NOM_PARA
=
l_para,
[l_Kn]
),
# 2. Appliquer une formule :
OPER =_F(
FORMULE =
formule,
[formule]
NOM_PARA
=
para, [Kn]
),
# 3. Renommer des paramètres d'une table :
RENOMME =_F(
NOM_PARA
=
l_para,
[l_Kn]
),
# 4. Filtrer des lignes :
FILTRE =_F(
NOM_PARA
=
para, [Kn]
/
CRIT_COMP
=
/'EQ',
[DEFAUT]
/'NE',
/'LT',
/'GT',
/'LE',
/'GE',
/ VALE_I
=
ival,
[I]
/
VALE_K
=
kval,
[Kn]
/ /
VALE
=
rval,
[R]
/
VALE_C
=
cval,
[C]
|
PRECISION = / prec,
[R8]
/
1.0D-3,
[DEFAUT]
|
CRITERE = / 'RELATIF', [DEFAUT]
/
'ABSOLU',
/
CRIT_COMP
=
/'MAXI',
/'ABS_MAXI',
/'MINI',
/'ABS_MINI',
/'VIDE',
/'NON_VIDE',
),
# 5. Extraire certaines colonnes :
EXTR =_F(
NOM_PARA
=
l_para,
[l_Kn]
),
# 6. Ordonner les lignes selon les valeurs d'un paramètre :
TRI =_F(
NOM_PARA
=
lpara,
[l_Kn]
ORDRE
= / 'CROISSANT'
,
[DEFAUT]
/ 'DECROISSANT',
),
INFO
=
/
1,
[DEFAUT]
/
2,
)
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
4/10
3 Opérandes
3.1 Opérande
TABLE
TABLE = matable
Nom de la table initiale sur laquelle on va effectuer des manipulations
3.2 Opérande
COMB : concaténer/combiner deux tables
/
COMB
Le mot-clé COMB permet de concaténer, de combiner deux tables entre elles, avec couture sur une
liste de paramètres communs.
3.2.1 Opérande
TABLE
TABLE = table
Nom de la table dont les valeurs doivent venir surcharger et/ou enrichir la table initiale.
3.2.2 Opérande
NOM_PARA
NOM_PARA = l_para
Nom des paramètres dont les valeurs doivent être identiques dans les deux tables.
Remarques pour la combinaison :
Ex: tab_resu=CALC_TABLE(TABLE=tab1,
COMB=_F(TABLE=tab2,
NOM_PARA=('ABSC_CURV','NOEUD') ) )
Quand ABSC_CURV et NOEUD sont identiques entre tab1 et tab2, on insère les valeurs de
tab2 sur la ligne de tab1 (pour les autres paramètres communs aux 2 tables, c'est donc la
valeur de tab2 qui écrase celle de tab1). Sinon on ajoute la ligne de tab2 à la fin de tab1.
NOM_PARA agit comme une clé primaire : si on ne trouve pas plus d'une fois le couple
(ABSC_CURV, NOEUD), on ajoute la ligne.
Cet opérateur n'est pas répétable car l'ordre des occurrences du mot-clé facteur pourrait
modifier le résultat final.
3.3 Opérande
OPER : Appliquer une formule
/
OPER
Permet d'appliquer une formule dont les variables sont les paramètres de la table et d'insérer le
résultat dans une nouvelle colonne.
Remarque :
Cet opérateur est répétable.
3.3.1 Opérande
FORMULE
FORMULE = formule
Nom de la formule à appliquer
3.3.2 Opérande
NOM_PARA
NOM_PARA = para
Nom du nouveau paramètre.
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
5/10
3.4 Opérande
RENOMME : Renommer des paramètres d'une table
/
RENOMME
Le mot-clé RENOMME permet de renommer un ou plusieurs paramètres d'une table.
3.4.1 Opérande
NOM_PARA
NOM_PARA = l_para
Nom des paramètres : couple de valeurs (ancien nom du paramètre, nouveau nom du
paramètre)
Remarque :
Cet opérateur est répétable.
3.5 Opérande FILTRE : Filtrer les lignes selon certains critères
/
FILTRE
Le mot clé facteur FILTRE permet de ne retenir dans la table que les lignes vérifiant certains
critères imposés par l'utilisateur. Les occurrences du mot clé s'ajoutent les unes aux autres
comme des filtres successifs. Pour chaque occurrence de ce mot clé, on précise le nom du
paramètre pour lequel on impose une condition, le type de condition (égalité, non-égalité, plus
petit, ..) ainsi que la valeur associée à la condition.
Remarque :
Cet opérateur est répétable.
3.5.1 Opérande
NOM_PARA
NOM_PARA = para
para est le nom du paramètre sur lequel porte la contrainte de filtrage.
3.5.2 Opérande
CRIT_COMP
CRIT_COMP = crit
crit est le type de la contrainte de filtrage.
EQ
"égalité" pour les entiers, les textes, les réels ou les complexes.
Pour les nombres flottants (réels ou complexes), cette égalité est évaluée avec
une certaine tolérance donnée par les mots clés PRECISION et CRITERE.
NE
"non-égalité" (Cf. EQ)
LT
"plus petit que"
Relations d'ordre :
- naturelle pour les entiers et les réels
- alphabétique pour les textes
- invalide pour les complexes
GT
"plus grand que" (Cf. LT)
LE
"plus petit ou égal à" (Cf. LT)
GE
"plus grand ou égal à" (Cf. LT)
VIDE
cellule vide
NON_VIDE
cellule non vide
MAXI
la ligne retenue sera celle qui aura la valeur maximale
ABS_MAXI
la ligne retenue sera celle qui aura la valeur absolue maximale
MINI
la ligne retenue sera celle qui aura la valeur minimale
ABS_MINI
la ligne retenue sera celle qui aura la valeur absolue minimale
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
6/10
3.5.3 Opérandes
VALE / VALE_I / VALE_C / VALE_K
Ces différents mots clés sont utilisés en fonction du type de la colonne associée au paramètre sur
lequel porte la contrainte : entier, réel, complexe ou texte.
On donne en argument la valeur associée à la contrainte ; par exemple 12 si on ne s'intéresse qu'au
numéro d'ordre 12.
Cet opérande est inutile quand on utilise les types de contrainte : 'VIDE', 'NON_VIDE', 'MAXI',
'MINI', ...
3.5.4 Opérandes
CRITERE / PRECISION
Lorsque le paramètre contraint est de type flottant (réel ou complexe) et que le type de contrainte est
l'égalité (ou la non-égalité), cette égalité est évaluée avec une certaine tolérance.
PRECISION = eps,
eps est la tolérance
CRITERE= /'RELATIF' ,
|x-xref| < eps*|xref|
/'ABSOLU'
,
|x-xref|
<
eps
3.5.5 Exemple d'utilisation du mot clé FILTRE
Si l'on précise :
FILTRE= ( _F(NOM_PARA= 'NOEUD', VALE_K = 'N7',),
_F(NOM_PARA= 'INST' , CRIT_COMP= 'GT' , VALE= 3.0,),
_F(NOM_PARA= 'INST' , CRIT_COMP= 'LT' , VALE= 13.0,),
),
On sélectionne ainsi les lignes de la table telles que le paramètre NOEUD vaut 'N7' et telles que le
paramètre INST soit compris entre 3. et 13.
3.6 Opérande
EXTR : Extraire certaines colonnes d'une table
/
EXTR
Le mot-clé EXTR permet d'extraire certaines colonnes d'une table.
3.6.1 Opérande
NOM_PARA
NOM_PARA = l_para
Nom des paramètres que l'on veut extraire.
Remarque :
Cet opérateur n'est pas répétable.
3.7 Opérande
TRI : Ordonner les lignes
/
TRI
Le mot-clé TRI permet d'ordonner les lignes selon les valeurs des paramètres.
Remarque :
Cet opérateur n'est pas répétable car l'ordre des occurrences du mot-clé facteur pourrait
modifier le résultat final.
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
7/10
3.7.1 Opérande
NOM_PARA
NOM_PARA = l_para
Noms des paramètres sur lesquelles porte le tri.
3.7.2 Opérande
ORDRE
ORDRE = / 'CROISSANT'
/
'DECROISSANT'
Ce mot clé sert à préciser si on doit utiliser un ordre croissant ou décroissant. Par défaut, on
trie par ordre croissant.
Les relations d'ordre utilisées sont :
·
l'ordre naturel pour les entiers et les réels,
·
l'ordre alphabétique pour les textes et les noms de concepts.
Remarques :
On ne peut pas se servir d'un paramètre complexe pour classer les lignes d'une table.
Pour les paramètres de type NOEUD (ou MAILLE), l'ordre est alphabétique car ces
paramètres contiennent le nom des noeuds (ou des mailles).
Si l'on précise :
TRI=_F (NOM_PARA= ('NOEUD','INST'), ORDRE= 'CROISSANT'),
On triera les lignes de la table dans l'ordre alphabétique des noeuds. S'il existe plusieurs
lignes correspondant à un noeud donné, le second critère de tri (INST) sera utilisé pour
classer ces lignes.
3.8 Opérande
INFO
INFO = inf
Imprime dans le fichier "message" des informations complémentaires si inf=2. Rien ne se passe
si inf=1.
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
8/10
4 Exemples
Table 'TB1'
N Y Z
NOEUD
0 2.0 4.5 NO1
1 4.0
17.5 N03
2 17.5 9.0 N06
Table 'TB2'
N X Z
NOEUD
1 2.0 2.5 NO1
3 4.0 5.5 N031
4 17.5
20.5 N062
6 5.0 8.0 N013
#--- COMBINAISON
TB3=CALC_TABLE(TABLE=TB1,
COMB =_F(TABLE = TB2, NOM_PARA='NOEUD'))
Le contenu de la table TB3 est :
N Y Z NOEUD X
1 2.00000E+00 2.50000E+00 N01 2.00000E+00
1 4.00000E+00 1.75000E+01 N03 -
2 1.75000E+01 9.00000E+00 N06 -
3 - 5.50000E+00 N031 4.00000E+00
4 - 2.05000E+01 N062 1.75000E+01
6 - 8.00000E+00 N013 5.00000E+00
#--- FORMULE
DNOR=FORMULE(NOM_PARA = ('X','Z'),
VALE = 'SQRT(X*X+Z*Z)')
TB3=CALC_TABLE(TABLE = TB3,
reuse = TB3,
OPER =_F(FORMULE=DNOR , NOM_PARA='NOR_COOR'))
Le contenu de la table TB3 est :
N Y Z NOEUD X NOR_COOR
1 2.00000E+00 2.50000E+00 N01 2.00000E+00 3.20156E+00
1 4.00000E+00 1.75000E+01 N03 - -
2 1.75000E+01 9.00000E+00 N06 - -
3 - 5.50000E+00 N031 4.00000E+00 6.80074E+00
4 - 2.05000E+01 N062 1.75000E+01 2.69537E+01
6 - 8.00000E+00 N013 5.00000E+00 9.43398E+00
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
9/10
#--- RENOMMER
TB3=CALC_TABLE(TABLE = TB3,
reuse = TB3,
RENOMME=_F(NOM_PARA=('NOR_COOR','NORM_XZ')))
Le contenu de la table TB3 est :
N Y Z NOEUD X NORM_XZ
1 2.00000E+00 2.50000E+00 N01 2.00000E+00 3.20156E+00
1 4.00000E+00 1.75000E+01 N03 - -
2 1.75000E+01 9.00000E+00 N06 - -
3 - 5.50000E+00 N031 4.00000E+00 6.80074E+00
4 - 2.05000E+01 N062 1.75000E+01 2.69537E+01
6 - 8.00000E+00 N013 5.00000E+00 9.43398E+00
#--- FILTRE
TB4=CALC_TABLE(TABLE = TB3,
FILTRE =_F(NOM_PARA='NORM_XZ',CRIT_COMP='LE',VALE=30.))
Le contenu de la table TB4 est :
N Y Z NOEUD X NORM_XZ
1 2.00000E+00 2.50000E+00 N01 2.00000E+00 3.20156E+00
3 - 5.50000E+00 N031 4.00000E+00 6.80074E+00
4 - 2.05000E+01 N062 1.75000E+01 2.69537E+01
6 - 8.00000E+00 N013 5.00000E+00 9.43398E+00
#--- EXTRACTION
TB3=CALC_TABLE(TABLE = TB3,reuse=TB3,
EXTR =_F(NOM_PARA=('NOEUD','X','Z','NORM_XZ')))
Le contenu de la table TB3 est :
NOEUD X Z NORM_XZ
N01 2.00000E+00 2.50000E+00 3.20156E+00
N03 - 1.75000E+01 -
N06 - 9.00000E+00 -
N031 4.00000E+00 5.50000E+00 6.80074E+00
N062 1.75000E+01 2.05000E+01 2.69537E+01
N013 5.00000E+00 8.00000E+00 9.43398E+00
#--- TRI
TB3=CALC_TABLE(TABLE = TB3,reuse=TB3,
TRI = _F(NOM_PARA='NORM_XZ',ORDRE='DECROISSANT'))
Le contenu de la table TB3 est :
NOEUD X Z NORM_XZ
N062 1.75000E+01 2.05000E+01 2.69537E+01
N013 5.00000E+00 8.00000E+00 9.43398E+00
N031 4.00000E+00 5.50000E+00 6.80074E+00
N01 2.00000E+00 2.50000E+00 3.20156E+00
N06 - 9.00000E+00 -
N03 - 1.75000E+01 -
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Code_Aster ®
Version
8.2
Titre :
Procédure CALC_TABLE
Date :
31/01/06
Auteur(s) :
M. COURTOIS, F. LEBOUVIER Clé
:
U4.33.03-A1 Page :
10/10
Page laissée intentionnellement blanche.
Manuel d'Utilisation
Fascicule U4.3- : Fonction HT-62/06/004/A
Document Outline