Télécharger j3inex.eso

Retour à la liste

Numérotation des lignes :

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

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