Modulefpreviousupnextcontentsindex[BIG][Normal][small]
Suiv.: 1.14 La SD TAE Sup.: 1 Description des SD par type Préc.: 1.12 La SD NDL1 Index Table des matières


1.13 La SD NOPO

 

1.13.1 Contenu

Cette SD est l'organisation choisie pour stocker les maillages bidimensionnels ou tridimensionnels. Elle correspond à une description du maillage, élément par élément. Chaque élément est fourni via les informations suivantes :

Les arêtes et faces sont définies à partir de la liste des sommets. Seules les coordonnées des sommets sont stockées. On se reportera à la fin de cette section et on pourra consulter [Guide Modulef - 3] et [George 1990] pour de plus amples détails.

La SD NOPO est composée de six tableaux dont l'organisation est prédéfinie.

Tableau NOP0 : Informations générales.

De type entier, ce tableau possède 32 variables. Il contient une description générale du travail (titre, date, nom), de la SD NOPO (type, niveau, ...) et indique la présence ou non du tableau NOP1.

1:20 TITRE

le titre du travail en 20 mots de 4 caractères,

21:22 DATE

la date de création en 2 mots de 4 caractères,

23:28 NOMCRE

le nom du créateur en 6 mots de 4 caractères,

29 'NOPO'

le type de la SD,

30 NIVEAU

le paramètre de niveau de la SD,

31 ETAT

un paramètre réservé,

32 NTACM

le nombre de tableaux supplémentaires associés à la SD
(ils seront décrits dans le tableau NOP1).

Tableau NOP1 : Descripteur des éventuels tableaux supplémentaires.

Ce tableau est analogue au tableau B1 de la SD B (voir cette SD).

Tableau NOP2 : Description générale du maillage.

Ce tableau de type entier contient 27 valeurs.

1 NDIM

la dimension de l'espace (2 ou 3),

2 NDSR

le maximum des numéros de référence,

3 NDSD

le maximum des numéros de sous-domaine,

4 NCOPNP

le code de coïncidence des noeuds et des sommets : 1 si il y a coïncidence partout, 0 sinon,

5 NE

le nombre d'éléments du maillage,

6 NEPO

le nombre d'éléments réduits à un point,

7 NSEG

le nombre de segments,

8 NTRI

le nombre de triangles,

9 NQUA

le nombre de quadrangles,

10 NTET

le nombre de tétraèdres,

11 NPEN

le nombre de pentaèdres,

12 NHEX

le nombre d'hexaèdres,

13 NSUP

le nombre de super-éléments,

14 NEF

le nombre d'éléments frontaliers,

15 NOE

le nombre de noeuds,

16 N1

le nombre de noeuds sur un segment ou une arête (hors extrémités),

17 ISET

le nombre de noeuds internes à un triangle ou une face triangulaire,

18 ISEQ

le nombre de noeuds internes à un quadrangle ou une face quadrangulaire,

19 ISETE

le nombre de noeuds internes à un tétraèdre,

20 ISEPE

le nombre de noeuds internes à un pentaèdre,

21 ISEHE

le nombre de noeuds internes à un hexaèdre,

22 NP

le nombre de points,

23 NTYCOO

le type des valeurs des coordonnées (2 ici, cf. NOP1),

24 LPGDN

la plus grande différence entre les numéros des noeuds d'un élément +1,

25 NBEGM

le nombre de super-éléments ou de descriptions dans le tableau NOP3,

26 LNOP5

le nombre de mots du tableau NOP5,

27 NTACOO

le type des axes de coordonnées : 1 x,y,z ; 2 ; 3 .

Tableau NOP3 : Pointeur éventuel.

Si NBEGM (tableau NOP2) est non nul, ce tableau de type entier contient sur une variable une information relative à chaque super-élément ou description (ce tableau n'est pas actuellement utilisé).

Tableau NOP4 : Coordonnées des sommets.

De type NTYCOO ce tableau contient les NDIM.NP coordonnées des sommets :

X1, Y1, X2, Y2, ... ou X1, Y1, Z1, X2, ...

Tableau NOP5 : Description séquentielle des éléments.

De type entier, ce tableau décrit séquentiellement chaque élément du maillage, il contient :

Boucle i de 1 à NE

Fin de la boucle i.

Définitions relatives à un élément

Chaque élément est défini, le premier sommet étant choisi, par :

     
    Figure 1.4: Segment, triangle et quadrangle 

  1. Le segment  :

  2. Le triangle  : numérotation dans le sens direct (en dimension 2 ; dans le cas de la dimension 3, la surface n'est pas signée).

  3. Le quadrangle  : numérotation dans le sens direct (même remarque que pour le triangle)

     
    Figure: Tétraèdre, pentaèdre et hexaèdre 

  4. Le tétraèdre  : trièdre direct. ( désigne le vecteur d'origine le point i et d'extrémité le point j).

    Toute face, vue de l'extérieur, est dans le sens direct :

  5. Le pentaèdre  : trièdre direct

    Toute face, vue de l'extérieur, est dans le sens direct.

  6. L'hexaèdre  : trièdre direct

    Toute face, vue de l'extérieur, est dans le sens direct.

Remarque : A ces éléments correspondant aux formes géométriques habituelles s'ajoutent d'autres éléments développés pour traiter des problèmes spécifiques ; on peut citer, par exemple, les éléments de raccord  permettant la simulation d'une charnière  (raccord entre deux poutres , soit deux segments ; entre deux plans, soit deux quadrangles dans l'espace).

Remarque : Au fur et à mesure des besoins, de nouveaux éléments pourront apparaître. Il faudra alors les définir de manière consistante.

Outils associés

Ecriture et lecture d'une SD NOPO

Une SD, résidant en mémoire centrale, est écrite en totalité (elle est de catégorie 1) sur fichier séquentiel via le module SDECRI.

De même, une SD, résidant sur un fichier, est lue et reportée en totalité en mémoire centrale via le module SDLECT.

Impression d'une SD NOPO et dessin d'un maillage

Le contenu (total ou partiel) d'une SD NOPO peut être imprimé en utilisant les modules suivants :

      SUBROUTINE  IMNOPO(M,NFNOPO,NINOPO,IMPRE)
C BUT : IMRESSION DES TABLEAUX DE LA SD NOPO, CROISSANTE AVEC IMPRE
C ---   FICHIER NFNOPO (OU MC SI 0), NIVEAU NINOPO

      SUBROUTINE IMNOPS(M,NFNOPO,NINOPO,ISTRES,INDIC,LINDIC)
C BUT : IMRESSION DES TABLEAUX 2 ET 5 DE LA SD NOPO
C ---   FICHIER NFNOPO ( OU MC SI 0 ), NIVEAU NINOPO
C       ISTRES = 0 PAS DE NOP2, SINON IMPRESSION DE NOP2
C       INDIC(*) LES NUMEROS DES LINDIC ELEMENTS DE NOP5 A IMPRIMER

      SUBROUTINE INFONO(M,IOPT,TYPESD,NIVEAU,TAB2,TAB4,TAB5,NUMREC,
     +                  XREC,YREC,ZREC)
C BUT : DONNER DES INFORMATIONS SUR UNE SD DE MAILLAGE ( NOPO )

Les préprocesseurs IMAGXX et INFOXX permettent l'appel conversationnel de IMNOPO et INFONO respectivement.

Le maillage contenu dans un fichier peut être dessiné via le préprocesseur TRNOXX [RM 96].

Modules de création et de manipulation d'une SD NOPO

On se reportera à [Guide Modulef - 3] pour les méthodes et les modules de création et de modification de maillages.

Utilitaires de manipulation d'une SD NOPO

Il existe de nombreux utilitaires permettant de manipuler le contenu d'une SD NOPO, parmi ceux-ci, on trouve des utilitaires facilitant l'exploration du tableau NOP5.

 
      SUBROUTINE CLNOPO (M,XM,IANOP2,IANOP4,IA,NCGE,NDSDE,NNO,NONO,
     +                   NPO,NOPOI,COORP,NREF)
C BUT : LIRE LE TABLEAU NOP5  ET LE METTRE EN CLAIR (!)
C ---
C IN :
C --
C M,XM    : LE SUPER TABLEAU
C IA      : ADRESSE DU DEBUT DU TABLEAU NOP5  ( IANOP5 )
C OUT :
C ---
C MEMES MNEMONIQUES QUE DANS LA BROCHURE < DESCRIPTION DES SD >
C IA      : ACTUALISE ( DEBUT DE L'ELEMENT SUIVANT )
C COORP   : COORDONNEES DES POINTS
C NREF    : TABLEAU DES NUMEROS DE REFERENCE
C              3-D : POINTS,ARETES,FACES
C              2-D : POINTS,ARETES


      SUBROUTINE CLNOIA(NCOPNP,NOP5,IA,NCGE,IAS,IAR,IAF,NPO,NOPO)
C BUT : CLEAR LE TABLEAU NOP5 (CF. CLNOPO)
C ---
C OUT : IA, IAS, IAR, IAF, NOPO ET NPO
C ---   ADRESSES DES REFERENCES OU 0, TABLEAU DES POINTS, LEUR NOMBRE 


      SUBROUTINE CLNOIN(NCOPNP,NOP5,IA,NCGE,IAS,IAR,IAF,NPO,NNO,NONO)
C BUT : CLEAR LE TABLEAU NOP5 ( CF. CLNOPO )
C --- 
C OUT :  IA, IAS, IAR, IAF, NPO, NNO, NONO  


      SUBROUTINE CLNO5C(NDIM,NCOPNP,NOP5,IA,NCGE,NDSDE,NNO,NONO,
     +                  NPO,NOPOI,COOR4,COORP)
C BUT : LIRE NOP5 ET COOR4 ( ALIAS NOP4 )  POUR REMPLIR NONO,NOPOI,...

Les utilitaires NBSOME, NBARET et NBFACE donnent le nombre de sommets, arêtes et faces de chaque type d'élément.


Modulefpreviousupnextcontentsindex[BIG][Normal][small]
Suiv.: 1.14 La SD TAE Sup.: 1 Description des SD par type Préc.: 1.12 La SD NDL1 Index Table des matières