d4.08.02 Structure de données sd_interf_dyna_clas#

Résumé:

On décrit ici la structure de données produite par la commande DEFI_INTERF_DYNA.

Elle définit les interfaces associées à un macro-élément donné.

Un macro-élément peut comporter plusieurs interfaces.

Table des Matières

Arborescence de la Structure de Données#

sd_interf_dyna_clas(K8)


♦‘.IDC_DDAC’ : OJB XD V I NUM() VARI


♦‘.IDC_DEFO’ : OJB S V I


♦‘.IDC_DESC’ : OJB S V I LONG=5


♦‘.IDC_LINO’ : OJB XD V I NUM() VARI


♦‘.IDC_NOMS’ : OJB S N K8


♦‘.IDC_REFE’ : OJB S V K24 LONG=3


♦‘.IDC_TYPE’ : OJB S V K8


♦‘.IDC_DY_FREQ’ : OJB S V R LONG=1

Contenu des objets JEVEUX#

Généralités#

Une sd_interf_dyna_clascontient une ou plusieurs interfaces (nb_intf) nommées.

Chaque interface contient un ou plusieurs nœuds. Chaque nœud d’interface porte un certain nombre de ddls (composantes de la grandeur DEPL_R). Pour chaque nœud d’interface, l’utilisateur choisit un sous-ensemble des ddls portés par ce nœud : ce sont les ddls “actifs” du nœud.

Pour chaque ddl actif de la sd_interf_dyna_clas, on calculera (plus tard dans DEFI_BASE_MODALE) une déformée statique.

On s’intéresse à la grandeur DEPL_R.

Objet .IDC_REFE#

‘.IDC_REFE’: S V K24 LONG = 3

V(1)

Nom de la sd_maillage

V(2)

Nom de la sd_nume_ddl

V(3)

vide

Objet .IDC_DESC#

‘.IDC_DESC’: S V I LONG = 5

V(1)

1

V(2)

Nombre d’entiers codés nécessaires à la grandeur DEPL_R(nbec)

V(3)

Nombre de composantes maximales pour la grandeur DEPL_R

V(4)

Numéro de la grandeur DEPL_Rdans le catalogue des grandeurs

V(5)

Nombre de déformées statiques à calculer (nb_def)

Objet .IDC_NOMS#

‘.IDC_NOMS’: S N K8 LONG = nb_intf

C’est le pointeur de noms donnant la correspondance numéro de l’interface ↔ nom de l’interface

V(i): nom de l’interface numéro i

Objet .IDC_TYPE#

‘.IDC_TYPE’: S V K8 LONG = nb_intf

V(1 à nb_intf): type de l’interface (‘CRAIGB’, ‘MNEAL’, ‘CB_HARMO’ ou ‘AUCUN‘)

Objet .IDC_LINO#

‘.IDC_LINO’: XD V I NUM() VARI NB_OBJ = nb_intf

Cette collection comporte un nombre d’éléments égal aux nombres d’interface ( nb_intf).

Soit Vle ièmeobjet de la collection

Va pour dimension le nombre de nœuds de l’interface numéro i (nbno).

V(1 à nbno): numéro (dans le maillage) des nœuds de l’interface numéro i

Objet .IDC_DDAC#

‘.IDC_DDAC’: XD V I NUM() VARI NB_OBJ = nb_intf

Cette collection comporte un nombre d’éléments égal aux nombres d’interface (nb_intf)

Soit Vle ièmeobjet de la collection.

Va pour dimension le nombre de nœuds de l’interface numéro i (nbno) multipliés par le nombre d’entier codés nécessaires à la description de la grandeur DEPL_R(nbec).

V(1 à nbno*nbec): liste des entiers codés décrivant les ddls actifs de l’interface numéro i

Objet .IDC_DY_FREQ#

‘.IDC_DY_FREQ’: S V R LONG = 1

V(1): Valeur de la fréquence utilisée pour le calcul des modes contraints harmoniques

Objet .IDC_DEFO#

‘.IDC_DEFO’: S V I LONG = (2+nbec)*nbnot

Cet objet décrit les (nbnot) nœuds de la sd_interf_dyna_claset leurs ddls actifs. Il décrit aussi la numérotation des déformées statiques (que l’on calculera plus tard) associées aux ddls actifs de la sd_interf_dyna_clas.

Le nombre de nœuds de la sd_interf_dyna_clas(nbnot) est éventuellement inférieur à la somme des nombres de nœuds des différentes interfaces composant la sd_interf_dyna_clascar les interfaces d’un même type (‘CRAIGB’, …) peuvent avoir des nœuds en commun (qui seront alors “fusionnés” dans la sd_interf_dyna_clas).

Chaque nœud de la sd_interf_dyna_clasa un type ‘MNEAL’, ‘CRAIGB’, ‘CB_HARMO’, ‘AUCUN‘.

Les nœuds de la sd_interf_dyna_classont regroupés par paquets de même type. Ces nœuds sont rangés dans l’ordre : ‘MNEAL’, ‘CRAIGB’, ‘CB_HARMO’, ‘AUCUN‘.

Soit nmn, ncb, ncbh, nau: les nombres de nœuds de la sd_interf_dyna_clasde types : ‘MNEAL’, ‘CRAIGB’, ‘CB_HARMO’, ‘AUCUN‘.

Soit : nbnot = nmn + ncb + ncbh + nau

Le vecteur .IDC_DEFOest formé de 3 “blocs” :

Les numéros (dans le maillage) des nœuds :

V(ino): numéro du inoèmenœud de la sd_interf_dyna_clas

Les numéros des 1èresdéformées portées par chaque nœud :

V(nbnot+ino): numéro de la 1èredéformée du inopinément de la sd_interf_dyna_clas

Ce bloc de données est très peu utilisé dans le code. On s’en sert (temporairement) dans la commande DEFI_INTERF_DYNA qui crée la SD. Une fois la SD créée, le contenu définitif de ce bloc n’est utilisé que dans la routine bmnodi.f(REST_GENE_PHYS, MODE_ITER_CYCL)

Les entiers codés décrivant les ddls actifs des nœuds :

V(2*nbnot+ nbec*(ino-1): 2*nbnot+ nbec*(ino)): entiers codés décrivant les ddls actifs du inoèmenoeud de la sd_interf_dyna_clas