Code_Aster ®
Version
7.4
Titre :
Opérateur COMB_MATR_ASSE
Date :
25/01/05
Auteur(s) :
J. PELLET Clé
:
U4.72.01-H Page
: 1/4
Organisme(s) : EDF-R&D/AMA
Manuel d'Utilisation
Fascicule U4.7- : Opérations sur les résultats et les champs
Document : U4.72.01
Opérateur COMB_MATR_ASSE
1 But
Combiner linéairement, avec coefficients réels ou complexes, des concepts de type matr_asse_*.
Cet opérateur permet également d'effectuer des combinaisons linéaires en ne considérant que la
partie réelle ou imaginaire d'une matrice à coefficients complexes (extraction de la partie réelle ou
complexe d'une matrice).
Tous les concepts de type matr_asse_* à combiner, doivent partager la même numérotation et le
même mode de stockage de matrice assemblée, c'est-à-dire que les deux matrices auront été
assemblées par l'opérateur ASSE_MATRICE avec le même concept argument pour le mot clé
NUME_DDL (cf. [U4.61.11]).
Produit une structure de données de type matr_asse_*.
Manuel d'Utilisation
Fascicule U4.7- : Opérations sur les résultats et les champs
HT-66/05/004/A
Code_Aster ®
Version
7.4
Titre :
Opérateur COMB_MATR_ASSE
Date :
25/01/05
Auteur(s) :
J. PELLET Clé
:
U4.72.01-H Page
: 2/4
2 Syntaxe
cmass [matr_asse_*] = COMB_MATR_ASSE
( / COMB_R
=(_F(
PARTIE = / 'REEL' ,
/
'IMAG'
,
MATR_ASSE = m , / [matr_asse_DEPL_R]
/
[matr_asse_TEMP_R]
/
[matr_asse_PRES_R]
/
[matr_asse_DEPL_C]
/
[matr_asse_TEMP_C]
/
[matr_asse_PRES_C]
/
[matr_asse_GENE_R]
/
[matr_asse_GENE_C]
COEF_R
=
r ,
[R]
),),
/
COMB_C
=(_F(
MATR_ASSE = m , / [matr_asse_DEPL_R]
/
[matr_asse_TEMP_R]
/
[matr_asse_DEPL_C]
/
[matr_asse_TEMP_C]
/
[matr_asse_PRES_R]
/
[matr_asse_PRES_C]
/
[matr_asse_GENE_R]
/
[matr_asse_GENE_C]
/ COEF_R = r
,
[R]
/
COEF_C
=
c ,
[C]
),),
/
CALC_AMOR_GENE
=
_F(
/
AMOR_REDUIT
=
lr8
,
[l_R]
/
LIST_AMOR
=
lisr8,
[listr8]
MASS_GENE
=
masgen,
[matr_asse_GENE_R]
RIGI_GENE
=
riggen,
[matr_asse_GENE_R]
),
SANS_CMP =
'LAGR' ,
)
si COMB_R et MATR_ASSE : [matr_asse_DEPL_R]
alors [*]
-> DEPL_R
[matr_asse_TEMP_R]
[*]
-> TEMP_R
[matr_asse_PRES_R]
[*]
-> PRES_R
[matr_asse_DEPL_C]
[*]
-> DEPL_R
[matr_asse_TEMP_C]
[*]
-> TEMP_R
[matr_asse_PRES_C]
[*]
-> PRES_R
[matr_asse_GENE_R]
[*]
-> GENE_R
si COMB_C et MATR_ASSE : [matr_asse_DEPL_R]
alors [*]
-> DEPL_C
[matr_asse_TEMP_R]
[*]
-> TEMP_C
[matr_asse_DEPL_C]
[*]
-> DEPL_C
[matr_asse_TEMP_C]
[*]
-> TEMP_C
[matr_asse_PRES_R]
[*]
-> PRES_C
[matr_asse_PRES_C]
[*]
-> PRES_C
si CALC_AMOR_GENE
:
[matr_asse_GENE_R]
alors [*]
-> GENE_R
Manuel d'Utilisation
Fascicule U4.7- : Opérations sur les résultats et les champs
HT-66/05/004/A
Code_Aster ®
Version
7.4
Titre :
Opérateur COMB_MATR_ASSE
Date :
25/01/05
Auteur(s) :
J. PELLET Clé
:
U4.72.01-H Page
: 3/4
3 Opérandes
3.1 Mot
clé
COMB_R
/ COMB_R
Description des termes de la combinaison linéaire produisant une matrice à coefficients réels.
3.1.1 Opérande
PARTIE
PARTIE
= / 'REEL'
,
/
'IMAG'
,
Pour effectuer des extractions ou des combinaisons linéaires de partie(s) imaginaire(s) ou
réelle(s) de matrices complexes.
3.1.2 Opérande
MATR_ASSE
MATR_ASSE = m
Nom du concept matr_asse_* à combiner.
3.1.3 Opérande
COEF_R
COEF_R = r
Coefficient réel à appliquer au concept argument de MATR_ASSE.
3.2 Mot
clé
COMB_C
/ COMB_C
=
Description des termes de la combinaison linéaire produisant une matrice à coefficients
complexes.
3.2.1 Rappel sur la syntaxe des valeurs complexes
Les valeurs complexes peuvent être déclarées de deux façons différentes :
·
sous la forme a + i b avec la syntaxe RI a, b où a et b sont des nombres réels,
·
sous la forme (module, phase) avec MP mod, ph où mod et ph sont des nombres réels
(ph en degrés).
3.2.2 Opérande
MATR_ASSE
MATR_ASSE = m
Nom du concept matr_asse_* à combiner.
3.2.3 Opérandes
COEF_R/COEF_C
/ COEF_R = r
Coefficient réel à appliquer au concept argument de MATR_ASSE.
/
COEF_C
=
c
Coefficient complexe à appliquer au concept argument de MATR_ASSE.
Manuel d'Utilisation
Fascicule U4.7- : Opérations sur les résultats et les champs
HT-66/05/004/A
Code_Aster ®
Version
7.4
Titre :
Opérateur COMB_MATR_ASSE
Date :
25/01/05
Auteur(s) :
J. PELLET Clé
:
U4.72.01-H Page
: 4/4
3.3 Mot
clé
CALC_AMOR_GENE
Ce mot clé permet de construire un objet de type matr_asse_gene_R correspondant à la matrice
d'amortissement de Basile à partir d'une liste d'amortissements réduits.
MASS_GENE = masgen , RIGI_GENE = riggen,
masgen et riggen sont les 2 matrices généralisées de masse et rigidité.
3.4 Opérande
SANS_CMP = 'LAGR'
Cette opérande a pour effet de mettre à "zéro" les termes de la matrice assemblée résultat
correspondant aux lignes et aux colonnes des degrés de liberté de Lagrange.
4 Exemples
d'utilisation
4.1
Combinaison linéaire classique
mat_rs = COMB_MATR_ASSE
(COMB_C =(_F (MATR_ASSE = mat_1, COEF_R = 1.),
_F(MATR_ASSE=
mat_2,
COEF_C=
'RI',
0.,1.,),),)
)
Le concept produit mat_rs est du type matr_asse_*_C (complexe) :
mat_rs = mat_1 + i mat_2
4.2
Recopie d'un concept de type matr_asse_*_R
mat_sauv = COMB_MATR_ASSE (COMB_R = _F (MATR_ASSE = mat_1, COEF_R = 1.))
4.3 Différence
entre
COMB_C et COMB_R :
mat_R = COMB_MATR_ASSE (COMB_R = _F(MATR_ASSE = mat_1, COEF_R = 1.))
#
#
mat_R
est à coefficients réels
mat_R
= mat_1
#
mat_C = COMB_MATR_ASSE (COMB_C = _F(MATR_ASSE = mat_1, COEF_R = 1.))
#
#
mat_C
est à coefficients complexes, mais la partie imaginaire est nulle
#
mat_C
= mat_1
+
i.
[0].
4.4
Extraction de la partie réelle d'une matrice de type matr_asse_*_C
mat_R = COMB_MATR_ASSE
( COMB_R = _F (
PARTIE = 'REEL',
MATR_ASSE
=
mat_C,
COEF_R
=
1.
,
),
)
Manuel d'Utilisation
Fascicule U4.7- : Opérations sur les résultats et les champs
HT-66/05/004/A
Document Outline