u4.90.01 Macro-commande CALC_ESSAI#
Syntaxe#
Détail de la syntaxe
/ matr_asse_depl_r
/ macr_elem_stat
/ mode_gene
/ modele
/ maillage
/ nume_ddl
/ interspectre
/ mode_meca = CALC_ESSAI(
◇ RESU_IDENTIFICATION = _F(
◇ TABLE = co,
),
◇ RESU_MODIFSTRU = _F(
◇ MODELE = co,
◇ MODE_MECA = co,
◇ MAILLAGE = co,
◇ NUME_DDL = co,
◇ MASS_MECA = co,
◇ RIGI_MECA = co,
◇ AMOR_MECA = co,
◇ MACR_ELEM = co,
◇ PROJ_MESU = co,
◇ BASE_ES = co,
◇ BASE_LMME = co,
◇ MODE_STA = co,
),
◇ EXPANSION = _F(
◆ CALCUL = mode_meca,
◇ NUME_MODE_CALCUL = int,
◆ MESURE = mode_meca,
◇ NUME_MODE_MESURE = int,
◇ RESOLUTION = / "SVD" (par défaut),
/ "LU",
# Si: equal_to("RESOLUTION", 'SVD')
◇ EPS = float,
),
◇ IDENTIFICATION = _F(
◇ ALPHA = float,
◇ EPS = float,
◆ OBSERVABILITE = mode_meca,
◆ COMMANDABILITE = mode_meca,
◆ INTE_SPEC = interspectre,
◆ BASE = mode_meca,
),
◇ MODIFSTRUCT = _F(
◆ MESURE = mode_meca,
◆ MODELE_SUP = modele,
◆ MATR_RIGI = matr_asse_depl_r,
◇ RESOLUTION = / "ES" (par défaut),
/ "LMME",
# Si: equal_to("RESOLUTION", 'LMME')
◆ MATR_MASS = matr_asse_depl_r,
◆ NUME_MODE_MESU = int,
◆ NUME_MODE_CALCUL = int,
◆ MODELE_MODIF = modele,
),
# Si: exists("MODIFSTRUCT")
◇ GROUP_NO_CAPTEURS = _F(
◆ GROUP_NO = grno,
◆ NOM_CMP = text,
),
◇ GROUP_NO_EXTERIEUR = _F(
◆ GROUP_NO = grno,
◆ NOM_CMP = text,
),
)
◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles
Introduction#
Objectifs de la commande#
La macro-commande CALC_ESSAI permet de réaliser des calculs d’identification à partir de données mesurées: expansion de données expérimentales sur modèle numérique, identification d’efforts, et modification structurale.
Utilisation de l’expansion modale (EXPANSION)#
Le mode d’utilisation de cette option n’est pas très pertinent, il est surtout utile pour la validation. Il est préférable, si l’on souhaite effectuer une expansion modale, d’utiliser directement la commande MACRO_EXPANS, ou l’enchaînement PROJ_MESU_MODAL, REST_GENE_PHYS et PROJ_CHAMP.
Mots-clés MESURE et NUME_MODE_MESURE#
♦ MESURE = mesure,
Concept sd_resultat de type mode_meca ou dyna_harmo qui contient les modes à étendre sur le modèle numérique.
♦ NUME_MODE_MESURE = L_I,
Permet de sélectionner les numéros d’ordre des modes que l’on souhaite étendre.
Mot-clé CALCUL#
♦ CALCUL = calcul,
Concept sd_resultat de type mode_meca qui sera la base d’expansion. Le choix de la base d’expansion est important pour la qualité des résultats.
♦ NUME_MODE_CALCUL = L_I,
Permet de sélectionner les numéros d’ordre des modes que l’on souhaite utiliser dans la base d’expansion. Il est plus intéressant de ne garder que les modes qui « ressemblent » aux déformées à étendre, le critère de ressemblance pouvant être obtenu par calcul de MAC.
Mots-clés RESOLUTIONetEPS#
L’expansion consiste en la résolution d’un problème inverse pour la détermination des coefficients généralisés PROJ_MESU_MODAL. Les méthodes d’inversion et coefficients de régularisation sont détaillés dans la documentation utilisateur de cet opérateur (cf [U4.73.01]).
Modification structurale (MODIFSTRUCT)#
Cette technique de modification structurale est basée sur la méthode de sous-structuration. La première sous-structure correspond à la structure initiale et la deuxième sous-structure correspond à la modification apportée.
La structure initiale est modélisée à partir des modes propres identifiés expérimentalement. La deuxième sous-structure est modélisée numériquement par éléments finis. Sauf cas très particulier, les points de mesure ne se situent pas au niveau de l’interface entre la structure initiale et la modification. Il est donc nécessaire de passer par une étape intermédiaire qui consiste à effectuer une expansion de la mesure sur les degrés de liberté interface. Cette expansion se fait via le modèle numérique support. Les paragraphes suivants décrivent les mots-clés nécessaire dans CALC_ESSAI pour cette fonctionnalité.
Plus de détails sur la méthode et sur les principes de mise en œuvre dans Code_Aster sont donnés dans la documentation U2.07.03.
♦ MESURE = mesure [mode_meca]
mesure est le nom du concept qui contient les modes propres identifiés.
♦ MODELE_SUP = modele [modele]
Nom du modèle support sur lequel est construite la base d’expansion.
♦ MODELE_MODIF = modele [modele]
Nom du modèle de la modification apportée à la structure initiale.
♦ MATR_RIGI = matrice, [matr_asse]
Matrice de rigidité définie sur le modèle support, nécessaire pour le calcul des modes statiques.
♦ RESOLUTION = /’ES’, [DEFAUT]
/”LMME”
Ce mot-clé permet de choisir la méthode utilisée pour le calcul de la base d’expansion. ES correspond à l’expansion statique et LMME correspond à «Local Model Modeshapes Expansion».
♦ NUME_MODE_MESU = L_I, [l_I]
Ce mot-clé permet de sélectionner les numéros des modes à exploiter parmi les modes propres identifiés. Par défaut, on prend en compte tous les modes propres du concept mesure.
♦ NUME_MODE_CALCUL = L_I, [l_I]
Ce mot-clé permet de sélectionner les numéros des modes à utiliser parmi les vecteurs de la base d’expansion. Par défaut, on prend en compte tous les vecteurs de la base d’expansion.
◊ GROUP_NO_CAPTEURS = _F( ♦ GROUP_NO = gr_no, [mode_meca]
♦ NOM_CMP = nom_cmp, [matr_asse]
Ce mot-clé facteur permet de sélectionner la liste des groupes de nœuds qui vont être utilisés pour le calcul des modes statiques associés aux points de mesure. Ces groupes de nœuds sont définis sur le modèle support.
◊ GROUP_NO_EXTERIEUR = _F ( ♦ GROUP_NO = gr_no, [mode_meca]
♦ NOM_CMP = nom_cmp, [matr_asse]
Ce mot-clé facteur permet de définir les groupes de nœuds «externes» où seront condensées les informations mesurées. Ces groupes de nœuds doivent contenir au minimum l’interface entre le modèle support et le modèle de la modification.
Les concepts produits#
L’utilisateur peut spécifier les noms des concepts produits par l’interface en renseignant le mot-clé facteur RESU_MODIFSTRU. Ces concepts pourront ensuite être utilisés pour des calculs ultérieurs.
◊ MODE_MECA = mode, [mode_meca]
mode sera le nom du concept qui contient les modes propres de la structure modifiée.
◊ MODELE = modele, [modele]
modele sera le nom associé au modèle de la structure modifiée.
◊ MAILLAGE = maillage, [maillage]
maillage sera le nom du maillage associé à la structure modifiée.
◊ NUME_DDL= nume, [nume_ddl]
nume sera le nom du concept nume_ddl associé à la structure modifiée.
◊ MASS_MECA = masse, [matr_asse]
masse sera le nom du concept qui contient la matrice de masse assemblée de la structure modifiée.
◊ RIGI_MECA = raid, [matr_asse]
raid sera le nom du concept qui contient la matrice de rigidité assemblée de la structure modifiée.
◊ AMOR_MECA = amor, [matr_asse]
amor sera le nom du concept qui contient la matrice d’amortissement assemblée de la structure modifiée.
◊ MACR_ELEM = macrel, [macr_elem_stat]
macrel sera le nom du concept qui contient le macro-élément où est condensée la mesure.
◊ PROJ_MESU = proj, [mode_gene]
proj sera le nom du concept qui contient les coordonnées généralisées des modes identifiés relatives à la base d’expansion.
◊ BASE_LMME = balmme, [mode_meca]
balmme sera le nom de la base d’expansion issue de la méthode LMME.
◊ BASE_ES = baes, [mode_meca]
baes sera le nom de la base d’expansion issue de l’expansion statique (méthode ES).
◊ MODE_STAT = modest, [mode_stat_force]
modest sera le nom du concept qui contient les modes statiques associés aux points de mesure.
Identification d’efforts localisés a priori (IDENTIFICATION)#
Mot clé INTE_SPEC#
♦ INTE_SPEC = intsp
Inter-spectre qui sera utilisé en tant que déplacements, pour retrouver les efforts associés.
Mots clés OBSERVABILITE et COMMANDABILITE#
♦ OBSERVABILITE = observ
♦ COMMANDABILITE = command
Concept de type mode_meca. Correspondent respectivement aux objets \(C\Phi\) et \({\Phi}^{T}B\) décrits dans la section 6.4 . On peut soit choisir un mode_meca brut, soit le fabriquer avec l’opérateur OBSERVATION (U4.90.03).
Mots-clés ALPHA et EPS#
♦ ALPHA = reel
♦ EPS = reel
Paramètres de régularisation. Plus de détails section 6.5 .
Rappel des principes théoriques#
L’identification des efforts suppose que l’on peut décomposer le mouvement de la structure étudiée sur base modale:
\(y(\omega )=\left[C\Phi \right].{\left[Z(\omega )\right]}^{-1.}\left[{\Phi}^{T}B\right].f(\omega )\)
Dans les équations suivantes, on omettra la dépendance par rapport à \(\omega\) . \(\Phi\) est une base de déformées modales associée à la structure étudiée. En théorie, il s’agit de la base des déformées continues. En pratique, on utilise en général une base définie sur un modèle numérique avec une discrétisation relativement fine. Cette base peut être calculée numériquement, ou être le résultat d’une expansion modale. L’opérateur \(C\) permet de projeter cette base de déformées sur le sous-espace des degrés de liberté observables.
L’opérateur \(B\) permet de projeter la base de déformées sur un ensemble de degrés de liberté appelés actionneurs: on trouve ici une des hypothèses fondamentales de l’identification: les efforts identifiés sontlocalisés sur des degrés de liberté déclarés a priori par l’utilisateur, comme on l’a fait pour déclarer les degrés de liberté de mesure (utilisation de l’opérateur OBSERVATION). L’objectif est de diminuer au maximum le nombre d’inconnues à déterminer, ce qui permet d’éviter les problèmes de sous-détermination du problème.
Identifier les efforts revient à inverser le système ci-dessus:
NB: la base \(\Phi\) peut être différente à droite et à gauche de \(Z\) : c’est le cas lorsque les mesures disponibles sont des déformations. L’équation reliant l’effort à la mesure s’écrit alors :
\(f={\left[{\Phi}^{T}B\right]}^{-1.}\left[Z\right].{\left[C\Psi \right]}^{-1.}\epsilon\) ( 8-2)
où la matrice \(\Psi\) est la donnée des modes en déformation. Attention cependant: écrire cette dernière équation est un abus de langage, car le passage des déplacements aux déformations devrait normalement s’écrire dans l’opérateur de projection (qui, rappelons-le, est linéaire dans le cas de petites déformations), et non en remplaçant \(\Phi\) par \(\Psi\) . Mais en pratique, on importe souvent une base de modes \(\Psi\) directement depuis les logiciels de mesure.
Les concepts à utiliser#
Observabilité et commandabilité:
Le calcul de \(\left[C\Phi \right]\) se fait dans le cadre «Définition du concept d’observabilité», dans lequel on donne la base de modes \(\Phi\) , et un modèle expérimental qu contient les degrés de liberté sur lesquels on la projette. On choisit dans les degrés de liberté du modèle expérimental (regroupés par groupes de noeud et de maille) les degrés de liberté correspondant à la mesure. On peut ainsi ne choisir qu’une seule direction si on a utilisé durant la mesure des capteurs mono-axiaux. Il est par ailleurs possible d’effectuer un changement de repère. Pour plus de détail, se reporter à la documentation de l’opérateur OBSERVATION (U4.90.03).
Il est important que les nœuds les composantes déclarées dans l’inter-spectre soient cohérentes avec les degrés de liberté du concept d’observabilité . Dans le cas où l’inter-spectre est lu par LIRE_INTE_SPEC (FORMAT = ‘IDEAS’), les nœuds sont définis en en-tête de chaque dataset; la table alors créée par cet opérateur garde les notations de ce fichier.
Le calcul de \(\left[{\Phi}^{T}B\right]\) se fait dans le cadre «Définition du concept de commandabilité». Le choix des degrés de liberté et les changements de repères potentiels se font selon la même règle.
Chaque onglet possède un bouton de choix de base, ce qui permet, comme pour l’équation 8-2, d’utiliser deux bases différentes.
Régularisation:
L’inversion de la fonction de transfert se fait en deux étapes:
inversion de \(\left[C\Phi \right].{\left[Z\right]}^{-1}\) , qui permet de calculer les efforts modaux,
inversion de \(\left[{\Phi}^{T}B\right]\) , qui permet de calculer les efforts sur base physique.
Ces deux étapes se font par SVD (SVD de LinearAlgebra, module de python, qui fait appel à une librairie lapack_lite, dans le paquet numpy). Il est possible de régulariser l’inversion de trois manières:
troncature de la SVD (paramètre \(\varepsilon\) ),
régularisation de Tikhonov (paramètre \(\alpha\) ),
contrôle de la pente: il est possible de multiplier le paramètre \(\alpha\) par \({(\omega -{\omega}_{i})}^{m}\) , où \({\omega}_{i}\) est la pulsation propre du mode et \(m\) un paramètre à déterminer; cela permet d contrôler la pente de la courbe obtenue pour les hautes fréquences, lorsque le signal mesuré est fortement bruité en HF.