nharmo
C NHARMO SOURCE CB215821 20/11/25 13:34:49 10792 *------------------------------------------------------------------------ * cette routine sert à determiner le nombre d'harmonique distinctes * dans deux champ par points * elle sert à la multiplication de deux champ par points * * les deux champ par points en entrée sont actifs * *------------------------------------------------------------------------ IMPLICIT INTEGER(I-N) IMPLICIT REAL*8(A-H,O-Z) -INC SMCHPOI * ce segment contient les numéro des différents harmoniques trouvées * et l'inversion du tableau SEGMENT NUMHAR(NHAR) SEGMENT IHARNUM(NVARH) * ce tableau contient les pointeurs des deux champ point DIMENSION ICHP(2) * * * MCHPO1 = IPOI1 ICHP(1)= IPOI1 MCHPO2 = IPOI2 ICHP(2)= IPOI2 NHAR = 1 NMAX = -100000 NMIN = +100000 SEGINI NUMHAR * boucle sur les deux champ points DO 300 K=1,2 MCHPO1 = ICHP(K) * boucle sur les sous zones DO 200 I=1,MCHPO1.IPCHP(/1) NSUM = 0 MSOUPO = MCHPO1.IPCHP(I) SEGACT MSOUPO * boucle sur les composantes de la sous zone DO 100 J=1,NOHARM(/1) IF (NOHARM(J) .NE. 0) THEN DO 50 L=1,NHAR IF (NOHARM(J) .EQ. NUMHAR(L)) THEN GOTO 100 ENDIF 50 CONTINUE NUMHAR(**) = NOHARM(J) NMAX = MAX(NMAX,NOHARM(J)) NMIN = MIN(NMIN,NOHARM(J)) ENDIF 100 CONTINUE 200 CONTINUE 300 CONTINUE * NHAR = NUMHAR(/1) NVARH=NMAX-NMIN+1 * on inverse numhar * SEGINI IHARNUM DO 400 I=1,NHAR IHARNUM(NOHARM(I)-NMIN+1)=I 400 CONTINUE c RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales