Download kra003.eso

Back to the list

   1 : C KRA003    SOURCE    CHAT      05/01/13    01:05:48     5004           
   2 : C*********************************************************************C
   3 : C                                                                     C
   4 : C --- KRA003 REPRESENTE LA PARTIE NUMERIQUEMENT INTENSE DU CALCUL     C
   5 : C            EFFECTUE DANS CAMDF (3D). ON UTILISE UN PROGRAMME        C
   6 : C            FORTRAN PLUTOT QU'ESOPE POUR UNE PLUS GRANDE EFFICACITE. C
   7 : C                                                                     C
   8 : C            LA BOUCLE SUR LE NOMBRE D'ELEMENTS EST VECTORISABLE      C
   9 : C            ET PARALLELISABLE DIRECTEMENT.                           C
  10 : C                                                                     C
  11 : C            POUR OPTIMISER LES ACCES MEMOIRE, ON BOUCLE SUR          C
  12 : C            LE NOMBRE D'ELEMENTS A L'INTERIEUR DE LA BOUCLE SUR LES  C
  13 : C            SOMMETS. ON NE GAGNE RIEN A TRAITER PAR PAQUETS          C
  14 : C            D'ELEMENTS VU QUE L'ON ACCUMULE SUR LES ELEMENTS         C
  15 : C            WET QU'IL Y A UNE DIVISION A FAIRE.
  16 : C                                                                     C
  17 : C*********************************************************************C
  18 :       SUBROUTINE KRA003(AM,GX,D,B,NUM,IPADL,NP,NEL,NPT)
  19 :       IMPLICIT INTEGER(I-N)
  20 :       IMPLICIT REAL*8 (A-H,O-Z)
  21 :       DIMENSION AM(NEL,NP,3),
  22 :      ;          GX(NPT,3),
  23 :      ;          D (NPT,3),
  24 :      ;          NUM(NP,1),
  25 :      ;          IPADL(1),
  26 :      ;          B (1)
  27 : C
  28 : C --- L'AFFECTATION Z=0. N'EST LA QUE POUR EVITER QU'ESOPE N'INTERCALE
  29 : C     LA CARTE INTEGEROOA,... ENTRE LA DIRECTIVE DE VECTORISATION ET
  30 : C     LA BOUCLE DO 11. |||
  31 :       Z=0.
  32 :       DO 22 I=1,NP
  33 :       DO 21 K=1,NEL
  34 :       IU=IPADL(NUM(I,K))
  35 :       B(K)=B(K)+AM(K,I,1)*GX(IU,1)/D(IU,1)
  36 :      &         +AM(K,I,2)*GX(IU,2)/D(IU,2)
  37 :      &         +AM(K,I,3)*GX(IU,3)/D(IU,3)
  38 :  21   CONTINUE
  39 :  22   CONTINUE
  40 :       RETURN
  41 :       END
  42 :  
  43 :  

© Cast3M 2003 - All rights reserved.
Disclaimer