Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 1/10

Organisme(s) : EDF-R&D/AMA, EDF-DPN/UTO
















Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
Document : U4.66.01





Opérateur CALC_MATR_AJOU





1 But

Calculer des matrices de masse [R4.07.03], d'amortissement ou de rigidité ajoutés.

Les matrices sont induites par un fluide parfait, incompressible, au repos ou en écoulement potentiel,
sur une structure en 2D, 2D axisymétrique ou en 3D.

Les termes de ces matrices sont calculés sur la base modale de la structure dans le vide.

Le calcul des termes des matrices s'effectue par résolution des équations de LAPLACE dans le cadre
d'une analogie thermique. La température calculée joue le rôle d'une pression dans le domaine
fluide. Il faut donc prendre garde à définir le matériau fluide par des caractéristiques thermiques, et
affecter un modèle thermique à la partie du maillage qui représente le fluide.

Grâce à cet opérateur, on peut déterminer par exemple, les matrices ajoutées d'un faisceau de tubes,
considérés comme une seule structure immergée dans un même fluide.

Dans le cadre d'un calcul par sous-structuration dynamique, il est également possible d'évaluer la
matrice de masse ajoutée sur un modèle généralisé.

Pour des utilisations systématiques de cette commande et simplifier la rédaction du fichier de
commandes, on utilisera efficacement la macro-commande MACRO_MATR_AJOU [U4.66.11].

Produit une structure de données de type matr_asse_gene_R.

Les cas-tests FDLV106 [V8.01.106] et FDLV107 [V8.01.107] présentent des exemples d'utilisation de
cet opérateur.
Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 2/10


2 Syntaxe


massaj [matr_asse_gene_R] = CALC_MATR_AJOU



(
MODELE_FLUIDE
=
fluide
[modele]





MODELE_INTERFACE
=
interf
[modele]





CHAM_MATER
=
matflui [cham_mater]





CHARGE
=
charge
[char_ther]





/
MODE_MECA
=
modes
[mode_meca]



/
CHAM_NO =
chamno
[cham_no_DEPL_R]
/
MODELE_GENE
=
modgen
[modele_gene]






NUME_DDL_GENE
=
numgen
[nume_ddl_gene]




DIST_REFE
=
/
distance
[R]
/
1.E-2
[DEFAUT]




AVEC_MODE_STAT
=
/
'OUI'
[DEFAUT]










/ 'NON'




NUME_MODE_MECA
=
nume [l_I]




INFO
=
/
1
[DEFAUT]







/ 2




OPTION
= | 'MASS_AJOU'







| 'AMOR_AJOU'







| 'RIGI_AJOU'




POTENTIEL
=
phi
[evol_ther]




SOLVEUR
=
voir
[U4.50.01]




NOEUD_DOUBLE
= / 'OUI'
/
'NON'
[DEFAUT]


);
Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 3/10


3 Opérandes

3.1 Opérande
MODELE_FLUIDE

MODELE_FLUIDE = fluide

Modèle thermique qu'on affecte à la partie du maillage qui correspond au fluide. Les éléments de
bord à l'interface fluide/structure doivent être présents dans le modèle fluide. C'est sur ce modèle
qu'on résout l'équation de Laplace avec condition aux limites de type "flux fluide", pour avoir le
champ de pression dans tout le fluide et a fortiori le champ de pression à l'interface
fluide/structure.

Les noeuds des éléments du maillage fluide doivent tous être numérotés de telle sorte que le
jacobien de l'élément soit de signe positif sur tout le maillage fluide.


3.2 Opérande
MODELE_INTERFACE

MODELE_INTERFACE = interf

Modèle thermique d'interface rassemblant tous les éléments de bord définissant l'interface
fluide/structure. C'est sur ce modèle qu'on calcule les termes des matrices ajoutées.

Le calcul dépend de l'orientation de la normale de ces éléments d'interface. Il faut veiller à ce
que cette normale soit orientée sur tous ces éléments, de la structure vers le fluide (convention
adoptée).

Si les fluides baignant la structure sont de densités différentes, il faut définir le modèle interface
par autant de groupes de mailles non confondus géométriquement qu'il y a de fluides au contact
de la structure. Par exemple, une tuyauterie peut avoir sa surface intérieure au contact d'un fluide
de densité 1, et sa surface extérieure au contact d'un fluide de densité 2. Le modèle interface est
donc construit sur deux groupes de mailles non confondus géométriquement, l'un au contact du
fluide de densité 1 (interfa1) et l'autre au contact du fluide de densité 2 (interfa2).

interfa2
I
N
interfa1
T
fluide 1
E
R
F
A
C
E
fluide 2
structure

Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 4/10


3.3 Opérandes
CHAM_MATER / CHARGE

CHAM_MATER = matflui

Champ de matériau définissant le fluide immergeant la structure. Ce matériau est défini par des
caractéristiques thermiques équivalentes dans l'opérateur DEFI_MATERIAU [U4.43.01]. La
conductivité thermique (mot-clé LAMBDA) est toujours prise égale à 1. La chaleur spécifique
(mot-clé RHO_CP) joue le rôle de masse volumique du fluide.

CHARGE = charge

Charge thermique de type [char_ther] nécessaire à la résolution du système linéaire découlant
de l'équation de Laplace dans le fluide. On doit imposer une température quelconque (qui joue en
fait le rôle d'une pression) sur un noeud quelconque du maillage fluide, afin de rendre le système
non singulier. Cette opération s'effectue avec l'opérateur AFFE_CHAR_THER [U4.44.02].

3.4 Opérandes
MODE_MECA / CHAM_NO / MODELE_GENE

/ MODE_MECA = modes

Modes dynamiques calculés sur le modèle structure. Si on a plusieurs structures non
connexes immergées dans un même fluide, pour lesquelles on veut déterminer les matrices
ajoutées comprenant les termes de couplage par le fluide, le modèle structure qu'on définit
rassemble la totalité des structures immergées. Les modes utilisés par l'opérateur sont les
modes calculés pour la structure globale.


/ CHAM_NO = chamno

Champ aux noeuds de déplacements affectés sur des groupes de noeuds définissant
l'interface fluide/structure. En affectant un tel champ de déplacement sur le(s) groupe(s) de
noeuds d'interface grâce à l'opérateur AFFE_CHAM_NO [U4.44.11], on peut par exemple
simuler facilement des modes de corps rigide des structures. Cet opérande est à utiliser si
l'on veut estimer les termes des matrices ajoutées et de couplage pour une géométrie plane
sans faire au préalable de calcul modal de la structure dans le vide, et qu'on veuille
affecter ces termes dans des éléments discrets (modélisation DIS_T). L'opérande INFO doit
impérativement être actif pour imprimer les termes calculés.

Attention :

L'utilisation de cet opérande exclut celle de l'opérande NUME_DDL_GENE. On ne peut
donc pas faire de calcul modal, transitoire ou harmonique en utilisant l'opérande
CHAM_NO.

En effet, pour faire du calcul de modes en eau, il faut avoir une matrice de masse

généralisée et une matrice de rigidité généralisée de la structure. Ceci suppose d'avoir
fait un calcul modal sur la structure dans le vide (ce qu'on veut précisément éviter).

Cet opérande ne s'utilise en définitive que pour évaluer la matrice de masse, de
rigidité et d'amortissement ajoutés
, et les utiliser pour coupler des structures de type

poutre par des éléments discrets de masse, par exemple.
Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 5/10



/ MODELE_GENE = modgen

Modèle généralisé construit par l'opérateur DEFI_MODELE_GENE [U4.65.02]. Ce mot clé est à
utiliser lorsque l'on fait un calcul par sous-structuration dynamique, et que l'on veut calculer la
matrice de masse ajoutée couplant l'ensemble des sous-structures. Dans ce cas, les sous-
structures peuvent être dans des fichiers de maillage différents, ces fichiers pouvant être eux-
mêmes distincts du fichier de maillage fluide. Les sous-structures qui présentent une
répétitivité au sein du fluide ne sont à mailler qu'une seule fois, mais on prendra soin au
niveau du maillage fluide de mailler toutes les interfaces fluide/structure. De plus, il faut veiller
à ce que les noeuds d'interface fluide coïncident au mieux avec les noeuds d'interface de
structure, afin de pouvoir recopier, sur la base d'un critère géométrique de proximité, les
valeurs du champs de déplacement de structure sur les noeuds d'interface fluide (voir
opérande DIST_REFE).

Attention :

L'utilisation de cet opérande rend obligatoire celle de l'opérande NUME_DDL_GENE.

3.5 Opérande
OPTION

Ce mot clé précise le calcul de masse, rigidité ou amortissement ajouté que l'on veut faire, en utilisant
respectivement 'MASS_AJOU', 'RIGI_AJOU', ou 'AMOR_AJOU'. Les deux dernières options de
calcul nécessitent la présence d'un potentiel (thermique) stationnaire (voir opérande POTENTIEL).


3.6 Opérande
DIST_REFE

Distance de référence à renseigner lorsqu'on fait un calcul de masse ajoutée sur un modèle
généralisé. Cette distance est un critère absolu géométrique destiné à recopier des valeurs de
déplacements structuraux dans un modèle fluide thermique, afin d'y résoudre l'équation de Laplace du
champ de pression instationnaire. Par défaut, il est égal à 10­2 m.


3.7 Opérande
NOEUD_DOUBLE


NOEUD_DOUBLE = 'OUI'

Cet opérande est à utiliser lorsqu'on fait un calcul de masse ajoutée à partir d'un modèle
généralisé qui comprend une sous-structure maillée par un maillage filaire ou surfacique (i.e. sans
épaisseur comme poutre ou coque) et entourée par deux fluides. Il faut dans ce cas au niveau du
maillage dédoubler les noeuds des interfaces fluides de ceux de la structure, afin de pouvoir
calculer le saut de pression hydrodynamique de part et d'autre de la structure (cf. figure
ci-dessous).

x x x
x x
x
x
x
x
x
x
Structure maillée
fluide 1
x
x
(sans épaisseur)
x
x
x
x
x
x
Noeuds dédoublés
x
x
x
x
x x
(noeuds ayant les mêmes
coordonnées mais non le
fluide 2
même nom)

Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 6/10


3.8 Opérande
POTENTIEL


POTENTIEL = phi

Potentiel (thermique) stationnaire nécessaire au calcul de l'amortissement et de la rigidité ajoutés
de la structure soumise à un écoulement potentiel. Ce potentiel est produit par l'opérateur
THER_LINEAIRE [U4.54.01].

3.9 Opérande
NUME_DDL_GENE

NUME_DDL_GENE = numgen

Numérotation généralisée basée sur les modes mécaniques de la structure globale. La présence
de cet opérande permet de calculer une matrice de masse ajoutée de type matr_asse_gene_R.
Il doit être nécessairement présent si on veut par la suite faire du calcul modal, harmonique ou
transitoire.

3.10 Opérande
INFO

INFO
=

Indique le niveau d'impression des résultats de l'opérateur sur le fichier MESSAGE.

1 :
aucune impression,
2 :
impression de la partie triangulaire supérieure des matrices de masse ajoutée,
amortissement ou rigidité ajoutés.

Présentation en colonne.

3.11 Mot clé facteur SOLVEUR


Voir [U4.50.01].

3.12 Opérande
AVEC_MODE_STAT

Permet de débrancher le calcul des termes de masse ajoutée sur les modes statiques contenus dans
la base modale des sous-structures dans le cas d'un calcul avec un modèle généralisé (cf. [§3.4]).

3.13 Opérande
NUME_MODE_MECA

Permet de préciser une liste de numéros de modes retenus pour le calcul.


4 Phase

d'exécution

On vérifie que les modèles fluide et interface sont bien thermiques.

On vérifie que le stockage des matrices ajoutées se fait sur un profil plein.

On vérifie que les coefficients d'auto-masse ajoutée (termes diagonaux de la matrice) sont bien tous
positifs. Dans le cas contraire, un message d'alarme est émis pour que l'utilisateur vérifie l'orientation
des normales.

On vérifie que, pour un calcul d'amortissement ou de rigidité ajoutés, le mot clé POTENTIEL est bien
renseigné.

Dans le cas d'un calcul de masse ajoutée sur un modèle généralisé, on informe l'utilisateur sur les
recopies de champs de déplacements structuraux dans le fluide (nombre de valeurs recopiées) et on
indique comment changer la distance de référence (DIST_REFE).
Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 7/10


5 Exemple

5.1 Exemple 1 : Calcul de la matrice de masse ajoutée d'une structure
constituée de deux cylindres concentriques séparés par un fluide
incompressible


Les cylindres sont supportés chacun par des ressorts. La matrice de masse ajoutée est calculée pour
les deux premiers modes de la structure, à savoir les modes de corps rigide de chacun des cylindres
dans la direction Ox (cf. schéma).


n
R2
M
r
k2
r
k1

x
R 1
( )
1
m1
( )
2
m2


1) Définition du matériau fluide par des caractéristiques thermiques équivalentes :

eau = DEFI_MATERIAU( THER = _F( LAMBDA = 1. , RHO_CP = 1000. ) )

2) Affectation de ce matériau fluide sur le maillage fluide y compris le groupe de maille définissant
l'interface fluide/structure.

chammat1 = AFFE_MATERIAU( MAILLAGE = maya ,
AFFE = _F( GROUP_MA = 'fluide' , MATER = eau ) ,
_F( GROUP_MA = 'interface' , MATER = eau ))

3) Affectation du modèle thermique fluide (comprenant aussi l'interface)

fluide = AFFE_MODELE( MAILLAGE = MAYA ,
AFFE = ( _F( GROUP_MA = 'fluide' ,
MODELISATION = 'PLAN' ,
PHENOMENE = 'THERMIQUE' ) ,
_F( GROUP_MA = 'interface' ,
MODELISATION = 'PLAN' ,
PHENOMENE = 'THERMIQUE' ) ) )

4) Affectation du modèle thermique d'interface

interf = AFFE_MODELE( MAILLAGE = MAYA
AFFE = _F( GROUP_MA = 'interface' ,
MODELISATION = 'PLAN' ,
PHENOMENE = 'THERMIQUE' ) )
Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 8/10


5) Affectation du modèle structure global (comprenant les deux cylindres et leurs ressorts de
supportage)

struct = AFFE_MODELE( MAILLAGE = MAYA ,
AFFE = ( _F( GROUP_MA = 'cylindre' ,
MODELISATION = 'D_PLAN' ,
PHENOMENE = 'MECANIQUE' ) ,
_F( GROUP_MA = 'cylext' ,
MODELISATION = 'D_PLAN' ,
PHENOMENE = 'MECANIQUE' ) ,
_F( GROUP_MA = 'ressort' ,
MODELISATION = 'DIS_T' ,
PHENOMENE = 'MECANIQUE' ) ,
_F( GROUP_MA = 'ressorex' ,
MODELISATION = 'DIS_T' ,
PHENOMENE = 'MECANIQUE') ) )

6) Affectation d'une température imposée dans le maillage fluide

charge = AFFE_CHAR_THER( MODELE = fluide ,
TEMP_IMPO = _F( GROUP_NO = 'tempimpo' , TEMP = 0.))

7) Calcul des modes propres de la structure dans le vide

modes = MODE_ITER_SIMULT( MATR_A = matasks ,
MATR_B = matasms ,
CALC_FREQ = _F( OPTION = 'PLUS_PETITE' ,
NMAX_FREQ = 2 ) )

8) Numérotation généralisée basée sur les modes mécaniques calculés

numgen = NUME_DDL_GENE( MODE_MECA = modes , STOCKAGE = 'PLEIN' )

9) Calcul de la matrice de masse ajoutée de type matr_asse_gene_r (opérande NUME_DDL_GENE
présent). De ce fait, on peut ensuite calculer les modes propres de la structure "mouillée"

matraj = CALC_MATR_AJOU( MODELE_FLUIDE = fluide ,
MODELE_INTERFACE = interf ,
CHAM_MATER = chammat1 ,
CHARGE = charge ,
OPTION = 'MASS_AJOU' ,
MODE_MECA = modes ,
NUME_DDL_GENE = numgen ,
INFO =1 )

10) Calcul des matrices de masse et de raideur généralisées sur la numérotation généralisée basée
sur les modes mécaniques calculés numgen. Ces matrices sont de type [matr_asse_gene_r]

MACRO_PROJ_BASE( BASE = modes ,
MATR_ASSE_GENE = ( _F( MATRICE = matasms ,
MATR_ASSE = mgene ) ,
_F( MATRICE = matasks ,
MATR_ASSE = riggen ) ) )

11) Calcul de la matrice de masse totale de la structure (matrice de masse généralisée plus matrice
de masse ajoutée)

mastot = COMB_MATR_ASSE( COMB_R = ( _F( MATR_ASSE = mgene ,
COEF_R = 1. ) ,
_F( MATR_ASSE = matraj ,
COEF_R = 1. ) ) )

12) Calcul des modes de la structure immergée.

modhumi = MODE_ITER_SIMULT( MATR_A = riggen ,
MATR_B = mastot ,
CALC_FREQ = _F( OPTION = 'PLUS_PETITE' ,
NMAX_FREQ = 2 ) )

13) Restitution des modes "mouillés" sur base physique.

mode_mou = REST_BASE_PHYS( RESU_GENE = modhumi , MODE_MECA = modes )
Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 9/10


5.2
Exemple 2 : Utilisation de l'opérande CHAM_NO : Calcul de la matrice
de masse ajoutée pour une rangée de 3 tubes dans un canal fluide

Soient trois tubes plongés dans un canal fluide (voir schéma). On veut déterminer la matrice de masse
ajoutée comprenant les termes de couplage inter-tubes pour les modes de corps rigide suivant la
direction Ox des trois tubes. Sans faire de calcul modal sur la structure dans le vide, pour simuler ces
trois modes de corps rigide, on affecte un champ aux noeuds de déplacement unitaire sur chaque
groupe de noeuds définissant l'interface fluide structure des trois tubes.

GROUP_NO tube1
GROUP_NO tube2
GROUP_NO tube3
fluide


1) Affectation sur les groupes de noeuds d'interface d'un champ aux noeuds de déplacement unitaire
suivant Ox. Il est obligatoire d'appuyer ce champ aux noeuds sur la numérotation des ddl du modèle
structure.

chamno1 = CREA_CHAM( MAILLAGE = maya ,
TYPE_CHAM = 'NOEU_DEPL_R' ,
OPERATION = 'AFFE' ,
AFFE = _F( GROUP_NO = 'tube1' ,
NOM_CMP = ( 'DX' , 'DY' ) ,
VALE = ( 1. , 0.) )
NUME_DDL = nustruct )

chamno2 = CREA_CHAM( MAILLAGE = maya ,
TYPE_CHAM = 'NOEU_DEPL_R' ,
OPERATION = 'AFFE' ,
AFFE = _F( GROUP_NO = 'tube2' ,
NOM_CMP = ( 'DX' , 'DY' ) ,
VALE = ( 1. , 0.) )
NUME_DDL = nustruct )

chamno3 = CREA_CHAM( MAILLAGE = maya ,
TYPE_CHAM = 'NOEU_DEPL_R' ,
OPERATION = 'AFFE' ,
AFFE = _F( GROUP_NO = 'tube3' ,
NOM_CMP = ( 'DX' , 'DY' ) ,
VALE = ( 1. , 0.) )
NUME_DDL = nustruct )

2) Appel
à
CALC_MATR_AJOU : l'opérateur calcule la matrice 3*3 de masse ajoutée des trois tubes. Il
est impossible de faire du calcul modal, harmonique, ou transitoire par la suite.

matraj = CALC_MATR_AJOU( MODELE_FLUIDE = fluide ,
MODELE_INTERFACE = interf ,
CHAM_MATER = chammat1 ,
CHARGE = charge ,
OPTION = 'MASS_AJOU' ,
CHAM_NO = ( chamno1 , chamno2 , chamno3 ) ,
INFO =2 )
Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Code_Aster ®
Version
7.4

Titre :

Opérateur CALC_MATR_AJOU


Date :
19/01/05
Auteur(s) :
N. GREFFET, F. STIFKENS, G. ROUSSEAU Clé
:
U4.66.01-E Page
: 10/10


3) Les termes de la matrice de masse ajoutée peuvent être lus sur le fichier 'MESSAGE' et utilisés
dans un autre modèle décrivant la structure. Les termes de masse ajoutée calculés ici traduisent le
couplage par le fluide dans un plan transversal aux trois tubes. Si désormais on veut étudier le
couplage des tubes modélisés par des poutres, on peut affecter les termes de masse de la matrice
calculée dans des éléments discrets de masse (modélisation DIS_T) qui connectent les éléments de
poutre en vis-à-vis.

Manuel d'Utilisation
Fascicule U4.6- : Matrices / Vecteurs élémentaires et assemblage
HT-66/05/004/A

Document Outline