C INCREM    SOURCE    STRU      06/12/14    21:15:18     5611
c     Sous-Programme du module MISTRAL1
C     --------------------------------------------------------------------------
      SUBROUTINE INCREM (TT,FI,FIT,
     &                   SIG,EPS,EPSTH,EPSEL,EPSP,EPSCR,
     &                   EPSE,EPSEQ,XX,PSI,
     &                   TTP,FIP,
     &                   SIGP,VEPS,VEPSTH,VEPSEL,VEPSP,VEPSCR,
     &                   VEPSE,EPSEQP,XXP,PSIP,
     &                   NDPI,NDVP,NXX,
     &                   DT, KINCR,
     &                   TTF,FIF,FITF,
     &                   SIGF,EPSF,EPSTHF,EPSELF,EPSPF,EPSCRF,
     &                   EPSEF,EPSEQF,XXF,PSIF,
     &                   DELTT,DELFI,DELFIT, DELSIG,DELEPS,DELETH,
     &                   DELEEL,DELEP,DELECR,DELEE,DELEEQ,DELXX,DELPSI)
C     --------------------------------------------------------------------------
C     Initialisation a 0 des variations DELY des variables Y depuis le
C     debut de la periode d'integration, si KINCR = 0.
C     Calcul des valeurs YF a l'instant t+DT en fonction des valeurs Y
C     a l'instant t et de leurs derivees YP a t ou t+DT/2, si KINCR = 1 ou 2.
C     Incrementation des variations DELY des variables Y depuis le debut de la
C     periode d'integration en fonction des YP, si KINCR = 2.
C     --------------------------------------------------------------------------
      IMPLICIT INTEGER (I-N)
      IMPLICIT REAL*8 (A-H, O-Z)
c     std :
      PARAMETER ( NDVPMA = 4 , NXXMAX = 3 )
c     std.
      DIMENSION SIG(1:*),EPS(1:*),EPSTH(1:*),EPSEL(1:*),EPSCR(1:*),
     &          EPSP(1:6,0:*),EPSE(0:*),EPSEQ(0:*),XX(1:6,1:*)
      DIMENSION SIGP(1:*),VEPS(1:*),VEPSTH(1:*),VEPSEL(1:*),VEPSCR(1:*),
     &          VEPSP(1:6,0:*),VEPSE(0:*),EPSEQP(0:*),
     &          XXP(1:6,1:*)
c     std :
      DIMENSION DSIG(1:6),DEPS(1:6),DEPSTH(1:6),DEPSEL(1:6),DEPSCR(1:6),
     &          DEPSP(1:6,0:NDVPMA),DEPSE(0:NDVPMA),DEPSEQ(0:NDVPMA),
     &          DX(1:6,1:NXXMAX)
c     std.
      DIMENSION SIGF(1:*),EPSF(1:*),EPSTHF(1:*),EPSELF(1:*),EPSCRF(1:*),
     &          EPSPF(1:6,0:*),EPSEF(0:*),EPSEQF(0:*),
     &          XXF(1:6,1:*)
      DIMENSION DELSIG(1:*),
     &          DELEPS(1:*),DELETH(1:*),DELEEL(1:*),DELECR(1:*),
     &          DELEP(1:6,0:*),DELEE(0:*),DELEEQ(0:*),
     &          DELXX(1:6,1:*)
        IF (KINCR.EQ.0) THEN
         DELTT = 0.
         DELFI = 0.
         DELFIT = 0.
         DO IJ = 1,6
          DELSIG(IJ) = 0.
          DELEPS(IJ) = 0.
          DELETH(IJ) = 0.
          DELEEL(IJ) = 0.
          DELECR(IJ) = 0.
         END DO
         DO IDP = 1-NDPI,NDVP
          DO IJ = 1,6
           DELEP(IJ,IDP) = 0.
          END DO
          DELEE(IDP) = 0.
          DELEEQ(IDP) = 0.
         END DO
       DO IXX = 1,NXX
          DO IJ = 1,6
           DELXX(IJ,IXX) = 0.
          END DO
       END DO
         DELPSI = 0.
         RETURN
        END IF
        DTT = TTP*DT
        TTF = TT+DTT
        FID = FI
        DFI = FIP*DT
        FIF = FI+DFI
        DFIT = (FID+FIF)/2.*DT
        FITF = FIT+DFIT
        DO IJ = 1,6
         DSIG(IJ) = SIGP(IJ)*DT
         SIGF(IJ) = SIG(IJ)+DSIG(IJ)
         DEPS(IJ) = VEPS(IJ)*DT
         EPSF(IJ) = EPS(IJ)+DEPS(IJ)
         DEPSTH(IJ) = VEPSTH(IJ)*DT
         EPSTHF(IJ) = EPSTH(IJ)+DEPSTH(IJ)
         DEPSEL(IJ) = VEPSEL(IJ)*DT
         EPSELF(IJ) = EPSEL(IJ)+DEPSEL(IJ)
         DEPSCR(IJ) = VEPSCR(IJ)*DT
         EPSCRF(IJ) = EPSCR(IJ)+DEPSCR(IJ)
        END DO
        DO IDP = 1-NDPI,NDVP
         DO IJ = 1,6
          DEPSP(IJ,IDP) = VEPSP(IJ,IDP)*DT
          EPSPF(IJ,IDP) = EPSP(IJ,IDP)+DEPSP(IJ,IDP)
         END DO
         DEPSE(IDP) = VEPSE(IDP)*DT
         EPSEF(IDP) = EPSE(IDP)+DEPSE(IDP)
         DEPSEQ(IDP) = EPSEQP(IDP)*DT
         EPSEQF(IDP) = EPSEQ(IDP)+DEPSEQ(IDP)
        END DO
      DO IXX = 1,NXX
         DO IJ = 1,6
          DX(IJ,IXX) = XXP(IJ,IXX)*DT
          XXF(IJ,IXX) = XX(IJ,IXX)+DX(IJ,IXX)
         END DO
      END DO
        DPSI = PSIP*DT
        PSIF = PSI+DPSI
        IF (KINCR.EQ.2) THEN
         DELTT = DELTT+DTT
         DELFI = DELFI+DFI
         DELFIT = DELFIT+DFIT
         DO IJ = 1,6
          DELSIG(IJ) = DELSIG(IJ)+DSIG(IJ)
          DELEPS(IJ) = DELEPS(IJ)+DEPS(IJ)
          DELETH(IJ) = DELETH(IJ)+DEPSTH(IJ)
          DELEEL(IJ) = DELEEL(IJ)+DEPSEL(IJ)
          DELECR(IJ) = DELECR(IJ)+DEPSCR(IJ)
         END DO
         DO IDP = 1-NDPI,NDVP
          DO IJ = 1,6
           DELEP(IJ,IDP) = DELEP(IJ,IDP)+DEPSP(IJ,IDP)
          END DO
          DELEE(IDP) = DELEE(IDP)+DEPSE(IDP)
          DELEEQ(IDP) = DELEEQ(IDP)+DEPSEQ(IDP)
         END DO
       DO IXX = 1,NXX
          DO IJ = 1,6
           DELXX(IJ,IXX) = DELXX(IJ,IXX)+DX(IJ,IXX)
          END DO
       END DO
         DELPSI = DELPSI+DPSI
        END IF
        RETURN
        END

