elccno
C ELCCNO SOURCE PV 22/04/26 21:15:01 11344 C C > ITRNOE,NBNMAX,ITRTRI,NBCMAX, > ITVL,NITMAX, > COORD,IDIMC,NBCOOR,NBCOMX,iarr) C ***************************************************************** C OBJET ELCCNO : CALCUL LES NOEUDS MILIEU (MANQUANT) D'UN MAILLAGE C C EN ENTREE : C ---------- LE MAILLAGE A REMPLIR ----------------------- C ICODE : CODE DES ELEMENTS DE ITRNOE C ITRNOE : NOEUDS DES ELEMENTS (AVEC NOEUDS MILIEU) C IFARSN : FONCTION QUI RENVOI LES SOMMETS D'UNE ARETE (ELARSN) C IFCCPO : FONCTION QUI CALCUL LES POINTS MILIEU C ---------- LE MAILLAGE SANS NOEUDS --------------------- C ITRNOE : IDEM ITRNO2 (SANS NOEUDS MILIEU) C ITRTRI : TABLEAU DES ELEMENTS VOISINS C NBNMAX : NOMBRE DE NOEUDS D'UN ELEMENT C NBE : NOMBRE D'ELEMENTS = NBE2 C ----------TABLEAU DE TRAVAIL --------------------------- C ITVL : TABLEAU D'ENTIERS C NITMAX : TAILLE DE ITVL C ----------TABLEAU DE TRAVAIL --------------------------- C COORD : TABLEAU DES COORDONNEES C IDIMC : DIMENSION DE L'ESPACE C NBCOOR : NOMBRE DE POINTS DANS COORD C C EN SORTIE : C ITRNOE : NOEUDS DES ELEMENTS AVEC NOEUDS MILIEU C iarr : CODE D'ERREUR C ***************************************************************** IMPLICIT INTEGER(I-N) INTEGER ICODE,IDE,ITRNO2(*),NBNMX2,NBE INTEGER ITRNOE(*),NBNMAX,ITRTRI(*),NBCMAX INTEGER ITVL(*),NITMAX REAL*8 COORD(*) INTEGER IDIMC,NBCOOR,NBCOMX,iarr C C > INO INTEGER NOETRI(1),NOEMAX REAL*8 XYZ(3) INTEGER INTSO(24),INTNO(100),I,NBSOM,NBNOE INTEGER NBS C C WRITE(6,*) 'ICODE, NBSOM =',ICODE,NBSOM IF( iarr.NE.0 )THEN GOTO 9999 ENDIF C IF( iarr.NE.0 )THEN GOTO 9999 ENDIF C C WRITE(6,*) 'IDE,NBNMAX,NBARETE = ',IDE,NBNMAX,NBAR C DO 200 IEL=1,NBE C WRITE(6,*) '===========================================' C WRITE(6,*) ' ELEMENT ',IEL C WRITE(6,*) '===========================================' DO 100 INDAR=1,NBAR C C ================================= C ---- EXTRACTION DES ARETES ---- C ================================= C C ---- INDICES RELATIFS ---- C INDSO(1) = INTSO((INDAR-1)*2+1) INDSO(2) = INTSO((INDAR-1)*2+2) INDNO(I) = INTNO(INTNO(INDAR-1+I)) 5 CONTINUE C C WRITE(6,*) INDAR,' ARETE DE (S1,S2,N)', C > INDSO(1),INDSO(2),INDNO(1) C C ---- NUMERO ABSOLUS DANS ITRNO1 ------ NUMSO(1) = ITRNO2((IEL-1)*NBNMX2+INDSO(1)) NUMSO(2) = ITRNO2((IEL-1)*NBNMX2+INDSO(2)) NUMNO(1) = ITRNO2((IEL-1)*NBNMX2+INDNO(INO)) IF( NUMNO(1).EQ. 0 )THEN C ================================== C ---- CALCUL DES NOEUDS MILIEU ---- C ================================== > COORD((NUMSO(2)-1)*IDIMC+1),IDIMC, > ICODE,INDAR,INO,NBNO,XYZ,iarr) NOEMAX = 0 > NOETRI,NOEMAX,NUMNO(1),iarr) C WRITE(6,*) 'NOEUD CREE = ',NUMNO(1) NBS = 2 > ICODE,IDE,ITRNO2,NBNMX2,NBE, > ITRNOE,NBNMAX,ITRTRI,NBCMAX, > ITVL,NITMAX,iarr) C ELSE C WRITE(6,*) 'ENTRE ',NUMSO(1),NUMSO(2), C > 'LE NOEUD EXISTE DEJA ',NUMNO(1) ENDIF 10 CONTINUE 100 CONTINUE 200 CONTINUE C 9999 END
© Cast3M 2003 - Tous droits réservés.
Mentions légales