C KCACU2    SOURCE    CB215821  16/04/21    21:17:29     8920
      SUBROUTINE  KCACU2(NES,NR,G,VP,NFACE,KRO,KSI,IR,KA,IM)
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8 (A-H,O-Z)
      DIMENSION VP(NES,NR),G(NR),IR(1),KA(NFACE)
      DIMENSION KRO(NFACE,NES),KSI(NFACE,NES),IM(NFACE,NFACE)
C
C     DIM 2
C     CALCUL DES FF ET DES DIRECTIONS POUR TOUTE LA SURFACE DE REFERENCE
C        ( PLAN Z = +1)
C
C        NF = 1    X = +1        NF = 2     X = -1
C        NF = 3    Y = +1        NF = 4     Y = -1
C
C     UTILISATION :
C
C            D(NF,K,I) = KSI(NF,K) * V(KRO(NF,K),I)
C
C           NF : NUMERO DE FACE
C           K  : DIRECTION DE ESPACE
C           I  : INDICES DE DISCRETISATION LOCAL A CHAQUE FACE
C
C    REM: VP ORIENTE CU CENTRE VERS LA CELLULE
C    ***
C
C
      NR2 = NR/2

      DO 30 I = 1,NR2
           IR(I)      = NR2-I+1
           IR(I+ NR2) = I
   30     CONTINUE

      DO 1  I = 1, NR
            VP(1,I) = (IR(I)-0.5)/NR
            RP = VP(1,I)*VP(1,I) + 0.5*0.5
            RP = SQRT(RP)
            IS = 1
            IF (I.LE.NR2)   IS = -1
            VP(1,I) = IS * VP(1,I)/RP
            VP(2,I) =  0.5/RP
            G(I) = 0.5/(RP*RP)/NR/2
   1  CONTINUE
C
C     TABLEAU DE CORRESPONDANCE
C
      KRO(1,1) = 2
      KRO(1,2) = 1
      KRO(2,1) = 2
      KRO(2,2) = 1
      KRO(3,1) = 1
      KRO(3,2) = 2
      KRO(4,1) = 1
      KRO(4,2) = 2
C
      DO 4 NF = 1,NFACE
      DO 5 K = 1,NES
         KSI(NF,K) = 1
  5   CONTINUE
  4   CONTINUE
C
      KSI(2,1) = -1
      KSI(4,2) = -1
C
      DO 50 K1=1,NFACE
      DO 51 K2=1,NFACE
      IM(K1,K2) = 0
 51   CONTINUE
 50   CONTINUE

      IM(1,4) = 1
      IM(1,3) = NR
      IM(2,4) = 1
      IM(2,3) = NR
      IM(3,2) = 1
      IM(3,1) = NR
      IM(4,2) = 1
      IM(4,1) = NR
      KA(1) = 2
      KA(2) = 2
      KA(3) = 1
      KA(4) = 1
      RETURN
      END



