Suiv.: 2.3 Le module CORNOE
Sup.: 2 Interpolation
Préc.: Généralités
Index
Table des matières
Nous décrivons tout d'abord les modules COMAC2 et COMAC3, ceux-ci d'une utilisation plus facile que COMACO sont respectivement utilisés dans les cas bi et tridimensionnels.
Ce module crée à partir d'une S.D. bidimensionnelle et des bibliothèques d'éléments finis Modulef (thermique, élastique ...) les structures de données MAIL et COOR.
Ces deux structures de données décrivent un maillage mono, bi ou tridimensionnel avec des informations sur les interpolations effectuées au niveau des inconnues et de la géométrie de l'élément.
THER | Bibliothèque thermique |
ELAS | Bibliothèque élasticité |
PERS | Bibliothèque personnelle |
... |
NTYED(I) | : | nombre de types d'éléments droits contenus dans |
le Ième sous-domaine | ||
NTYEC(I) | : | nombre de types d'éléments courbes contenus dans |
le Ième sous-domaine |
L'organisation de ce tableau est donné ci-dessous :
Cette fonction est utilisé en 2D, pour décrire les lignes courbes. FFRONT définit les courbes sur lesquelles les points non sommets, non internes doivent être projetés perpendiculairement à la corde de l'axe.
On peut éviter d'écrire cette fonction, en utilisant, pour définir les lignes courbes les fonctions interprétées.
L'utilisation des fonctions interprétées permet d'éviter la phase d'édition de lien dès que l'on modifie l'équation des courbes car celles-ci sont données dans des fichiers de données.
Nous donnons maintenant les paramètres de cette fonction :
Le fichier, de numéro de support NFNOPO (> 0), contenant la structure de données NOPO , si celle-ci ne réside pas en mémoire centrale.
Le fichier, de numéro de support NFMAIL (> 0), contenant la S.D. de sortie MAIL ; si celle-ci ne réside pas en mémoire centrale.
Le fichier, de numéro de support NFCOOR (> 0), contenant la structure de données COOR.
Les bibliothèques Modulef utilisées par ce module sont :
Pour effectuer une édition de lien avec le module COMAC2,
il est nécessaire, sur certaines machines, d'ordonner le
bibliothèques de la façon suivante :
cosd - flui - elas - elcp - ther - ela2 - ela3 - magn - utsd - zzzz_mod -
[4] utii
- u_ nom de la machine,
(ceci afin de respecter les
appels des modules entre les différentes bibliothèques)
Figure: Domaine d'étude du problème
L'énoncé du problème est donné en annexe C.
Pour résoudre ce problème, on choisit une formulation variationnelle en déplacement et l'on utilise une interpolation P2-Lagrange ; on travaille donc avec l'élément fini ELAS TRIA 2P2D.
Listing du programme appelant COMAC2 {
1 PROGRAM PROG2 2 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 C TEST D'ELASTICITE DEFORMATIONS-CONTRAINTES PLANES 4 C ----------------- ELEMENT P2 5 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 C S.D.E. : NOPO 7 C 8 C S.D.S. : MAIL COOR 9 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 10 C INTERPOLATION P2 11 C ................................................................... 12 DOUBLE PRECISION DM 13 C 14 DIMENSION ICODEL(7),NOLC(1) 15 CHARACTER*72 NOMFIC,NOMBIB*4 16 LOGICAL FONINT 17 REAL FFRONT 18 INTEGER NFMAIL, NFCOOR, NFNOPO, NINOPO, NIMAIL, NICOOR, NTMAIL, 19 + NTCOOR, IMPRE, NNN, NDSD, NBSDC, NBSC, NBLC, NOLC 20 C 21 PARAMETER (LM = 45000 ) 22 EQUIVALENCE (M(1),DM) 23 COMMON M(LM) 24 EXTERNAL FFRONT 25 C 26 50 FORMAT(' -- NOM DE LA S.D.E NOPO') 27 60 FORMAT(' -- NOM DE LA S.D.S MAIL') 28 70 FORMAT(' -- NOM DE LA S.D.S COOR') 29 110 FORMAT(' ** IMPRESSION DE LA S.D. MAIL') 30 120 FORMAT(' ** IMPRESSION DE LA S.D. COOR') 31 C 32 C INITIALISATION 33 C -------------- 34 NNN = 0 35 IMPRE = 5 36 CALL INITIS(M,LM,IMPRE,NNN) 37 C 38 IMPRIM = IINFO('I') 39 C 40 C OUVERTURE DU FICHIER CONTENANT LA S.D.E. NOPO 41 C --------------------------------------------- 42 WRITE(IMPRIM,50) 43 CALL LIBCAR(NOMFIC) 44 CALL TRUNIT(NFNOPO) 45 CALL OUVRIS(NFNOPO,NOMFIC,'OLD,UNFORMATTED',0) 46 NINOPO = 1 47 C 48 C OUVERTURE DU FICHIER CONTENANT LA S.D.S. MAIL 49 C --------------------------------------------- 50 WRITE(IMPRIM,60) 51 CALL LIBCAR(NOMFIC) 52 CALL TRUNIT(NFMAIL) 53 CALL OUVRIS(NFMAIL,NOMFIC,'UNFORMATTED',0) 54 NIMAIL = 1 55 C 56 C OUVERTURE DU FICHIER CONTENANT LA S.D.S. COOR 57 C --------------------------------------------- 58 WRITE(IMPRIM,70) 59 CALL LIBCAR(NOMFIC) 60 CALL TRUNIT(NFCOOR) 61 CALL OUVRIS(NFCOOR,NOMFIC,'UNFORMATTED',0) 62 NICOOR = 1 63 64 C DESCRITION DU DOMAINE ETUDIE (PAS DE LIGNE COURBE) 65 C ------------------------------------------------- 66 C 2 SOUS-DOMAINE 67 NDSD = 2 68 NBLC = 0 69 NOLC(1) = 0 70 C 71 C NOM DE LA BIBLIOTHEQUE UTILISE (ELAS) ET DE L'E.F. (TRIA 2P2D) 72 C --------------------------------------------------------------- 73 C SUR LES DEUX SOUS-DOMAINES 74 C -------------------------- 75 NOMBIB = 'ELAS' 76 ICODEL(1) = 1 77 ICODEL(2) = ICHAR4('TRIA') 78 ICODEL(3) = ICHAR4('2P2D') 79 ICODEL(4) = 0 80 ICODEL(5) = 1 81 ICODEL(6) = ICHAR4('TRIA') 82 ICODEL(7) = ICHAR4('2P2D') 83 84 C AUCUN TABLEAU N'EST ASSOCIE AUX S.D. MAIL ET COOR 85 C ------------------------------------------------- 86 NTMAIL = 0 87 NTCOOR = 0 88 C 89 C ON N'UTILISE PAS DE FONCTIONS INTERPRETEES 90 C ------------------------------------------ 91 FONINT = .FALSE. 92 C 93 C APPEL DE COMAC2 94 C --------------- 95 CALL COMAC2(M,NDSD,NBLC,NOLC,NOMBIB,ICODEL, 96 + NFNOPO,NINOPO,NFMAIL,NIMAIL,NTMAIL, 97 + NFCOOR,NICOOR,NTCOOR,FONINT,FFRONT) 98 C 99 C IMPRESSION DES S.D. MAIL ET COOR 100 C -------------------------------- 101 WRITE(IMPRIM, 110) 102 CALL IMMAIL(M, NFMAIL, NIMAIL, IMPRE) 103 WRITE(IMPRIM, 120) 104 CALL IMCOOR(M, NFCOOR, NICOOR, IMPRE) 105 C 106 C FERMETURE DES FICHIERS CONTENANT LES S.D. 107 C ----------------------------------------- 108 CLOSE(NFNOPO) 109 CLOSE(NFCOOR) 110 CLOSE(NFMAIL) 111 END 112}
Listing d'exécution {
M M OOO DDDD U U L EEEEE FFFFF MM MM O O D D U U L E F M M M O O D D U U L EEEE FFFF M M O O D D U U L E F M M OOO DDDD UUU LLLLL EEEEE F VERSION 92 DATE : 24/02/93 AUTEUR : pate -- NOM DE LA S.D.E NOPO SD.NOPO ++ OPEN(10,FILE='SD.NOPO',SPEC='OLD,UNFORMATTED',RECL=0) -- NOM DE LA S.D.S MAIL SD.MAIL ++ OPEN(11,FILE='SD.MAIL',SPEC='UNFORMATTED',RECL=0) -- NOM DE LA S.D.S COOR SD.COOR ++ OPEN(12,FILE='SD.COOR',SPEC='UNFORMATTED',RECL=0) &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& MODULE COMACO : S.D.S. MAIL ( NFMAIL ET NIMAIL ) : 11 1 S.D.S. COOR ( NFCOOR ET NICOOR ) : 12 1 S.D.E. NOPO ( NFNOPO ET NINOPO ) : 10 1 APPEL DE LA BIBLIOTHEQUE ( IDLECA ) : 0 FIN DU MODULE COMACO &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ** IMPRESSION DE LA S.D. MAIL &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& IMPRESSION DE LA S.D. MAIL DE NIVEAU 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& TITRE : DATE ET NOM UTILISATEUR : 24/02/93 pate TYPE DE LA STRUCTURE DE DONNEES : MAIL NIVEAU ET NUMERO D'ETAT : 1 0 NOMBRE DE TABLEAUX ASSOCIES : 1 LE TABLEAU 1 : VERT DE TYPE ENTIER A 21 MOTS CONTENU DE CE TABLEAU : VERT(I+1):CONTIENT LE NOMBRE D ELEMENTS DEJA COLORIES,COULEURS 1 A I NOM : VERT TYPE : 1 VALEURS : 0 32 60 89 115 138 157 173 186 190 192 224 252 281 307 330 349 365 378 382 TABLEAU M A I 2 ---------------- DIMENSION DE L'ESPACE (NDIM) : 2 NOMBRE D'INCONNUES DE LA FORMULATION VARIATIONNELLE (NINCFV) : 2 NOMBRE DE TYPES D'ELEMENTS (NTYELM) : 1 NOMBRE DE NUMEROS DE REFERENCES (NNR) : 3 NOMBRE DE TYPES DE NOEUDS (NTYNOE) : 1 NOMBRE DE TYPES DE POINTS (NTYPOI) : 1 NOMBRE DE MOTS DU TABLEAU MAI3 (LMAI3) : 68 LES POINTS NE SONT DEFINIS QUE PAR LEURS COORDONNEES NOEUDS ET POINTS NE COINCIDENT PAS PARTOUT (NCO) : 0 NOMBRE MAXIMUM DE MOTS POUR UN ELEMENT (NMMAEL) : 25 NOMBRE DE MOTS DU TABLEAU MAIL (LMAIL) : 6445 OPTION DE STOCKAGE (NOPFI) : 0 TABLEAU M A I 3 ---------------- NOMBRE D'ELEMENTS (NE) : 384 NOMBRE DE NOEUDS (NOE) : 823 NOMBRE DE POINTS (NP) : 220 NOMBRE DE SOUS-DOMAINES (NDSD) : 2 *** TABLEAU DES TYPES D'ELEMENTS *** -------------------------------------------------------------------------------- | S-D | NOEUD | SEGMENT | TRIANGLE | QUADRANGLE | -------------------------------------------------------------------------------- | | DROIT COURBE | DROIT COURBE | DROIT COURBE | DROIT COURBE | -------------------------------------------------------------------------------- | 1 | | | | |TRIA2P2D| | | | | 2 | | | | |TRIA2P2D| | | | -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- | S-D | TETRAEDRE | PENTAEDRE | HEXAEDRE | SUPER-ELEMENT | -------------------------------------------------------------------------------- | | DROIT COURBE | DROIT COURBE | DROIT COURBE | DROIT COURBE | -------------------------------------------------------------------------------- | 1 | | | | | | | | | | 2 | | | | | | | | | -------------------------------------------------------------------------------- TABLEAUX M A I 5 A M A I 8 ------------------------------- DESCRIPTION DES TYPES DE NOEUDS NOMBRE D'INCONNUES VARIATIONNELLES DE CHAQUE TYPE DE NOEUD ---------------------------------------------------------- TYPE 1 : 2 TYPE DE NOEUD 1 : -------------------- DEPLACEMENT EN X (INCONNUE : 1) : VN DEPLACEMENT EN Y (INCONNUE : 2) : VN TABLEAUX M A I B A M A I K ------------------------------- DESCRIPTION DES TYPES D'ELEMENTS TYPE D'ELEMENT 1 : ------------------- NOM DE L'ELEMENT : ELASTRIA2P2D CODE DE L'ELEMENT : 200002 L'ELEMENT EST UN : TRIANGLE NOMBRE DE NOEUDS : 6 NOMBRE DE POINTS : 3 NOMBRE DE TABLEAUX ASSOCIES : 1 ------------------------------------------------------------------------------- | NOEUD | TYPE | COORDONNEES SUR L'ELEMENT UNITE | ------------------------------------------------------------------------------- | 1 | 1 | 0.0000000 0.0000000 | 2 | 1 | 1.000000 0.0000000 | 3 | 1 | 0.0000000 1.000000 | 4 | 1 | 0.5000000 0.0000000 | 5 | 1 | 0.5000000 0.5000000 | 6 | 1 | 0.0000000 0.5000000 ------------------------------------------------------------------------------- ------------------------------------------------------------------------------- | POINT | TYPE | COORDONNEES SUR L'ELEMENT UNITE | ------------------------------------------------------------------------------- | 1 | 1 | 0.0000000 0.0000000 | 2 | 1 | 1.000000 0.0000000 | 3 | 1 | 0.0000000 1.000000 ------------------------------------------------------------------------------- TABLEAU 1 ( TYPE ENTIER ) : 1 INDICE(S) DE VALEUR MAXI : 7 TABLEAU M A I L ---------------- DESCRIPTION DES ELEMENTS SI NOPTFI = 0 ------------------------------------------------------------------- | ELEMENT | TYPE | NBRE DE MOTS | S-D | TABLEAUX | NBRE DE NOEUDS | ------------------------------------------------------------------- | 1 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 396 382 432 385 384 399 NOMBRE DE POINTS 3 : 67 49 14 ------------------------------------------------------------------- | 2 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 103 145 152 106 147 105 NOMBRE DE POINTS 3 : 115 114 85 ------------------------------------------------------------------- | 3 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 262 250 205 252 207 206 NOMBRE DE POINTS 3 : 64 63 8 ------------------------------------------------------------------- | 4 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 40 17 41 18 19 43 NOMBRE DE POINTS 3 : 41 2 3 ------------------------------------------------------------------- | 5 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 190 144 179 149 146 178 NOMBRE DE POINTS 3 : 113 112 110 ------------------------------------------------------------------- | 6 | 1 | 7 | 1 | 1 | 6 | NUMERO DES NOEUDS : 13 5 3 6 1 2 NOMBRE DE POINTS 3 : 44 36 1 REFERENCE (ARETES SOMMETS) : 0 3 0 0 3 3 ------------------------------------------------------------------- | 7 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 230 229 288 235 234 233 NOMBRE DE POINTS 3 : 111 108 109 ------------------------------------------------------------------- | 8 | 1 | 7 | 1 | 1 | 6 | NUMERO DES NOEUDS : 121 167 118 126 120 119 NOMBRE DE POINTS 3 : 66 26 27 REFERENCE (ARETES SOMMETS) : 0 1 0 0 1 1 ------------------------------------------------------------------- | 9 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 129 87 79 88 81 80 NOMBRE DE POINTS 3 : 50 42 4 ------------------------------------------------------------------- | 10 | 1 | 0 | 1 | 0 | 6 | NUMERO DES NOEUDS : 314 274 251 273 256 255 NOMBRE DE POINTS 3 : 62 47 46 ** IMPRESSION DE LA S.D. COOR &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& IMPRESSION DE LA S.D. COOR DE NIVEAU 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& TITRE : DATE ET NOM UTILISATEUR : 24/02/93 pate TYPE DE LA STRUCTURE DE DONNEES : COOR NIVEAU ET NUMERO D'ETAT : 1 0 NOMBRE DE TABLEAUX ASSOCIES : 1 LE TABLEAU 1 : VERT DE TYPE ENTIER A 21 MOTS CONTENU DE CE TABLEAU : VERT(I+1):CONTIENT LE NOMBRE D ELEMENTS DEJA COLORIES,COULEURS 1 A I NOM : VERT TYPE : 1 VALEURS : 0 32 60 89 115 138 157 173 186 190 192 224 252 281 307 330 349 365 378 382 TABLEAU C O O 2 --------------- TYPE DU TABLEAU COO4 (NTYT) : 2 NOMBRE DE SES INDICES (NINDI) : 2 DIMENSION DU DOMAINE (NDIM) : 2 VALEUR MAXIMALE DU DEUXIEME INDICE (M2) : 220 CODE DE LA SEGMENTATION (NCODS) : 1 NOMBRE DE BLOCS (NBLOC) : 1 TYPE DES AXES DES COORDONNEES (NTACOO) : 1 TABLEAU C O O 3 --------------- LISTE DES NUMERO DES COLONNES DE FIN DES PAGES ---------------------------------------------- PAGE 1 : 220 PAGE ---------------------------------------------- TABLEAU C O O 4 --------------- ------------------------------------------------------------------------------- | POINT | X | Y | | POINT | X | Y | ------------------------------------------------------------------------------- | 1 | -2.00000 | -1.00000 | | 2 | -1.77778 | -1.00000 | | 3 | -1.55556 | -1.00000 | | 4 | -1.33333 | -1.00000 | | 5 | -1.11111 | -1.00000 | | 6 | -.888889 | -1.00000 | | 7 | -.666667 | -1.00000 | | 8 | -.444444 | -1.00000 | | 9 | -.222222 | -1.00000 | | 10 | 0.000000 | -1.00000 | --------------------------------------- ---------------------------------------} Remarque Le tableau VERT était associé à la S.D. NOPO il est maintenant associés aux deux S.D. MAIL et COOR.
Ce module crée à partir d'une S.D. tridimensionnelle et des bibliothèques d'éléments finis Modulef (thermique, élastique ...) les structures de données MAIL et COOR.
Ces deux structures de données décrivent un maillage mono, bi ou tridimensionnel avec des informations sur les interpolations effectuées au niveau des inconnues et de la géométrie de l'élément.
THER | Bibliothèque thermique |
ELAS | Bibliothèque élasticité |
PERS | Bibliothèque personnelle |
... |
NTYED(I) | : | nombre de types d'éléments droits contenus dans |
le ième sous-domaine | ||
NTYEC(I) | : | nombre de types d'éléments courbes contenus dans |
le ième sous-domaine |
L'organisation de ce tableau est donné ci-dessous :
Il remplace la fonction FFRONT qui est trop restrictive (elle décrit uniquement les lignes courbes en 2D). En effet, en 3D
Nous donnons maintenant les paramètres de ce sous-programme :
Le fichier, de numéro de support NFNOPO (> 0), contenant la structure de données NOPO , si celle-ci ne réside pas en mémoire centrale
Si NOPTFI = 1, le fichier, de numéro de support NFMAIL (> 0), contenant la S.D. de sortie MAIL ; si NOPTFI est égal à 0 la S.D. peut résider en mémoire centrale
Le fichier, de numéro de support NFCOOR (> 0), contenant la structure de données COOR NOPO , si celle-ci ne réside pas en mémoire centrale.
Les bibliothèques Modulef utilisées par ce module sont :
Pour effectuer une édition de lien avec le module COMAC3,
il est nécessaire, sur certaines machines, d'ordonner le
bibliothèques de la façon suivante :
cosd - flui - elas - elcp - ther - ela2 - ela3 - magn - utsd - zzzz_mod -
[4] utii
- u_ nom de la machine,
(ceci afin de respecter les
appels des modules entre les différentes bibliothèques)
Si NTMAIL (respectivement NTCOOR) est non nul on lira NTMAIL (NTCOOR) tableaux sur des cartes de
données.
Pour I de 1 à NTMAIL (NTCOOR),
Figure 2.5: Maillage tridimensionnel
Les fichiers de données permettant de réaliser le maillage sont donnés en annexe B.
Le domaine est constitué de deux surfaces courbes (les surfaces portants les références 3 et 4) ; lors de l'interpolation géométrique on ne considère qu'une seule surface courbe (numéro 3). On utilise l'élément fini courbe HEXA 3Q2C.
Lors de l'appel de COMAC3, il est nécessaire d'indiquer (cf.
paragraphe 2.1.4)
qu'il y a un type d'élément fini droit HEXA 3Q2C et un type
d'élément fini courbe HEXA 3Q2C, car tous les éléments ne
s'appuient pas sur
une surface courbe.
La figure 2.6 représente le domaine après l'interpolation.
Figure: Interpolation Q2 - Lagrange isoparamétrique - 1 surface courbe
Listing du programme appelant COMAC3 et de la procédure CALFC :
{
1 PROGRAM PROG3 2 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 C TEST D'ELASTICITE DEFORMATIONS-CONTRAINTES PLANES 4 C ----------------- ELEMENT P2 5 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 C S.D.E. : NOPO 7 C 8 C S.D.S. : MAIL COOR 9 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 10 C INTERPOLATION P2 11 C ................................................................... 12 DOUBLE PRECISION DM 13 C 14 DIMENSION ICODEL(7), NOSDC(1) , NONSC(1) , NONFC(1) 15 CHARACTER*72 NOMFIC, NOMBIB*4 16 LOGICAL FONINT 17 REAL FFRONT 18 INTEGER NFMAIL, NFCOOR, NFNOPO, NINOPO, NIMAIL, NICOOR, NTMAIL, 19 + NTCOOR, IMPRE, NNN, NDSD, NBSDC, NOSDC, NBNSC, NONSC, 20 + NBNFC, NONFC 21 22 C 23 PARAMETER (LM = 200000 ) 24 EQUIVALENCE (M(1),DM) 25 COMMON M(LM) 26 EXTERNAL FFRONT 27 C 28 50 FORMAT(' -- NOM DE LA S.D.E NOPO') 29 60 FORMAT(' -- NOM DE LA S.D.S MAIL') 30 70 FORMAT(' -- NOM DE LA S.D.S COOR') 31 110 FORMAT(' ** IMPRESSION DE LA S.D. MAIL') 32 120 FORMAT(' ** IMPRESSION DE LA S.D. COOR') 33 C 34 C INITIALISATION 35 C -------------- 36 NNN = 0 37 IMPRE = 3 38 CALL INITIS(M,LM,IMPRE,NNN) 39 C 40 IMPRIM = IINFO('I') 41 C 42 C OUVERTURE DU FICHIER CONTENANT LA S.D.E. NOPO 43 C --------------------------------------------- 44 WRITE(IMPRIM,50) 45 CALL LIBCAR(NOMFIC) 46 CALL TRUNIT(NFNOPO) 47 CALL OUVRIS(NFNOPO,NOMFIC,'OLD,UNFORMATTED',0) 48 NINOPO = 1 49 C 50 C OUVERTURE DU FICHIER CONTENANT LA S.D.S. MAIL 51 C --------------------------------------------- 52 WRITE(IMPRIM,60) 53 CALL LIBCAR(NOMFIC) 54 CALL TRUNIT(NFMAIL) 55 CALL OUVRIS(NFMAIL,NOMFIC,'UNFORMATTED',0) 56 NIMAIL = 1 57 C 58 C OUVERTURE DU FICHIER CONTENANT LA S.D.S. COOR 59 C --------------------------------------------- 60 WRITE(IMPRIM,70) 61 CALL LIBCAR(NOMFIC) 62 CALL TRUNIT(NFCOOR) 63 CALL OUVRIS(NFCOOR,NOMFIC,'UNFORMATTED',0) 64 NICOOR = 1 65 66 C DESCRITION DU DOMAINE ETUDIE (PAS DE LIGNE COURBE) 67 C -------------------------------------------------- 68 NDSD = 1 69 C SOUS-DOMAINE COURBE 70 NBSDC = 0 71 C SURFACE COURBE 72 NBNSC = 1 73 NONSC(1) = 3 74 C FRONTIERE (LIGNE) COURBE 75 NBNFC = 0 76 C 77 C NOM DE LA BIBLIOTHEQUE UTILISE (ELAS) ET DE L'E.F. (TRIA 2P2D) 78 C --------------------------------------------------------------- 79 NOMBIB = 'THER' 80 ICODEL(1) = 1 81 ICODEL(2) = ICHAR4('HEXA') 82 ICODEL(3) = ICHAR4('3Q2C') 83 ICODEL(4) = 1 84 ICODEL(5) = ICHAR4('HEXA') 85 ICODEL(6) = ICHAR4('3Q2C') 86 87 C AUCUN TABLEAU N'EST ASSOCIE AUX S.D. MAIL ET COOR 88 C ------------------------------------------------- 89 NTMAIL = 0 90 NTCOOR = 0 91 C 92 C ON N'UTILISE PAS DE FONCTIONS INTERPRETEES 93 C ------------------------------------------ 94 FONINT = .FALSE. 95 C 96 C APPEL DE COMAC3 97 C --------------- 98 CALL COMAC3(M,NDSD,NBSDC,NOSDC,NBNSC,NONSC,NBNFC,NONFC, 99 + NOMBIB,ICODEL,NFNOPO,NINOPO,NFMAIL,NIMAIL,NTMAIL, 100 + NFCOOR,NICOOR,NTCOOR,FONINT,FFRONT) 101 C 102 C IMPRESSION DES S.D. MAIL ET COOR 103 C -------------------------------- 104 WRITE(IMPRIM, 110) 105 CALL IMMAIL(M, NFMAIL, NIMAIL, IMPRE) 106 WRITE(IMPRIM, 120) 107 CALL IMCOOR(M, NFCOOR, NICOOR, IMPRE) 108 C 109 C FERMETURE DES FICHIERS CONTENANT LES S.D. 110 C ----------------------------------------- 111 CLOSE(NFNOPO) 112 CLOSE(NFCOOR) 113 CLOSE(NFMAIL) 114 END 115 116 C-------------------------------------------------------------------- 117 C C 118 C SOUS PROGRAMME CALFC C 119 C C 120 C-------------------------------------------------------------------- 121 SUBROUTINE CALFC(I,X,Y,Z,F) 122 INTEGER I, IMPRIM, IINFO 123 REAL X, Y, Z, F 124 DIMENSION F(*) 125 C 126 100 FORMAT('LA REFERENCE ',I6,' NE CORRESPOND PAS A', 127 + 'UNE FRONTIERE COURBE') 128 C 129 IMPRIM = IINFO('I') 130 IF (I .EQ. 3 ) THEN 131 C EQUATION DE LA COURBE 3 132 F(1) = X**2+Y**2-2.05**2 133 ELSE 134 C SORTIE EN ERREUR, PAS D'AUTRES COURBES QUE 3 135 WRITE(IMPRIM,100) I 136 CALL ARRET(10) 137 ENDIF 138 END 139}
Listing d'exécution :
{
M M OOO DDDD U U L EEEEE FFFFF MM MM O O D D U U L E F M M M O O D D U U L EEEE FFFF M M O O D D U U L E F M M OOO DDDD UUU LLLLL EEEEE F VERSION 92 DATE : 24/02/93 AUTEUR : pate -- NOM DE LA S.D.E NOPO UP.NOPO3D1 ++ OPEN(10,FILE='UP.NOPO3D1',SPEC='OLD,UNFORMATTED',RECL=0) -- NOM DE LA S.D.S MAIL UP.MAIL ++ OPEN(11,FILE='UP.MAIL',SPEC='UNFORMATTED',RECL=0) -- NOM DE LA S.D.S COOR UP.COOR ++ OPEN(12,FILE='UP.COOR',SPEC='UNFORMATTED',RECL=0) &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& MODULE COMACO : S.D.S. MAIL ( NFMAIL ET NIMAIL ) : 11 1 S.D.S. COOR ( NFCOOR ET NICOOR ) : 12 1 S.D.E. NOPO ( NFNOPO ET NINOPO ) : 10 1 APPEL DE LA BIBLIOTHEQUE ( IDLECA ) : 0 FIN DU MODULE COMACO &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ** IMPRESSION DE LA S.D. MAIL &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& IMPRESSION DE LA S.D. MAIL DE NIVEAU 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& TITRE : DATE ET NOM UTILISATEUR : 24/02/93 pate TYPE DE LA STRUCTURE DE DONNEES : MAIL NIVEAU ET NUMERO D'ETAT : 1 0 NOMBRE DE TABLEAUX ASSOCIES : 2 LE TABLEAU 1 : CF03 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 3 LE TABLEAU 2 : CF04 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 4 TABLEAU M A I 2 ---------------- DIMENSION DE L'ESPACE (NDIM) : 3 NOMBRE D'INCONNUES DE LA FORMULATION VARIATIONNELLE (NINCFV) : 1 NOMBRE DE TYPES D'ELEMENTS (NTYELM) : 1 NOMBRE DE NUMEROS DE REFERENCES (NNR) : 4 NOMBRE DE TYPES DE NOEUDS (NTYNOE) : 1 NOMBRE DE TYPES DE POINTS (NTYPOI) : 1 NOMBRE DE MOTS DU TABLEAU MAI3 (LMAI3) : 36 LES POINTS NE SONT DEFINIS QUE PAR LEURS COORDONNEES NOEUDS ET POINTS COINCIDENT PARTOUT (NCOPNP) : 1 NOMBRE MAXIMUM DE MOTS POUR UN ELEMENT (NMMAEL) : 55 NOMBRE DE MOTS DU TABLEAU MAIL (LMAIL) : 528 OPTION DE STOCKAGE (NOPFI) : 0 TABLEAU M A I 3 ---------------- NOMBRE D'ELEMENTS (NE) : 12 NOMBRE DE NOEUDS (NOE) : 122 NOMBRE DE POINTS (NP) : 122 NOMBRE DE SOUS-DOMAINES (NDSD) : 1 *** TABLEAU DES TYPES D'ELEMENTS *** -------------------------------------------------------------------------------- | S-D | NOEUD | SEGMENT | TRIANGLE | QUADRANGLE | -------------------------------------------------------------------------------- | | DROIT COURBE | DROIT COURBE | DROIT COURBE | DROIT COURBE | -------------------------------------------------------------------------------- | 1 | | | | | | | | | -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- | S-D | TETRAEDRE | PENTAEDRE | HEXAEDRE | SUPER-ELEMENT | -------------------------------------------------------------------------------- | | DROIT COURBE | DROIT COURBE | DROIT COURBE | DROIT COURBE | -------------------------------------------------------------------------------- | 1 | | | | |HEXA3Q2C|HEXA3Q2C| | | -------------------------------------------------------------------------------- TABLEAUX M A I 5 A M A I 8 ------------------------------- DESCRIPTION DES TYPES DE NOEUDS NOMBRE D'INCONNUES VARIATIONNELLES DE CHAQUE TYPE DE NOEUD ---------------------------------------------------------- TYPE 1 : 1 TYPE DE NOEUD 1 : -------------------- TEMPERATURE (INCONNUE : 1) : VN TABLEAUX M A I B A M A I K ------------------------------- DESCRIPTION DES TYPES D'ELEMENTS TYPE D'ELEMENT 1 : ------------------- NOM DE L'ELEMENT : THERHEXA3Q2C CODE DE L'ELEMENT : 100018 L'ELEMENT EST UN : HEXAEDRE NOMBRE DE NOEUDS : 20 NOMBRE DE POINTS : 20 NOMBRE DE TABLEAUX ASSOCIES : 1 ------------------------------------------------------------------------------- | NOEUD | TYPE | COORDONNEES SUR L'ELEMENT UNITE | ------------------------------------------------------------------------------- | 1 | 1 | 0.0000000 0.0000000 0.0000000 | | 2 | 1 | 1.000000 0.0000000 0.0000000 | | 3 | 1 | 1.000000 1.000000 0.0000000 | | 4 | 1 | 0.0000000 1.000000 0.0000000 | | 5 | 1 | 0.0000000 0.0000000 1.000000 | | 6 | 1 | 1.000000 0.0000000 1.000000 | | 7 | 1 | 1.000000 1.000000 1.000000 | | 8 | 1 | 0.0000000 1.000000 1.000000 | | 9 | 1 | 0.5000000 0.0000000 0.0000000 | | 10 | 1 | 1.000000 0.5000000 0.0000000 | | 11 | 1 | 0.5000000 1.000000 0.0000000 | | 12 | 1 | 0.0000000 0.5000000 0.0000000 | | 13 | 1 | 0.0000000 0.0000000 0.5000000 | | 14 | 1 | 1.000000 0.0000000 0.5000000 | | 15 | 1 | 1.000000 1.000000 0.5000000 | | 16 | 1 | 0.0000000 1.000000 0.5000000 | | 17 | 1 | 0.5000000 0.0000000 1.000000 | | 18 | 1 | 1.000000 0.5000000 1.000000 | | 19 | 1 | 0.5000000 1.000000 1.000000 | | 20 | 1 | 0.0000000 0.5000000 1.000000 | ------------------------------------------------------------------------------- ------------------------------------------------------------------------------- | POINT | TYPE | COORDONNEES SUR L'ELEMENT UNITE | ------------------------------------------------------------------------------- | 1 | 1 | 0.0000000 0.0000000 0.0000000 | | 2 | 1 | 1.000000 0.0000000 0.0000000 | | 3 | 1 | 1.000000 1.000000 0.0000000 | | 4 | 1 | 0.0000000 1.000000 0.0000000 | | 5 | 1 | 0.0000000 0.0000000 1.000000 | | 6 | 1 | 1.000000 0.0000000 1.000000 | | 7 | 1 | 1.000000 1.000000 1.000000 | | 8 | 1 | 0.0000000 1.000000 1.000000 | | 9 | 1 | 0.5000000 0.0000000 0.0000000 | | 10 | 1 | 1.000000 0.5000000 0.0000000 | | 11 | 1 | 0.5000000 1.000000 0.0000000 | | 12 | 1 | 0.0000000 0.5000000 0.0000000 | | 13 | 1 | 0.0000000 0.0000000 0.5000000 | | 14 | 1 | 1.000000 0.0000000 0.5000000 | | 15 | 1 | 1.000000 1.000000 0.5000000 | | 16 | 1 | 0.0000000 1.000000 0.5000000 | | 17 | 1 | 0.5000000 0.0000000 1.000000 | | 18 | 1 | 1.000000 0.5000000 1.000000 | | 19 | 1 | 0.5000000 1.000000 1.000000 | | 20 | 1 | 0.0000000 0.5000000 1.000000 | ------------------------------------------------------------------------------- TABLEAU 1 ( TYPE ENTIER ) : 1 INDICE(S) DE VALEUR MAXI : 27 ** IMPRESSION DE LA S.D. COOR &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& IMPRESSION DE LA S.D. COOR DE NIVEAU 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& TITRE : DATE ET NOM UTILISATEUR : 24/02/93 pate TYPE DE LA STRUCTURE DE DONNEES : COOR NIVEAU ET NUMERO D'ETAT : 1 0 NOMBRE DE TABLEAUX ASSOCIES : 2 LE TABLEAU 1 : CF03 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 3 LE TABLEAU 2 : CF04 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 4 TABLEAU C O O 2 --------------- TYPE DU TABLEAU COO4 (NTYT) : 2 NOMBRE DE SES INDICES (NINDI) : 2 DIMENSION DU DOMAINE (NDIM) : 3 VALEUR MAXIMALE DU DEUXIEME INDICE (M2) : 122 CODE DE LA SEGMENTATION (NCODS) : 1 NOMBRE DE BLOCS (NBLOC) : 1 TYPE DES AXES DES COORDONNEES (NTACOO) : 1 TABLEAU C O O 3 --------------- LISTE DES NUMERO DES COLONNES DE FIN DES PAGES ---------------------------------------------- PAGE 1 : 122 PAGE ----------------------------------------------}
Ce module crée à partir
Ces deux structures de données décrivent un maillage mono, bi ou tridimensionnel avec des informations sur les interpolations effectuées au niveau des inconnues et de la géométrie de l'élément (élément droit ou courbe).
THER | Bibliothèque thermique |
ELAS | Bibliothèque élasticité |
PERS | Bibliothèque personnelle |
... |
Ce nom est donné par un entier, on traduit la chaîne de 4 caractères en entier à l'aide de la fonction ICHAR4.
NTYED(I) | : | nombre de types d'éléments droits contenus dans |
le i-ème sous-domaine | ||
NTYEC(I) | : | nombre de types d'éléments courbes contenus dans |
le i-ème sous-domaine |
L'organisation de ce tableau est donné ci-dessous :
Cette fonction est utilisé, en 2D, pour décrire les lignes courbes. FFRONT définit les courbes sur lesquelles les points non sommets, non internes doivent être projetés perpendiculairement à la corde de l'axe.
On peut éviter d'écrire cette fonction, en utilisant, pour définir les lignes courbes les fonctions interprétées.
L'utilisation des fonctions interprétées permet d'éviter la phase d'édition de lien dès que l'on modifie l'équation des courbes car celles-ci sont données dans des fichiers de données.
Nous donnons maintenant les paramètres de cette fonction :
Nous donnons maintenant les paramètres de ce sous-programme :
Le fichier, de numéro de support NFNOPO (> 0), contenant la structure de données NOPO , si celle-ci ne réside pas en mémoire centrale
Si NOPTFI = 1, le fichier, de numéro de support NFMAIL (> 0), contenant la S.D. de sortie MAIL ; si NOPTFI est égal à 0 cette S.D. peut résider en mémoire centrale
Le fichier, de numéro de support NFCOOR (> 0), contenant la structure de données COOR NOPO , si celle-ci ne réside pas en mémoire centrale.
Les bibliothèques Modulef utilisées par ce module sont :
Pour effectuer une édition de lien avec le module COMACO,
il est nécessaire, sur certaines machines, d'ordonner le
bibliothèques de la façon suivante :
cosd - flui - elas - elcp - ther - ela2 - ela3 - magn - utsd - zzzz_mod -
[4] utii
- u_ nom de la machine,
(ceci afin de respecter les
appels des modules entre les différentes bibliothèques)
Si NTMAIL (respectivement NTCOOR) est non nul on lira NTMAIL (NTCOOR) tableaux sur des cartes de
données.
Pour I de 1 à NTMAIL (NTCOOR),
Le domaine est constitué de deux surfaces courbes (les surfaces
portants les références 3 et 4), lors de l'interpolation
géométrique on considère ces deux surfaces courbes
(numéro 3 et 4), tout le domaine sera interpolé par un élément fini
courbe
HEXA 3Q2C.
Lors de l'appel de COMACO, il est nécessaire d'indiquer (cf.
paragraphe 2.1.4)
qu'il y a un type d'élément fini droit HEXA 3Q2C et un type
d'élément fini courbe HEXA 3Q2C, car tous les éléments ne
s'appuient pas sur
une surface courbe.
La figure 2.7 représente le domaine après l'interpolation.
Figure: Interpolation Q2 - Lagrange isoparamétrique - 2 surfaces courbes
Listing du programme appelant COMACO et du sous-programme CALFC : {
1 PROGRAM PROGO 2 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 C TEST D'ELASTICITE DEFORMATIONS-CONTRAINTES PLANES 4 C ----------------- ELEMENT P2 5 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6 C S.D.E. : NOPO 7 C 8 C S.D.S. : MAIL COOR 9 C +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 10 C INTERPOLATION P2 11 C ................................................................... 12 DOUBLE PRECISION DM 13 C 14 DIMENSION ICODEL(7), NOSDC(1) , NONSC(2) , NONFC(1) 15 CHARACTER*72 NOMFIC 16 LOGICAL FONINT 17 REAL FFRONT 18 INTEGER NFMAIL, NFCOOR, NFNOPO, NINOPO, NIMAIL, NICOOR, NTMAIL, 19 + NTCOOR, IMPRE, NNN, NDSD, NBSDC, NOSDC, NBNSC, NONSC, 20 + NBNFC, NONFC,NOMBIB, ICHAR4, IINFO 21 22 C 23 PARAMETER (LM = 200000 ) 24 EQUIVALENCE (M(1),DM) 25 COMMON M(LM) 26 EXTERNAL FFRONT 27 C 28 50 FORMAT(' -- NOM DE LA S.D.E NOPO') 29 60 FORMAT(' -- NOM DE LA S.D.S MAIL') 30 70 FORMAT(' -- NOM DE LA S.D.S COOR') 31 110 FORMAT(' ** IMPRESSION DE LA S.D. MAIL') 32 120 FORMAT(' ** IMPRESSION DE LA S.D. COOR') 33 C 34 C INITIALISATION 35 C -------------- 36 NNN = 0 37 IMPRE = 3 38 CALL INITIS(M,LM,IMPRE,NNN) 39 C 40 IMPRIM = IINFO('I') 41 NPACD = 0 42 C 43 C DIMENSIONNEMENT DU DOMAINE D'ETUDE (3D) 44 C --------------------------------------- 45 NDIM = 3 46 C 47 C LE DOMAINE EST DECRIT A L'AODE DE LA S.D. NOPO 48 C ---------------------------------------------- 49 NOPOEX = 1 50 C 51 C OUVERTURE DU FICHIER CONTENANT LA S.D.E. NOPO 52 C --------------------------------------------- 53 WRITE(IMPRIM,50) 54 CALL LIBCAR(NOMFIC) 55 CALL TRUNIT(NFNOPO) 56 CALL OUVRIS(NFNOPO,NOMFIC,'OLD,UNFORMATTED',0) 57 NINOPO = 1 58 C 59 C OUVERTURE DU FICHIER CONTENANT LA S.D.S. MAIL 60 WRITE(IMPRIM,60) 61 CALL LIBCAR(NOMFIC) 62 CALL TRUNIT(NFMAIL) 63 CALL OUVRIS(NFMAIL,NOMFIC,'UNFORMATTED',0) 64 NIMAIL = 1 65 C 66 C LE TABLEAU MAIL DE LA S.D MAIL CORRESPOND A UN SEUL ENREGISTREMENT 67 C ------------------------------------------------------------------ 68 NOPTFI = 0 69 C 70 C OUVERTURE DU FICHIER CONTENANT LA S.D.S. COOR 71 C ---------------------------------------------- 72 WRITE(IMPRIM,70) 73 CALL LIBCAR(NOMFIC) 74 CALL TRUNIT(NFCOOR) 75 CALL OUVRIS(NFCOOR,NOMFIC,'UNFORMATTED',0) 76 NICOOR = 1 77 C 78 C LE TABLEAU COO4 DE LA S.D. COOR NE SERA PS PAGINE 79 C ------------------------------------------------- 80 NDCSMC = IINFO('GRAND') 81 82 C DESCRITION DU DOMAINE ETUDIE (PAS DE LIGNE COURBE) 83 C -------------------------------------------------- 84 NDSD = 1 85 C 86 C NOMBRE DE REFERENCE 87 C ------------------- 88 NNR = 2 89 C 90 C SOUS-DOMAINE COURBE 91 C ------------------- 92 NBSDC = 0 93 C 94 C SURFACE COURBE 95 C -------------- 96 NBNSC = 2 97 NONSC(1) = 3 98 NONSC(2) = 4 99 C 100 C FRONTIERE (LIGNE) COURBE 101 C ------------------------ 102 NBNFC = 0 103 C 104 C ON FAIT APPEL A UNE BIBLIOTHEQUE D'ELEMENT 105 C ------------------------------------------ 106 IELECA = 0 107 C 108 C NOM DE LA BIBLIOTHEQUE UTILISE (ELAS) ET DE L'E.F. (TRIA 2P2D) 109 C --------------------------------------------------------------- 110 NOMBIB = ICHAR4('THER') 111 ICODEL(1) = 1 112 ICODEL(2) = ICHAR4('HEXA') 113 ICODEL(3) = ICHAR4('3Q2C') 114 ICODEL(4) = 1 115 ICODEL(5) = ICHAR4('HEXA') 116 ICODEL(6) = ICHAR4('3Q2C') 117 C 118 C AUCUN TABLEAU N'EST ASSOCIE AUX S.D. MAIL ET COOR 119 C ------------------------------------------------- 120 NTMAIL = 0 121 NTCOOR = 0 122 C 123 C ON N'UTILISE PAS DE FONCTIONS INTERPRETEES 124 C ------------------------------------------ 125 FONINT = .FALSE. 126 C 127 C APPEL DE COMACO 128 C --------------- 129 CALL COMACO(M,NDIM,NDSD,NBSDC,NOSDC,NNR,NBNSC,NONSC,NBNFC, 130 + NONFC,IELECA,NOMBIB,ICODEL,NOPOEX,NFNOPO, 131 + NINOPO,NFMAIL,NIMAIL,NTMAIL,NOPTFI,NFCOOR, 132 + NICOOR,NTCOOR,NPACD,NDCSMC,FONINT,FFRONT) 133 C 134 C IMPRESSION DES S.D. MAIL ET COOR 135 C -------------------------------- 136 WRITE(IMPRIM, 110) 137 CALL IMMAIL(M, NFMAIL, NIMAIL, IMPRE) 138 WRITE(IMPRIM, 120) 139 CALL IMCOOR(M, NFCOOR, NICOOR, IMPRE) 140 C 141 C FERMETURE DES FICHIERS CONTENANT LES S.D. 142 C ----------------------------------------- 143 CLOSE(NFNOPO) 144 CLOSE(NFCOOR) 145 CLOSE(NFMAIL) 146 END 147 148 C-------------------------------------------------------------------- 149 C C 150 C SOUS PROGRAMME CALFC C 151 C C 152 C-------------------------------------------------------------------- 153 SUBROUTINE CALFC(I,X,Y,Z,F) 154 INTEGER I, IMPRIM, IINFO 155 REAL X, Y, Z, F 156 DIMENSION F(*) 157 C 158 100 FORMAT('LA REFERENCE ',I6,' NE CORRESPOND PAS A', 159 + 'UNE FRONTIERE COURBE') 160 C 161 IMPRIM = IINFO('I') 162 IF (I .EQ. 3 ) THEN 163 C EQUATION DE LA COURBE 3 164 F(1) = X**2+Y**2-2.05**2 165 ELSEIF (I .EQ. 4 ) THEN 166 C EQUATION DE LA COURBE 4 167 F(1) = X**2+Y**2-0.85**2 168 ELSE 169 C SORTIE EN ERREUR, PAS D'AUTRES COURBES QUE 3 ET 4 170 WRITE(IMPRIM,100) I 171 CALL ARRET(10) 172 ENDIF 173 END 174}
Listing d'exécution {
M M OOO DDDD U U L EEEEE FFFFF MM MM O O D D U U L E F M M M O O D D U U L EEEE FFFF M M O O D D U U L E F M M OOO DDDD UUU LLLLL EEEEE F VERSION 92 DATE : 24/02/93 AUTEUR : pate -- NOM DE LA S.D.E NOPO ++ OPEN(10,FILE='UP.NOPO3D1',SPEC='OLD,UNFORMATTED',RECL=0) UP.NOPO3D1 -- NOM DE LA S.D.S MAIL ++ OPEN(11,FILE='UP.MAIL',SPEC='UNFORMATTED',RECL=0) UP.MAIL -- NOM DE LA S.D.S COOR UP.COOR ++ OPEN(12,FILE='UP.COOR',SPEC='UNFORMATTED',RECL=0) &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& MODULE COMACO : S.D.S. MAIL ( NFMAIL ET NIMAIL ) : 11 1 S.D.S. COOR ( NFCOOR ET NICOOR ) : 12 1 S.D.E. NOPO ( NFNOPO ET NINOPO ) : 10 1 APPEL DE LA BIBLIOTHEQUE ( IDLECA ) : 0 FIN DU MODULE COMACO &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& ** IMPRESSION DE LA S.D. MAIL &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& IMPRESSION DE LA S.D. MAIL DE NIVEAU 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& TITRE : DATE ET NOM UTILISATEUR : 24/02/93 pate TYPE DE LA STRUCTURE DE DONNEES : MAIL NIVEAU ET NUMERO D'ETAT : 1 0 NOMBRE DE TABLEAUX ASSOCIES : 2 LE TABLEAU 1 : CF03 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 3 LE TABLEAU 2 : CF04 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 4 TABLEAU M A I 2 ---------------- DIMENSION DE L'ESPACE (NDIM) : 3 NOMBRE D'INCONNUES DE LA FORMULATION VARIATIONNELLE (NINCFV) : 1 NOMBRE DE TYPES D'ELEMENTS (NTYELM) : 1 NOMBRE DE NUMEROS DE REFERENCES (NNR) : 4 NOMBRE DE TYPES DE NOEUDS (NTYNOE) : 1 NOMBRE DE TYPES DE POINTS (NTYPOI) : 1 NOMBRE DE MOTS DU TABLEAU MAI3 (LMAI3) : 36 LES POINTS NE SONT DEFINIS QUE PAR LEURS COORDONNEES NOEUDS ET POINTS COINCIDENT PARTOUT (NCOPNP) : 1 NOMBRE MAXIMUM DE MOTS POUR UN ELEMENT (NMMAEL) : 55 NOMBRE DE MOTS DU TABLEAU MAIL (LMAIL) : 528 OPTION DE STOCKAGE (NOPFI) : 0 TABLEAU M A I 3 ---------------- NOMBRE D'ELEMENTS (NE) : 12 NOMBRE DE NOEUDS (NOE) : 122 NOMBRE DE POINTS (NP) : 122 NOMBRE DE SOUS-DOMAINES (NDSD) : 1 *** TABLEAU DES TYPES D'ELEMENTS *** -------------------------------------------------------------------------------- | S-D | NOEUD | SEGMENT | TRIANGLE | QUADRANGLE | -------------------------------------------------------------------------------- | | DROIT COURBE | DROIT COURBE | DROIT COURBE | DROIT COURBE | -------------------------------------------------------------------------------- | 1 | | | | | | | | | -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- | S-D | TETRAEDRE | PENTAEDRE | HEXAEDRE | SUPER-ELEMENT | -------------------------------------------------------------------------------- | | DROIT COURBE | DROIT COURBE | DROIT COURBE | DROIT COURBE | -------------------------------------------------------------------------------- | 1 | | | | |HEXA3Q2C|HEXA3Q2C| | | -------------------------------------------------------------------------------- TABLEAUX M A I 5 A M A I 8 ------------------------------- DESCRIPTION DES TYPES DE NOEUDS NOMBRE D'INCONNUES VARIATIONNELLES DE CHAQUE TYPE DE NOEUD ---------------------------------------------------------- TYPE 1 : 1 TYPE DE NOEUD 1 : -------------------- TEMPERATURE (INCONNUE : 1) : VN TABLEAUX M A I B A M A I K ------------------------------- DESCRIPTION DES TYPES D'ELEMENTS TYPE D'ELEMENT 1 : ------------------- NOM DE L'ELEMENT : THERHEXA3Q2C CODE DE L'ELEMENT : 100018 L'ELEMENT EST UN : HEXAEDRE NOMBRE DE NOEUDS : 20 NOMBRE DE POINTS : 20 NOMBRE DE TABLEAUX ASSOCIES : 1 ------------------------------------------------------------------------------- | NOEUD | TYPE | COORDONNEES SUR L'ELEMENT UNITE | ------------------------------------------------------------------------------- | 1 | 1 | 0.0000000 0.0000000 0.0000000 | | 2 | 1 | 1.000000 0.0000000 0.0000000 | | 3 | 1 | 1.000000 1.000000 0.0000000 | | 4 | 1 | 0.0000000 1.000000 0.0000000 | | 5 | 1 | 0.0000000 0.0000000 1.000000 | | 6 | 1 | 1.000000 0.0000000 1.000000 | | 7 | 1 | 1.000000 1.000000 1.000000 | | 8 | 1 | 0.0000000 1.000000 1.000000 | | 9 | 1 | 0.5000000 0.0000000 0.0000000 | | 10 | 1 | 1.000000 0.5000000 0.0000000 | | 11 | 1 | 0.5000000 1.000000 0.0000000 | | 12 | 1 | 0.0000000 0.5000000 0.0000000 | | 13 | 1 | 0.0000000 0.0000000 0.5000000 | | 14 | 1 | 1.000000 0.0000000 0.5000000 | | 15 | 1 | 1.000000 1.000000 0.5000000 | | 16 | 1 | 0.0000000 1.000000 0.5000000 | | 17 | 1 | 0.5000000 0.0000000 1.000000 | | 18 | 1 | 1.000000 0.5000000 1.000000 | | 19 | 1 | 0.5000000 1.000000 1.000000 | | 20 | 1 | 0.0000000 0.5000000 1.000000 | ------------------------------------------------------------------------------- ------------------------------------------------------------------------------- | POINT | TYPE | COORDONNEES SUR L'ELEMENT UNITE | ------------------------------------------------------------------------------- | 1 | 1 | 0.0000000 0.0000000 0.0000000 | | 2 | 1 | 1.000000 0.0000000 0.0000000 | | 3 | 1 | 1.000000 1.000000 0.0000000 | | 4 | 1 | 0.0000000 1.000000 0.0000000 | | 5 | 1 | 0.0000000 0.0000000 1.000000 | | 6 | 1 | 1.000000 0.0000000 1.000000 | | 7 | 1 | 1.000000 1.000000 1.000000 | | 8 | 1 | 0.0000000 1.000000 1.000000 | | 9 | 1 | 0.5000000 0.0000000 0.0000000 | | 10 | 1 | 1.000000 0.5000000 0.0000000 | | 11 | 1 | 0.5000000 1.000000 0.0000000 | | 12 | 1 | 0.0000000 0.5000000 0.0000000 | | 13 | 1 | 0.0000000 0.0000000 0.5000000 | | 14 | 1 | 1.000000 0.0000000 0.5000000 | | 15 | 1 | 1.000000 1.000000 0.5000000 | | 16 | 1 | 0.0000000 1.000000 0.5000000 | | 17 | 1 | 0.5000000 0.0000000 1.000000 | | 18 | 1 | 1.000000 0.5000000 1.000000 | | 19 | 1 | 0.5000000 1.000000 1.000000 | | 20 | 1 | 0.0000000 0.5000000 1.000000 | ------------------------------------------------------------------------------- TABLEAU 1 ( TYPE ENTIER ) : 1 INDICE(S) DE VALEUR MAXI : 27 ** IMPRESSION DE LA S.D. COOR &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& IMPRESSION DE LA S.D. COOR DE NIVEAU 1 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& TITRE : DATE ET NOM UTILISATEUR : 24/02/93 pate TYPE DE LA STRUCTURE DE DONNEES : COOR NIVEAU ET NUMERO D'ETAT : 1 0 NOMBRE DE TABLEAUX ASSOCIES : 2 LE TABLEAU 1 : CF03 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 3 LE TABLEAU 2 : CF04 DE TYPE CARACTER A 12 MOTS CONTENU DE CE TABLEAU : COURBE ASSOCIEE : 4 TABLEAU C O O 2 --------------- TYPE DU TABLEAU COO4 (NTYT) : 2 NOMBRE DE SES INDICES (NINDI) : 2 DIMENSION DU DOMAINE (NDIM) : 3 VALEUR MAXIMALE DU DEUXIEME INDICE (M2) : 122 CODE DE LA SEGMENTATION (NCODS) : 1 NOMBRE DE BLOCS (NBLOC) : 1 TYPE DES AXES DES COORDONNEES (NTACOO) : 1 TABLEAU C O O 3 --------------- LISTE DES NUMERO DES COLONNES DE FIN DES PAGES ---------------------------------------------- PAGE 1 : 122 PAGE ----------------------------------------------}