Download icgprc.eso

Back to the list

   1 : C ICGPRC    SOURCE    CHAT      05/01/13    00:28:09     5004           
   2 :       SUBROUTINE ICGPRC(X,Y,P,KA,NEL,NNZ)
   3 : CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
   4 : C                                                                   C
   5 : C  Effectue une r‚solution par descente remont‚e de la matrice      C
   6 : C  de pr‚conditionnement.                                           C
   7 : C  La matrice est stock‚e en mode compress‚ dans P.                 C
   8 : C                                                                   C
   9 : C +---------------------------------------------------------------+ C
  10 : C ! DESCRIPTION DES ARGUMENTS                                     ! C
  11 : C !---------------------------------------------------------------! C
  12 : C !                                                               ! C
  13 : C +----------+------+---------------------------------------------+ C
  14 : C ! NOM      ! MODE ! DESCRIPTION                                 ! C
  15 : C +----------+------+---------------------------------------------+ C
  16 : C ! X        ! ---> ! Solution                                    ! C
  17 : C +----------+------+---------------------------------------------+ C
  18 : C ! Y        ! <--- ! Second membre                               ! C
  19 : C +----------+------+---------------------------------------------+ C
  20 : C ! P        ! <--- ! La matrice de pr‚conditionnement            ! C
  21 : C +----------+------+---------------------------------------------+ C
  22 : C ! KA       ! <--- ! Le tableau d'indexage correspondant         ! C
  23 : C +----------+------+---------------------------------------------+ C
  24 : C ! NEL      ! <--- ! Nombre de lignes de la matrice              ! C
  25 : C +----------+------+---------------------------------------------+ C
  26 : C ! NNZ      ! <--- ! Nombre de colonnes (nombre maxi de voisins) ! C
  27 : C +----------+------+---------------------------------------------+ C
  28 : C !                                                               ! C
  29 : C ! MODE = ---> VARIABLE ECRITE (SORTIE)                          ! C
  30 : C ! MODE = <--- VARIABLE LUE    (ENTREE)                          ! C
  31 : C ! MODE = <--> VARIABLE LUE ET ECRITE                            ! C
  32 : C !                                                               ! C
  33 : C +---------------------------------------------------------------+ C
  34 : C !                                                               ! C
  35 : C ! CONTACT : Fran‡ois Thomas  69 08 24 64 ou 76 96               ! C
  36 : C !                                                               ! C
  37 : C +---------------------------------------------------------------+ C
  38 : C !                                                               ! C
  39 : C ! RELATIONS AVEC D'AUTRES MODULES                               ! C
  40 : C !                                                               ! C
  41 : C +---------------------------------------------------------------+ C
  42 : C !                                                               ! C
  43 : C ! MODIFICATIONS                                                 ! C
  44 : C !                                                               ! C
  45 : C ! 11/03/92 : Cr‚ation                                           ! C
  46 : C !                                                               ! C
  47 : C +---------------------------------------------------------------+ C
  48 : C                                                                   C
  49 : CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
  50 :       IMPLICIT INTEGER(I-N)
  51 :       IMPLICIT REAL*8 (A-H,O-Z)
  52 :       DIMENSION X(NEL)
  53 :       DIMENSION Y(NEL)
  54 :       DIMENSION P(NEL,NNZ)
  55 :       DIMENSION KA(NEL,NNZ)
  56 : C
  57 :       DO 8 I=1,NEL
  58 :          X(I)=Y(I)
  59 :  8    CONTINUE
  60 :               
  61 :       DO 10 I=1,NEL
  62 :          S=0.D0
  63 :          DO 11 IKA=2,NNZ
  64 :             K=KA(I,IKA)
  65 :             IF(K.LT.I) S=S+P(I,IKA)*X(K)
  66 :  11      CONTINUE
  67 :  1       X(I)=X(I)-S
  68 :  10   CONTINUE
  69 :       
  70 :       DO 20 I=1,NEL
  71 :          X(I)=X(I)*P(I,1)
  72 :  20   CONTINUE
  73 :             
  74 :       DO 30 II=0,NEL-1
  75 :          I=NEL-II
  76 :          S=0.D0
  77 :          DO 31 IKA=2,NNZ
  78 :             K=KA(I,IKA)
  79 :             IF(K.GT.I) S=S+P(I,IKA)*X(K)
  80 :  31      CONTINUE
  81 :          X(I)=X(I)-S
  82 :  30   CONTINUE
  83 : 
  84 :       RETURN
  85 :       END
  86 :  
  87 :  

© Cast3M 2003 - All rights reserved.
Disclaimer