Numérotation des lignes :

apat67
C APAT67    SOURCE    PV        18/06/20    21:15:01     9860                 SUBROUTINE APAT67(NOET,X,XELTRI,IELEM,IARTRI,INOTRI,TLI)CC**********************************************************************CC   OBJET  : CE SOUS-PROGRAMME RECHERCHE L'APPARTENANCE D'UN POINTC   -----    A UN TRI6 OU TRI7 DE REFERENCE.CC   ARGUMENTS:C   ---------CC   ENTREE  :  IDIM   = DIMENSION DE L'ESPACEC              X      = TABLEAU DES COORDONNEES DU POINTC              XELTRI = TABLEAU DES COORDONNEES DU TRI6 OU TRI7CC   SORTIE  :  IELEM  = 0 SI LE POINT N'APPARTIENT PAS A L'ELEMENTC                     = 1 SI LE POINT APPARTIENT A L'ELEMENTC              IFACE  = 0 SI LE POINT N'APPARTIENT PAS A UNE FACEC                     = N NUMERO DE LA FACE SINONC              IARTRI = 0 SI LE POINT N'APPARTIENT PAS A UNE ARETEC                     = N NUMERO DE L'ARETE SINONC              INOTRI = 0 SI LE POINT N'APPARTIENT PAS A UN NOEUDC                     = N NUMERO DU NOEUD SINONC              TLI    COORDONNEES BARYCENTRIQUES DU POINT XCC***********************************************************************C      IMPLICIT INTEGER(I-N)      IMPLICIT REAL*8 (A-H,O-Z)      DIMENSION X(*),XELTRI(2,*),NOEMIL(4),     *          XEL3(2,3),NOESOM(3),IART(3),TLI(*)CC      DATA NOEMIL/2,4,6,7/      DATA NOESOM/1,3,5/      DATA IART/2,3,1/C      IDIM=2      IELEM=0      IARTRI=0      INOTRI=0      NOEU=3      EPS=1.D-5      UN=1.D0+EPSCC***  CONSTRUCTION DE XEL3 COORDONNEES DES NOEUDS SOMMETS DU TRI3 ELEMENC      DO 20 I=1,NOEU      I1=2*(I-1)+1      DO 10 J=1,IDIM      XEL3(J,I)=XELTRI(J,I1)   10 CONTINUE   20 CONTINUECC***  CALCUL DES COORDONNEES BARYCENTRIQUESC      CALL COBAR3(X,XEL3,TLI)CC      IF(TLI(1).LT.-EPS.OR.TLI(1).GT.UN)GO TO 9999      IF(TLI(2).LT.-EPS.OR.TLI(2).GT.UN)GO TO 9999      IF(TLI(3).LT.-EPS.OR.TLI(3).GT.UN)GO TO 9999CC***  LE POINT APPARTIENT A L'ELEMENTC      IELEM=1CC***  RECHERCHE DE L'APPARTENANCE A UNE ARETECC     WRITE(6,*)' TLI ',TLI(1),TLI(2),TLI(3)      DO 80 I=1,NOEU      IARTRI=IART(I)      VAL=ABS(TLI(I))      IF(VAL.LE.EPS) GO TO 90   80 CONTINUE      IARTRI=0      GO TO 110CC***  RECHERCHE DE L'APPARTENANCE A UN NOEUD SOMMET DE L'ARETEC   90 CONTINUE      DO 100 I=1,3      IN=I      VAL=ABS(TLI(IN)-1.)      IF(VAL.GT.EPS) GO TO 100      INOTRI=NOESOM(IN)      GO TO 9999  100 CONTINUE      INOTRI=0CC***  RECHERCHE SI C'EST LE NOEUD MILIEU DE L'ARETEC      IJ=IARTRI      VAL=ABS(TLI(IJ)-0.5)      IF(VAL.GT.EPS) GO TO 9999      INOTRI=NOEMIL((IART(IARTRI)))      GO TO 9999CC***  RECHERCHE SI C'EST LE NOEUD CENTRAL POUR TRI7C  110 IF(NOET.LT.7) GO TO 9999      UNTIER=1./3.      VAL1=ABS(TLI(1)-UNTIER)      VAL2=ABS(TLI(2)-UNTIER)      IF(VAL1.GT.EPS.OR.VAL2.GT.EPS) GO TO 9999      INOTRI=NOEMIL(4) 9999 RETURN      END   

© Cast3M 2003 - Tous droits réservés.
Mentions légales