1 : C R2RAF SOURCE CHAT 06/03/29 21:31:11 5360 2 : SUBROUTINE R2RAF(ITRNOE,NBNMAX,ITRTRI,NBCMAX,NOETRI,NOEMAX, 3 : > COORD,NBN,NBE,NBPMAX,NBEMAX, 4 : > ITVL,NITMAX,RTVL,NRTMAX,iarr) 5 : C ********************************************************************** 6 : C OBJET : RAFFINE UN MAILLAGE TRIANGULAIRE 2D PAR DEFAUT 7 : C 8 : C EN ENTREE : 9 : C --------- LE MAILLAGE --------------------- 10 : C ITRNOE,NBNMAX,ITRTRI,NBCMAX,NOETRI,NOEMAX,NBN,NBE : LE MAILLAGE 11 : C COORD,IDIMC: LES COORDONNEES DES NOEUDS 12 : C NBPMAX : NOMBRE MAXIMUM DE POINTS 13 : C NBEMAX : NOMBRE MAXIMUM D'ELEMENTS 14 : C 15 : C ---- TABLEAUX DE TRAVAIL -------------------- 16 : C ITVL : SERT POUR TAJPOT 17 : C NITMAX : TAILLE DE (6*NBADET+10) (CF. TAJPOT) 18 : C RTVL : TABLEAU DE REELS POUR LES CALCULS 19 : C NRTMAX : TAILLE DE RTVL (8*NBNPMAX+244) 20 : C 21 : C EN SORTIE : LE MAILLAGE MODIFIE 22 : C NBE,NBN : LE NOMBRE DE TRIANGLES ET DE NOEUDS APRES GENERATION 23 : C iarr : CODE D'ERREUR 0 SI OK 24 : C -1 SI DONNEES INCORRECTES 25 : C -2 SI TABLEAUX INSUFFISANTS 26 : C 27 : C REMARQUES IMPORTANTES : 28 : C - LES NOEUDS CALCULES SONT AJOUTES A LA TRIANGULATION 29 : C PAR LA METHODE DE DELAUNAY (APPEL TAJPOT) 30 : C - LA GENERATION DES NOEUDS REGULARISE LES ELEMENTS : 31 : C A LA FIN : L/L -> SQRT(3) 32 : C ********************************************************************** 33 : IMPLICIT INTEGER(I-N) 34 : INTEGER NBE,NBEMAX,ITRNOE(*),NBNMAX,ITRTRI(*),NBCMAX 35 : INTEGER NOETRI(*),NOEMAX,NBN,NBPMAX 36 : REAL*8 COORD(*) 37 : INTEGER ITVL(*) 38 : REAL*8 RTVL(*) 39 : INTEGER NITMAX,NRTMAX,iarr 40 : C 41 : INTEGER NBENEW,IDIMC 42 : C elimination external TC 43 : C INTEGER D2IDEF 44 : C EXTERNAL D2IDEF 45 : REAL*8 ZERO 46 : C 47 : ZERO = 0.0D0 48 : IDIMC = 2 48 : C CALL R2ITE(D2IDEF,0,ZERO, 48 : CALL R2ITE(0,ZERO, 49 : > ITRNOE,NBNMAX,ITRTRI,NBCMAX,NOETRI,NOEMAX, 50 : > COORD,IDIMC,NBN,NBE,NBPMAX,NBEMAX, 51 : > ITVL,NITMAX,RTVL,NRTMAX,NBENEW,iarr) 52 : C 53 : 999 END 54 : 55 : 56 :
© Cast3M 2003 - All rights reserved.
Disclaimer