1 : C POSPT SOURCE BP208322 12/10/03 21:15:10 7517 2 : SUBROUTINE POSPT (IPT1, POS1, IPT2, POS2) 3 : IMPLICIT INTEGER(I-N) 4 : IMPLICIT REAL*8 (A-H,O-Z) 5 : * 6 : ************************************************************************ 7 : * RECHERCHE LA POSITION DU NOEUD POS1 DE IPT1 DANS IPT2 * 8 : * _____________________________________________________________________* 9 : * * 10 : * DATE : 19 avril 1995 * 11 : * AUTEUR : Nicolas BENECH * 12 : * _____________________________________________________________________* 13 : * * 14 : * MODULE(S) APPELANT(S) : QZADRG, COPMAT * 15 : * * 16 : * MODULE(S) APPELE(S) : * 17 : * _____________________________________________________________________* 18 : * * 19 : * EN ENTREE : * 20 : * -IPT1 : maillage (actif) * 21 : * -POS1 : numero du point dans IPT1 * 22 : * -IPT2 : maillage a scruter (actif) * 23 : * _____________________________________________________________________* 24 : * * 25 : * EN SORTIE : * 26 : * -POS2 : position du noeud ou 0 s'il n'a pas ete trouve * 27 : ************************************************************************ 28 : * 29 : -INC CCOPTIO 30 : -INC SMELEME 31 : * 32 : LOGICAL TROUVE 33 : INTEGER I, LONG, POS1, POS2 34 : * 35 : * 36 : TROUVE =.FALSE. 37 : c SEGACT, IPT1 38 : POINT = IPT1.NUM(POS1,1) 39 : c SEGDES, IPT1 40 : c SEGACT, IPT2 41 : LONG = IPT2.NUM(/1) 42 : I=1 43 : 20 IF ((TROUVE) .OR. (I.GT.LONG)) GOTO 10 44 : TROUVE = (POINT.EQ.(IPT2.NUM(I,1))) 45 : I=I+1 46 : GOTO 20 47 : c SEGDES, IPT2 48 : * 49 : 10 IF (TROUVE) THEN 50 : POS2 = I-1 51 : ELSE 52 : POS2 = 0 53 : ENDIF 54 : * 55 : RETURN 56 : END 57 : 58 : 59 : 60 :
© Cast3M 2003 - All rights reserved.
Disclaimer