u4.52.11 Opérateur NORM_MODE#

Syntaxe#

Détail de la syntaxe
/ mode_flamb
/ mode_meca
/ mode_meca_c = NORM_MODE(
    ◇ reuse = <objet de MODE>,
    ◆ MODE = mode_flamb / mode_meca,
    ◆ / NORME = / "EUCL",
                / "EUCL_TRAN",
                / "MASS_GENE",
                / "RIGI_GENE",
                / "TRAN",
                / "TRAN_ROTA",
      / GROUP_NO = grno,
      / AVEC_CMP = text,
      / SANS_CMP = text,
    # Si: exists("GROUP_NO")
        ◆ NOM_CMP = text,
    ◇ MODE_SIGNE = _F(
         ◆ / GROUP_NO = grno,
         ◆ NOM_CMP = text,
         ◇ SIGNE = / "NEGATIF",
                   / "POSITIF" (par défaut),
      ),
    ◇ MASSE = matr_asse_depl_r / matr_asse_gene_r / matr_asse_pres_r,
    ◇ RAIDE = matr_asse_depl_c / matr_asse_depl_r / matr_asse_gene_r / matr_asse_pres_r,
    ◇ AMOR = matr_asse_depl_r / matr_asse_gene_r,
    ◇ TITRE = text,
    ◇ INFO = / 1 (par défaut),
             / 2,
)


◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles

Opérandes#

Opérande MODE#

♦    MODE =    m_in

Nom du concept de type mode_* dont on veut changer la normalisation des modes propres. Si m_out est identique à m_in et si le mot-clé “reuse” est activé avec la valeur m_out, la renormalisation se fait en place.

Opérande NORME#

◊ /    NORME =

Nom symbolique de la norme choisie.

  • 'MASS_GENE' : Les modes sont normalisés à la masse généralisée unitaire.

  • 'RIGI_GENE' : Les modes sont normés à la rigidité généralisée unitaire.

  • 'TRAN' : Les modes sont normés à 1. pour la plus grande des composantes de translation (composantes : DX, DY, DZ).

  • 'TRAN_ROTA' : Les modes sont normés à 1. pour la plus grande des composantes de translation et de rotation (composantes : DX, DY, DZ, DRX, DRY, DRZ).

  • 'EUCL' : Les modes sont normalisés à la norme euclidienne des composantes qui ne sont pas des multiplicateurs de Lagrange (composante : LAGR).

  • 'EUCL_TRAN' : Les modes sont normalisés à la norme euclidienne des composantes de translation (composantes : DX, DY, DZ).

OpérandesGROUP_NO et NOM_CMP#

◊    GROUP_NO = grno

Nom du du groupe d’un nœud \(\mathit{grno}\) où on normalise.

| Attention: le groupe de nœuds \(\mathit{grno}\) doit contenir un unique nœud.

♦    NOM_CMP = cmp

Nom de la composante de normalisation au nœud \(\mathit{no}\) ou au groupe d’un nœud \(\mathit{grno}\) . Cet opérande est obligatoire si GROUP_NO est renseigné.

Les modes sont normés à \(1.\) pour la composante \(\mathit{cmp}\) du nœud \(\mathit{no}\) ou du groupe d’un nœud \(\mathit{grno}\) .

Opérandes AVEC_CMP/SANS_CMP#

◊    /    AVEC_CMP = a_cmp

a_cmp liste des noms des composantes utilisées pour la normalisation.

Les modes sont normés à \(1.\) pour la plus grande des composantes de la liste a_cmp quelque soit le nœud.

/    SANS_CMP = s_cmp

s_cmp liste des noms des composantes qui ne sont pas utilisées pour la normalisation.

Les modes sont normés à \(1.\) pour la plus grande des composantes qui n’est pas dans la listes_cmp.

Mot-clé facteur MODE_SIGNE#

Ce mot-clé facteur permet d’imposer pour tous les modes le signe d’une composante d’un nœud stipulée par l’utilisateur. Ce mot-clé facteur ne peut être utilisé que pour les modes réels (problème généralisé).

♦        GROUP_NO = grnd

Nom du groupe d’un nœud où on impose le signe d’une composante.

| Attention: le groupe de nœuds \(\mathit{grnd}\) doit contenir un unique nœud.

♦        NOM_CMP = cmp

Nom de la composante du groupe d’un nœud \(\mathit{grnd}\) où le signe est imposé.

◊        SIGNE =    / 'POSITIF'
                    / 'NEGATIF'

Signe imposé de la composante :”POSITIF’ou’NEGATIF”.

Cas de la normalisation d’une collection de modes issue de DEFI_BASE_MODALE#

Si on veut normer une collection de modes (base modale) issue de DEFI_BASE_MODALE, il faut renseigner les deux matrices, de masse et de raideur, permettant d’actualiser les paramètres modaux :

◊    MASSE        =    masse                        [matr_asse_depl_r]
                                         ou         [matr_asse_gene_r]
                                         ou         [matr_asse_pres_r]

◊    RAIDE        =    masse                        [matr_asse_depl_r]
                                         ou         [matr_asse_depl_c]
                                         ou         [matr_asse_gene_r]
                                         ou         [matr_asse_pres_r]

En effet, dans ce cas, les informations sur les matrices de masse et de rigidité (et éventuellement d’amortissement) sur lesquelles s’appuie la base modale ont été perdues, ou les modes peuvent être issus de différents jeux de matrices. Il est donc nécessaire de les rappeler à l’opérateur NORM_MODE.

Dans le cas d’une base de modes complexes, il faut de plus donner une matrice d’amortissement si on veut normer par rapport à la masse généralisée ou à la raideur généralisée (cf paragraphe 4.2 ).

Opérande TITRE#

◊    TITRE =    t

Titre associé au concept produit par cet opérateur [U4.03.01].

Opérande INFO#

◊    INFO = 1 ou 2

Pour chaque mode, le nom de l’ancienne norme et le nom de la nouvelle norme sont indiqués dans le fichier MESSAGE. Les noms imprimés des normes correspondent aux mot-clés décrits aux paragraphes 3.2 , 3.3 , 3.4 .

Formulation des règles de normalisation#

Les différentes normes utilisées ainsi que la définition des différents paramètres modaux sont recensées dans la documentation de référence [R5.01.03].

Modes propres réels#

Pour les modes de type mode_meca_r (modes propres réels) le problème généralisé aux valeurs propres associé est: \((K-{\omega}^{2}M)x=(K-{(2\pi f)}^{2}M)x=0\)

\(K,M\) sont respectivement la matrice de masse et la matrice de rigidité du système mécanique.

Pour les modélisations ‘MECANIQUE’, on définit les composantes du vecteur propre:

  • composantes de translation \({u}^{T}\)

  • composantes de rotation \({u}^{R}\)

  • composantes des multiplicateurs de LAGRANGE \(\lambda\)

  • autres composantes (pression et potentiel fluide) \({p}_{f}\)

On appelle:

  • \({u}^{\mathrm{TR}}\) composantes de translation et rotation,

  • \(u\) composantes autres que multiplicateurs de LAGRANGE.

ce qui conduit à :

\({u}^{\text{*}}=\left[\begin{array}{}u\\ \lambda \end{array}\right]=\left[\begin{array}{}{u}^{T}\\ {u}^{R}\\ {p}_{f}\\ \lambda \end{array}\right]\)

Pour les modèles avec composantes de translation et de rotation, le mode propre \({\phi }_{i}\) fourni par les algorithmes d’analyse modale est par défaut:

\({\Phi}_{i}=\frac{{u}^{\text{*}}}{maxu}=\frac{{u}^{\text{*}}}{max{u}^{\mathit{TR}}}={{\Phi}_{i}}^{\mathit{TR}}\)

ce qui est équivalent à la normalisation obtenue par le mot clé ‘TRAN_ROTA’.

Avec le mot clé ‘TRAN’ le mode obtenu est défini par:

\({\Phi}_{i}=\frac{{u}^{\text{*}}}{max{u}^{T}}={{\Phi}_{i}}^{T}\)

Pour les modèles avec composantes de translation uniquement, la normalisation est par défaut:

\({{\Phi}_{i}}^{T}=\frac{{u}^{\text{*}}}{maxu}=\frac{{u}^{\text{*}}}{max{u}^{T}}\)

ce qui est équivalent à la normalisation obtenue par le mot clé ‘TRAN’.

La normalisation par défaut conduit aux paramètres généralisés suivants:

  • rigidité généralisée \({}^{T}\Phi _{i}K{\Phi}_{i}={\gamma}_{i}\)

  • masse généralisée \({}^{T}\Phi _{i}M{\Phi}_{i}={\mu}_{i}\)

  • d’où la pulsation propre \({{\omega}_{i}}^{2}=\frac{{\gamma}_{i}}{{\mu}_{i}}\)

La normalisation à la masse généralisée unitaire est obtenue par le mot clé ‘MASS_GENE’:

\({{\Phi}_{i}}^{M}=\frac{{\Phi}_{i}}{\sqrt{{\mu}_{i}}}\) d’où \({}^{T}{\Phi}_{i}^{M}M{{\Phi}_{i}}^{M}=1.\) et \({}^{T}{\Phi}_{i}^{M}K{{\Phi}_{i}}^{M}={{\omega}_{i}}^{2}\)

Celle à la rigidité généralisée unitaire est obtenue par le mot clé ‘RIGI_GENE’:

\({{\Phi}_{i}}^{K}=\frac{{\Phi}_{i}}{\sqrt{{\gamma}_{i}}}\) d’où \({}^{T}{\Phi}_{i}^{K}M{{\Phi}_{i}}^{K}=\frac{1}{{{\omega}_{i}}^{2}}\) et \({}^{T}{\Phi}_{i}^{K}K{{\Phi}_{i}}^{K}=1.\)

La normalisation du mode propre à la norme euclidienne ‘EUCL’ est obtenue naturellement par:

\({{\Phi}_{i}}^{\mathrm{\parallel }u\mathrm{\parallel }}=\frac{{u}^{\text{*}}}{\mathrm{\parallel }u\mathrm{\parallel }}=\frac{{u}^{\text{*}}}{\sqrt{\sum_{j}{({u}_{j})}^{2}}}\)

La normalisation du mode propre à la norme euclidienne ‘EUCL_TRAN’ est:

\({{\Phi}_{i}}^{\mathrm{\parallel }{u}^{T}\mathrm{\parallel }}=\frac{{u}^{\text{*}}}{\mathrm{\parallel }{u}^{T}\mathrm{\parallel }}=\frac{{u}^{\text{*}}}{\sqrt{\sum_{j}{({u}_{j}^{T})}^{2}}}\)

Modes propres complexes#

Pour les modes de type mode_meca_c (modes propres complexes) issus d’une résolution d’un problème quadratique aux valeurs propres \({\lambda}^{2}M+\lambda C+K=0\)\(C\) est la matrice d’amortissement du système mécanique, on norme les modes \(\Phi\) par rapport au problème linéarisé associé:

\((\lambda \left[\begin{array}{cc}0& M\\ M& C\end{array}\right]+\left[\begin{array}{cc}-M& 0\\ 0& K\end{array}\right])(\begin{array}{c}\lambda \Phi \\ \Phi \end{array})=0\)

Le mode propre est normé à la masse généralisée unitaire (‘MASS_GENE’), si \({\Phi}_{i}\) satisfait:

\((\lambda {}^{T}\Phi _{i}{}^{T}\Phi _{i})\left[\begin{array}{cc}0& M\\ M& C\end{array}\right](\begin{array}{}\lambda {\Phi}_{i}\\ {\Phi}_{i}\end{array})=1.\)

à la rigidité généralisée unitaire (‘RIGI_GENE’), si \({\Phi}_{i}\) satisfait:

\((\lambda {}^{T}\Phi _{i}{}^{T}\Phi _{i})\left[\begin{array}{cc}-M& 0\\ 0& K\end{array}\right](\begin{array}{}\lambda {\Phi}_{i}\\ {\Phi}_{i}\end{array})=1.\)

Pour les autres normes, les définitions sont équivalentes à celles définies pour les modes réels, il suffit de remplacer le produit scalaire par le produit hermitien.

Paramètres modaux mis à jour#

Un concept de type mode_meca peut contenir, pour chaque mode, les paramètres modaux suivants (visibles par exemple en imprimant le concept avec la commande IMPR_RESU au FORMAT=”RESULTAT” avec l’option TOUT_PARA=”OUI”):

Intitulé du paramètre dans Code_Aster

Définition

FREQ

Fréquence propre (amortie, le cas échéant)

AMOR_GENE

Amortissement modal généralisé

AMOR_REDUIT

Amortissement modal réduit

FACT_PARTICI_D* (* = Xou You Z)

Facteur de participation du mode dans la direction D*

MASS_EFFE_D* (* = Xou You Z)

Masse modale effective dans la direction D*

MASS_EFFE_UN_D* (* = Xou You Z)

Masse modale effective unitaire dans la direction D*

MASS_GENE

Masse généralisée du mode

OMEGA2

Pulsation propre (amortie, le cas échéant) au carré

RIGI_GENE

Raideur généralisée du mode

Tableau 5.1: liste des paramètres modaux.

Ces paramètres sont définis mathématiquement dans la documentation de référence [R5.01.03].

L’opérateur NORM_MODE calcule ou met à jour les paramètres modaux suivants, qui dépendent de la normalisation choisie: FACT_PARTICI_D* , MASS_GENE et RIGI_GENE. Il enrichit également la structure de donnée avec les paramètres MASS_EFFE_UN_D* (indépendants de la normalisation).

Les autres paramètres sont indépendants de la normalisation.

Exemples pour des modes réels#

Pour les modes de type mode_meca (modes propres réels) issus d’une résolution d’un problème généralisé aux valeurs propres \((K-\lambda M)x=0\) :

  • normer un vecteur propre \(x\) à la rigidité généralisée unitaire équivaut à ce que \(x\) satisfasse \({x}^{T}Kx=1\)

Normalisation avec duplication du conceptmode_meca:

mo_2     = NORM_MODE(MODE = mo_1, NORME='RIGI_GENE');
  • normer un vecteur propre \(x\) à la masse généralisée unitaire équivaut à ce que \(x\) satisfasse \({x}^{T}Mx=1\)

Normalisation à la masse généralisée unitaire, avec écrasement du concept mode_meca:

mo = NORM_MODE(reuse = mo, MODE = mo, NORME = 'MASS_GENE');