C SAVCR1    SOURCE    FD218221  26/02/13    21:15:29     12462          
      SUBROUTINE SAVCR1(VARF,NVARI,CMAT,NMAT,SIGF,
     $           SIGEF,NSTRS,IFOUR,NFLU,EPSFLU,AN,BN,CN)
C
C_______________________________________________________________________
C
C  SOUS PROGRAMME APPELE PAR SAVCR QUI CALCUL LES MATRICES DE 
C  DEFORMATION DE FLUAGE PROPRE D APRES LE MODELE DE KELVIN
C  A LA FIN DU PAS DE TEMPS
C_______________________________________________________________________
C
      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)
      DIMENSION VARF(NVARI),CMAT(NMAT),SIGF(NSTRS),SIGEF(NSTRS)
      DIMENSION EPSFLU(6),FLUO(6),VEPSM(6),VEPSO(6),VEPSN(6),SIGFI(10)
      DIMENSION AN(NSTRS),BN(NSTRS,NSTRS),CN(NSTRS,NSTRS)
C
C  TEST DE DIMENSION
C
      IF(NSTRS.GT.10) THEN
          PRINT *, 'SAUFLD - DIMENSION INSUFFISANTE'
          RETURN 
      ENDIF
C
C RECUPERATION DES VALEURS DES PARAMETRES MATERIAU
C
      TDT  = CMAT(28)
C
C RECUPERATION DES VARIABLES INTERNES INITIALES
C
C   FLUAGE PROPRE
C
      EPSFLU(1) = VARF(9)
      EPSFLU(2) = VARF(10)
      EPSFLU(3) = VARF(11)
      EPSFLU(4) = VARF(12)
      EPSFLU(5) = VARF(13)
      EPSFLU(6) = VARF(14)
C
C   VITESSE N
C
      VEPSO(1) = VARF(27)
      VEPSO(2) = VARF(28)
      VEPSO(3) = VARF(29)
      VEPSO(4) = VARF(30)
      VEPSO(5) = VARF(31)
      VEPSO(6) = VARF(32)
C
C   FLUAGE PROPRE  N
C
      FLUO(1) = VARF(9)
      FLUO(2) = VARF(10)
      FLUO(3) = VARF(11)
      FLUO(4) = VARF(12)
      FLUO(5) = VARF(13)
      FLUO(6) = VARF(14)
C
C  TEST SI LE TEMPS EST NUL
C
      IF (TDT.EQ.0.D0) THEN
        GOTO 30
      ENDIF
C
C INITIALISATION DES MATRICES
C
      CALL ZERO(AN,NSTRS,1)
      CALL ZERO(BN,NSTRS,NSTRS)
      CALL ZERO(CN,NSTRS,NSTRS)
      CALL ZERO(SIGFI,NSTRS,1)
C
      DO 10 I=1,NSTRS
          SIGFI(I) = SIGF(I)
  10  CONTINUE
C
C_______________________________________________________________________
C
C  FLUAGE PROPRE KELVIN VOIGT
C
      NDI = NSTRS
      CALL DEFCR1(VARF,NVARI,CMAT,NMAT,IFOUR,NSTRS,
     $                 AN,BN,CN,NFLU,NDI)
C
      DO 20 I=1,NSTRS
        EPSFLU(I) = EPSFLU(I) + AN(I)
        DO 21 J=1,NSTRS
          EPSFLU(I) = EPSFLU(I) + BN(I,J)*SIGEF(J) + CN(I,J)*SIGFI(J)
  21    CONTINUE
  20  CONTINUE
C
C
C  VITESSE MOYENNE DE DEFORMATION
C
      VEPSM(1) = (EPSFLU(1) -  FLUO(1))/TDT
      VEPSM(2) = (EPSFLU(2) -  FLUO(2))/TDT
      VEPSM(3) = (EPSFLU(3) -  FLUO(3))/TDT
      VEPSM(4) = (EPSFLU(4) -  FLUO(4))/TDT
      VEPSM(5) = (EPSFLU(5) -  FLUO(5))/TDT
      VEPSM(6) = (EPSFLU(6) -  FLUO(6))/TDT
C
C  VITESSE DE DEFORMATION (N+1)
C
      VEPSN(1) = (2.D0 * VEPSM(1)) - VEPSO(1)
      VEPSN(2) = (2.D0 * VEPSM(2)) - VEPSO(2)
      VEPSN(3) = (2.D0 * VEPSM(3)) - VEPSO(3)
      VEPSN(4) = (2.D0 * VEPSM(4)) - VEPSO(4)
      VEPSN(5) = (2.D0 * VEPSM(5)) - VEPSO(5)
      VEPSN(6) = (2.D0 * VEPSM(6)) - VEPSO(6)

C
  30  CONTINUE
C
C  SAUVEGARDE DES DEFORMATIONS ET VITESSE (N+1)
C
C    FLUAGE PROPRE
C
      VARF(9)  = EPSFLU(1)
      VARF(10) = EPSFLU(2)
      VARF(11) = EPSFLU(3)
      VARF(12) = EPSFLU(4)
      VARF(13) = EPSFLU(5)
      VARF(14) = EPSFLU(6)
C
      VARF(27) = VEPSN(1)
      VARF(28) = VEPSN(2)
      VARF(29) = VEPSN(3)
      VARF(30) = VEPSN(4)
      VARF(31) = VEPSN(5)
      VARF(32) = VEPSN(6)
C
      END
 
