d4.06.30 Structuresde données sd_corresp_2_mailla et sd_ l _corresp_2_mailla#

Résumé :

Table des matières

Arborescence#

   sd_corresp_2_mailla (K16)        ::= record

soit nno2 le nombre de nœuds du maillage M2
(o)     '.PJXX_K1'    :    OJB        S    V    K24 dim=5

(o)     '.$VIDE'     :    / sd_corresp2_elem

/ sd_corresp2_nuage

sd_corresp_2_elem (K16) ::= record

soit nno2 le nombre de nœuds du maillage M2

(o)    '.PJEF_NB'    :    OJB        S    V    I        dim=nno2

“.PJEF_M1” : OJB S V I dim=nno2 “.PJEF_CF” : OJB S V R dim=3*nno2 “.PJEF_CO” : OJB S V R “.PJEF_NU” : OJB S V I

  1. “.PJEF_TR” : OJB S V I dim=nno2

“.PJEF_AM” : OJB S V I dim=nno2

% si METHODE=”ECLA_PG” :

  1. “.PJEF_MP” : OJB S V K8 dim=1

“.PJEF_EL” : OJB S V I

% si METHODE=”SOUS_POINT_MATER” :

“.PJEF_SP” : OJB S V I

sd_corresp_2_nuage (K16) ::= record

  1. “.PJNG_I1” : OJB S V I

“.PJNG_I2” : OJB S V I

Contenu des objets JEVEUX#

“.PJXX_K1”

'.PJXX_K1' (1)     : nom du maillage 1 : M1

'.PJXX_K1' (2)     : nom du maillage 2 : M2

'.PJXX_K1' (3)    : méthode de projection : 'COLLOCATION'/'NUAGE_DEG_0'/'NUAGE_DEG_1'

'.PJXX_K1' (4)     : nom d'un cham_no "modèle" (si méthode='NUAGE_DEG_0/1')

'.PJXX_K1' (5)     : inutilisé

“.PJEF_M1”

'.PJEF_M1'(ino2) : ima1 : numéro de la maille de m1 qui doit

servir à l'interpolation du nœud ino2 de m2

“.PJEF_NB”

'.PJEF_NB' (ino2): nombre de nœuds de ima1

“.PJEF_CO”

'.PJEF_CO' (3*(ino2-1)+1) : "ksi" de ino2 dans ima1

'.PJEF_CO' (3*(ino2-1)+2) : "eta" de ino2 dans ima1

'.PJEF_CO' (3*(ino2-1)+3) : "dzeta" de ino2 dans ima1

Remarques :

pjef_co ne sert que pour les liaisons 3d/coque et 3d/poutre

Les mailles SEG n’utilisent que ksi ,

Les TRIA et QUAD n’utilisent que ksi et eta

“.PJEF_NU”

'.PJEF_NU' : contient les numéros des nœuds de m1servant à l'interpolation des nœuds de                m2 (mis bout à bout)

“.PJEF_CF”

'.PJEF_CF' : contient les coefficients pour les nœuds de m1servant a l'interpolation des

nœuds de m2 (mis bout a bout)

“.PJEF_TR” et “.PJEF_AM”

Les objets .PJEF_TR et PJEF_AMn’existent que dans les corresp_2_maillatemporaires faites de TR3 (TR3 = SEG2, TRIA3 ou TETRA4)


'.PJEF_TR' (ino2) : numéro du TR3 associé au nœud ino2


'.PJEF_AM' (ino2) :

1 -> le nœud ino2 est inclus dans une maille de m1 on peut alors utiliser la routine reereg.f pour améliorer la précision de l’interpolation. 0 -> sinon

“.PJEF_MP” et “.PJEF_EL”

   Les objets .PJEF_MP et PJEF_ELn’existent que pour METHODE = 'ECLA_PG'


   '.PJEF_MP' :

   (1) : nom du maillage 1 «prime»


   '.PJEF_EL' : long >= 2*nb_PG(modèle «2»)

   Pour chaque point de Gauss du modèle «2», on stocke :

   V(2*(ipg-1)+1) = ima2 : numéro de la maille contenant ipg

   V(2*(ipg-1)+2) = kpg : numéro du point de Gauss dans ima2

**'** **.PJEF_SP'**
L' objet .PJEF_SPn’existe que pour METHODE = 'SOUS_POINT_MATER'.


'.PJEF_SP' : long = 3*nb_SP_MAT(modèle «2»)

Pour chaque sous-point et chaque point de la liste de famille MATER du modèle «2», on stocke :

V(3*(ispma-1)+1) = ima2 : numéro de la maille

V(3*(ispma-1)+2) = kpg : numéro du point de Gauss

V(3*(ispma-1)+3) = sspg : numéro du sous-point

“.PJNG_I1” et “.PJNG_I2”

Ces 2 vecteurs d’entiers stockent les numéros des nœuds en correspondance via le mot clé facteur VIS_A_VIS.

Soit NOCC le nombre d’occurrences de VIS_A_VIS :


'.PJNG_I1' (1): NOCC

'.PJNG_I1' (2): nb1:nombre de nœuds de MA1 pour l'occurrence 1 de VIS_A_VIS

'.PJNG_I1' (3): nb2:nombre de nœuds de MA1 pour l'occurrence 2 de VIS_A_VIS

...

'.PJNG_I1' (1+NOCC) : nbnocc

'.PJNG_I1' (1+NOCC+1, ..., 1+NOCC+nb1) : numéros des nœuds de MA1 pour             l'occurrence 1 de VIS_A_VIS

...

Remarques :

Si le mot clé VIS_A_VIS n’est pas utilisé : .PJNG_I1(1)=0

L’objet .PJNG_I2 a la même organisation que .PJNG_I1 , mais il renseigne sur les nœuds

du maillage MA2.

Exemple d’utilisation (méthode “COLLOCATION”)#

On veut savoir comment interpoler INO2 à partir du maillage M1

soit nbno1='.PJEF_NB'(INO2)

soit decal= somme pour ino<INO2 de '.PJEF_NB'(ino)

valeur(INO2)=0

do i=1,nbno1

nuno1='.PJEF_NU' (decal+i)

coefr='.PJEF_CF' (decal+i)

valeur(INO2)=valeur(INO2)+coefr*valeur(nuno1)

enddo