d4.08.03 Structure de données sd_macr_elem_dyna#
Résumé:
La structure de données sd_macr_elem_dyna contient la projection des matrices de rigidité, de masse et éventuellement d’amortissement d’une sous-structure sur une base préalablement définie.
Elle contient également la projection du chargement si on applique un chargement sur la sous-structure.
Celle structure de données est utilisée pour les calculs de sous-structuration dynamique. Le macro-élément dynamique crée peut aussi être utilisé comme super-maille dans un modèle mixte.
Table des Matières
Arborescence de la Structure de Données#
sd_macr_elem_dyna (K8) ::= record
% description de la sous-structure dynamique ♦ “.DESM” : OJB S V I ♦ “.REFM” : OJB S V K8 ♦ “.CONX” : OJB S V I ♦ “.LINO” : OJB S V I ♦ “.MAEL_DESC” : OJB S V I ♦ “.MAEL_REFE” : OJB S V K24 % description des chargements ◊ “.LICH” : OJB XC V K8 NO ◊ “.LICA” : OJB XD V R NO % rigidité projetée ♦ “.MAEL_RAID_DESC” : OJB S V I ♦ “.MAEL_RAID_REFE” : OJB S V K24 ♦ “.MAEL_RAID_VALE” : OJB S V R ou C % masse projetée ♦ “.MAEL_MASS_DESC” : OJB S V I ♦ “.MAEL_MASS_REFE” : OJB S V K24 ♦ “.MAEL_MASS_VALE” : OJB S V R % amortissement projeté ◊ “.MAEL_AMOR_DESC” : OJB S V I ◊ “.MAEL_AMOR_REFE” : OJB S V K24 ◊ “.MAEL_AMOR_VALE” : OJB S V R % inerties suivants DX, DY et DZ ◊ “.MAEL_INER_REFE” : OJB S V K24 ◊ “.MAEL_INER_VALE” : OJB S V R % numérotation des vecteurs de base ♦ “$VIDE” : sd_nume_ddl
Contenu des objets#
Objet .DESM#
'.DESM' : OJB S V I long = 10
DESM(1): 0 DESM(2): nbnstc (nombre de nœuds utilisés pour la numérotation des vecteurs de base) DESM(3): nombre de nœuds internes de la sous-structure DESM(4): nbvect (nombre de vecteurs de base) DESM(5): 0 DESM(6): 0 DESM(7): nombre de chargements DESM(8) à DESM(10): 0
Objet .REFM#
'.REFM' : OJB S V K8 long = 8
REFM(1): nom du modèle REFM(2): nom du maillage REFM(3): champ matériau REFM(4): caractéristiques élémentaires REFM(5): nom du macro-élément dynamique REFM(6): “OUI_RIGI” REFM(7): “OUI_MASS” REFM(8) : “OUI_AMOR”/”NON_AMOR”
Objet .LINO#
'.LINO' : OJB S V I long = nbnstc
Liste des numéros des noeuds utilisés pour la numérotation des vecteurs de base
Objet .CONX#
'.CONX' : OJB S V I long = 3*nbnstc
Pour i variant de 1 à nbnstc :
CONX(3*(i-1)+1): 1
CONX(3*(i-1)+2): LINO(i)
CONX(3*(i-1)+3): 0
…
Objet .MAEL_DESC#
'.MAEL_DESC' : OJB S V I long = 3
MAEL_DESC(1): nombre d'entiers codés nécessaires à la grandeur DEPL_R
MAEL_DESC(2): nombre de composantes maximales pour la grandeur DEPL_R
MAEL_DESC(3): numéro de la grandeur DEPL_R dans le catalogue des grandeurs
Objet .MAEL_REFE#
'.MAEL_REFE' : OJB S V K24 long = 2
MAEL_REFE(1): nom de la base de projection:math:`\Phi`
MAEL_REFE(2): nom du maillage
Objet .LICH#
Cet objet est créé uniquement si on applique un chargement sur la sous-structure.
'.LICH' : OJB XC V K8 NO
Cette collection contient les noms des chargements.
LICH(i) est de dimension 2.
Pour le cas de charge numéro i, on a:
LICH(i)(1) : 'NON_SUIV'
LICH(i)(2) : nom du chargement généralisé:math:`{F}_{i}`
Objet .LICA#
Cet objet est créé uniquement si on applique un chargement sur la sous-structure.
'.LICA' : OJB XD V R NO
Cette collection contient les coordonnées généralisées des chargements.
LICA(i) est de dimension 2*nbvect
Chaque objet est formé de deux segments identiques stockés bout à bout.
Dans chaque segment, on trouve les chargements généralisés ::math:`{f}_{i}={\Phi}^{T}{F}_{i}`
Objet .MAEL_RAID_DESC#
'.MAEL_RAID_DESC' : OJB S V I long = 3
MAEL_RAID_DESC(1): 2
MAEL_RAID_DESC(2): nbvect
MAEL_RAID_DESC(3): 2
Objet .MAEL_RAID_REFE#
'.MAEL_RAID_REFE' : OJB S V K24 long = 2
MAEL_RAID_REFE(1): nom de la base de projection:math:`\Phi`
MAEL_RAID_REFE(2): vide si on exploite la matrice d'impédance du sol, ou le nom de la matrice de rigidité:math:`K`à projeter
Objet .MAEL_RAID_VALE#
'.MAEL_RAID_VALE' : OJB S V R ou C long = nbvect*(nbvect+1)/2
Cette objet contient la matrice de rigidité projetée :math:`\tilde{K}={\Phi}^{T}K\Phi`
Cette matrice est symétrique, on ne stocke que le bloc triangulaire supérieur.
Objet .MAEL_MASS_DESC#
'.MAEL_MASS_DESC' : OJB S V I long = 3
MAEL_MASS_DESC(1): 2
MAEL_MASS_DESC(2): nbvect
MAEL_MASS_DESC(3): 2
Objet .MAEL_MASS_REFE#
'.MAEL_MASS_REFE' : OJB S V K24 long = 2
MAEL_MASS_REFE(1): nom de la base de projection :math:`\Phi`
MAEL_MASS_REFE(2): vide ou nom de la matrice de masse:math:`M`à projeter
Objet .MAEL_MASS_VALE#
'.MAEL_MASS_VALE' : OJB S V R long = nbvect*(nbvect+1)/2
Cette objet contient la matrice de masse projetée :math:`\tilde{M}={\Phi}^{T}M\Phi`
On ne stocke que le bloc triangulaire supérieur.
Objet .MAEL_AMOR_DESC#
'.MAEL_AMOR_DESC' : OJB S V I long = 3
MAEL_AMOR_DESC(1): 2
MAEL_AMOR_DESC(2): nbvect
MAEL_AMOR_DESC(3): 2
Objet .MAEL_AMOR_REFE#
'.MAEL_AMOR_REFE' : OJB S V K24 long = 2
MAEL_AMOR_REFE(1): nom de la base de projection:math:`\Phi`
MAEL_AMOR_REFE(2): vide ou le nom de la matrice d'amortissement:math:`C`à projeter
Objet .MAEL_AMOR_VALE#
'.MAEL_AMOR_VALE' : OJB S V R long = nbvect*(nbvect+1)/2
Cet objet contient les termes de la matrice d'amortissement projetée (triangulaire supérieure)
:math:`\tilde{C}={\Phi}^{T}C\Phi`
Si l'utilisateur fournit les amortissements généralisés associés aux modes dynamiques, les termes diagonaux de cette matrice contiennentles amortissements fournis.
Objet .MAEL_INER_REFE#
Cet objet n'est pas crée si on exploite la matrice d'impédance du sol.
'.MAEL_INER_REFE' : OJB S V K24 long = 2
MAEL_INER_REFE(1): nom de la base de projection:math:`\Phi`
MAEL_INER_REFE(2): nom de la matrice d'inertie:math:`M`utilisée pour le calcul des inerties
Objet .MAEL_INER_VALE#
Cet objet n'est pas crée si on exploite la matrice d'impédance du sol.
'.MAEL_INER_VALE' : OJB S V R long = 3*nbvect
Cet objet contient les inerties suivant les axes DX, DY et DZ
MAEL_INER_VALE(1)à MAEL_INER_VALE(nbvect): inertie suivant DX
où:MAEL_INER_VALE(i): :math:`{({L}_{x}{\Phi}_{i})}^{T}M({L}_{x}{\Phi}_{i})`
MAEL_INER_VALE(nbvect+1)à MAEL_INER_VALE(2*nbvect): inertie suivant DY
où:MAEL_INER_VALE(nbvect+i) ::math:`{({L}_{y}{\Phi}_{i})}^{T}M({L}_{y}{\Phi}_{i})`
MAEL_INER_VALE(2*nbvect+1)à MAEL_INER_VALE(3*nbvect): inertie suivant DZ
où:MAEL_INER_VALE(2*nbvect+i) ::math:`{({L}_{z}{\Phi}_{i})}^{T}M({L}_{z}{\Phi}_{i})`
:math:`{L}_{x}`désigne une matrice de localisation dont les colonnes sont composées de 1sur les ddl DXet 0ailleurs.
:math:`{L}_{y}`désigne une matrice de localisation dont les colonnes sont composées de 1sur les ddl DYet 0ailleurs.
:math:`{L}_{z}`désigne une matrice de localisation dont les colonnes sont composées de 1sur les ddl DZet 0ailleurs.
:math:`{\Phi}_{i}`désigne le i-ième vecteur de la base de projection.
Numérotation des vecteurs de base#
Une structure de données sd_nume_ddl est attachée à la structure de données sd_macr_elem_dyna. On s'y réfère pour la numérotation des vecteurs de base.