Download j3inex.eso

Back to the list

   1 : C J3INEX    SOURCE    CHAT      05/01/13    00:46:51     5004           
   2 :       SUBROUTINE J3INEX(XY,XYC,NPTO,TOL,ICOD,ISIGM,IRET)
   3 : C----------------------------------------------------
   4 : C     LE POINT XY EST-IL DANS OU HORS DU CONTOURS XYC?
   5 : C
   6 : C     ESCLAVE DE J3COTO, mais pas seulement... on le blinde
   7 : C                        en rajoutant le sur qui ne sert pas
   8 : C                        pour J3COTO
   9 : C
  10 : C                 1 on est sur
  11 : C     CODE ICOD : 0 on ne sait pas
  12 : C                -1 est a l'interieur
  13 : C                -2 est a l'exterieur
  14 : C     PP 6/97
  15 : C     Pierre Pegon/JRC Ispra
  16 : C----------------------------------------------------
  17 : C
  18 :       IMPLICIT INTEGER(I-N)
  19 :       IMPLICIT REAL*8(A-H,O-Z)
  20 : -INC CCREEL
  21 : -INC  CCOPTIO

  22 :       DIMENSION XY(2),XYC(2,NPTO)
  23 :       DIMENSION XY1(2),XY2(2)
  24 :       LOGICAL LOK
  25 : C
  26 :       ICOD=0
  27 :       THETA=0.D0
  28 : C
  29 :       DO IE1=1,NPTO
  30 :         I1=IE1
  31 :         I2=IE1+1-(IE1/NPTO)*IE1
  32 : C
  33 :         DO IE2=1,2
  34 :           XY1(IE2)=XYC(IE2,I1)-XY(IE2)
  35 :           XY2(IE2)=XYC(IE2,I2)-XY(IE2)
  36 :         ENDDO
  36 :         CALL J3ANGL(XY1,XY2,TOL,THET1,IR)
  37 : C
  38 :         IF(IR.EQ.1)THEN
  39 :           ICOD=1
  40 :           RETURN
  41 :         ENDIF
  42 : C
  43 :         THETA=THETA+THET1
  44 : C
  45 :       ENDDO
  46 : C
  47 :       IF(ABS(ABS(THETA)-2*XPI).LT.NPTO*TOL)THEN
  48 :         ICOD=-1
  49 :         ISIGM=INT(SIGN(1.D0,THETA))
  50 :       ELSEIF(ABS(THETA).LT.NPTO*TOL)THEN
  51 :         ICOD=-2
  52 :         ISIGM=0
  53 :       ELSE
  54 :         WRITE(IOIMP,*)' J3INEX: on ne peut pas etre la'
  55 :         IRET=IRET+1
  56 :       ENDIF
  57 : C
  58 :       RETURN
  59 :       END
  60 :  
  61 :  
  62 :  

© Cast3M 2003 - All rights reserved.
Disclaimer