Download ptnorm.eso

Back to the list

   1 : C PTNORM    SOURCE    CHAT      06/03/29    21:30:43     5360           
   2 :       SUBROUTINE PTNORM(COORD,BOITE,IDIMC,NBN,ZERO,COORDN,iarr)
   3 : C     **********************************************************************
   4 : C     OBJET : NORMALISATION D'UN NUAGE DE POINTS ENTRE [-1.00:+1.00]
   5 : C     EN ENTREE   :
   6 : C         COORD  : TABLEAU DES COORDONNEES DES POINTS
   7 : C         BOITE  : BOITE D'ENCOMBREMENT
   8 : C         IDIMC   : DIMENSION DE L'ESPACE
   9 : C         NBN    : NOMBRE DE POINTS
  10 : C         ZERO   : ZERO
  11 : C     EN SORTIE   :
  12 : C         COORDN   : COORDONNEES NORMALISEES
  13 : C     **********************************************************************
  14 :       IMPLICIT INTEGER(I-N)
  15 :       REAL*8       COORD(*),BOITE(*),ZERO
  16 :       INTEGER    IDIMC, NBN
  17 :       REAL*8       COORDN(*)
  18 :       INTEGER    iarr
  19 : C
  20 :       INTEGER I,J
  21 :       REAL*8    XC(3),COEF
  22 : C
  23 :       COEF = 0.0D0
  24 :       DO 40 I=1,IDIMC
  25 :         XC(I) = (BOITE(I) + BOITE(IDIMC+I)) / 2.0D0
  26 :         COEF = MAX(COEF,(BOITE(IDIMC+I) - BOITE(I)))
  27 :    40 CONTINUE
  28 : C
  29 :       COEF = 2.0D0 / COEF
  30 : C
  31 :       DO 50 I=1,IDIMC
  32 :       IF( COEF*(BOITE(IDIMC+I) - BOITE(I)) .LE. ZERO )THEN
  33 :         iarr = -1
  34 :         GOTO 999
  35 :       ENDIF
  36 :    50 CONTINUE
  37 : C
  38 :       DO 70 I=1,NBN
  39 :         DO 60 J=1,IDIMC
  40 :           COORDN((I-1)*IDIMC+J) = (COORD((I-1)*IDIMC+J) - XC(J)) * COEF
  41 :    60   CONTINUE
  42 :    70 CONTINUE    
  43 : C   
  44 :   999 END
  45 :  
  46 :  
  47 :  

© Cast3M 2003 - All rights reserved.
Disclaimer