Download dervdi.eso

Back to the list

   1 : C DERVDI    SOURCE    STRU      08/12/22    21:15:08     6246           
   2 : c     Sous-Programme du module MISTRAL0
   3 : C     --------------------------------------------------------------------------
   4 :       SUBROUTINE DERVDI (FI,TT,PSI,SEQ,EPSEQ,VEPSE, NDPI,NDVP,NXX,
   5 :      &                   PDVDI, PSIP,PSIP0)
   6 : C     --------------------------------------------------------------------------
   7 : C     Calcul des termes PSIP et PSIP0 de l'expression suivante de la derivee
   8 : C     par rapport au temps de la variable PSI de durcissement d'irradiation :
   9 : C                        dPSI/dt = PSIP + PSIP0*VEPSE(0)
  10 : C     en fonction :
  11 : C     - du flux de neutrons rapides FI,
  12 : C     - de la temperature TT,
  13 : C     - de la variable PSI,
  14 : C       - des contraintes equivalentes SEQ(IDP),
  15 : C       - des deformations equivalentes EPSEQ(IDP),
  16 : C     - des vitesse de deformations equivalentes VEPSE(IDP),
  17 : C     pour toutes les natures de deformations plastiques IDP,
  18 : C     - des parametres transmis dans PVDI,
  19 : C     NXX etant le nombre de natures de contraintes internes.
  20 : C     --------------------------------------------------------------------------
  21 :       IMPLICIT INTEGER (I-N)
  22 :       IMPLICIT REAL*8 (A-H, O-Z)
  23 :       PARAMETER ( NPTTM = 5 , NPPSIM = 6 )
  24 :       PARAMETER ( NPEDIM = 13+6*NPTTM+NPPSIM )
  25 : c     (NPEDIM = 49)
  26 :       PARAMETER ( NVM=2 , NPATDM = 14 , NPFIM = 9 )
  27 :       PARAMETER ( NPERVM = 11+NVM*(NPEDIM+2*NPATDM+NPFIM+11) )
  28 : c     (NPERVM = 205)
  29 :       DIMENSION SEQ(0:*),EPSEQ(0:*),VEPSE(0:*),PDVDI(1:*)
  30 :       DIMENSION PATDI(1:NPATDM),PFI(1:NPFIM),PERV(1:NPERVM)
  31 : C     ------------------------------------------------------------------
  32 :       NP = NDPI+NDVP+NXX+1
  33 :       KDI = NINT(PDVDI(NP))
  34 :       IF (KDI.EQ.0) THEN
  35 :        PSIP = FI
  36 :       ELSE
  37 :        PSIP = MAX(PDVDI(NP+1)+PDVDI(NP+2)*TT,0.D0)*FI
  38 :        NP = NP+2
  39 :       END IF
  40 : C     ------------------------------------------------------------------
  41 :       NP = NP+1
  42 :       LFATDI = NINT(PDVDI(NP+1))
  43 :       IF (LFATDI.EQ.0) THEN
  44 :        NP = NP+1
  45 :       ELSE
  46 :        NPATDI = NINT(PDVDI(NP))
  47 :        DO IP = 1,NPATDI
  48 :         PATDI(IP) = PDVDI(NP+IP)
  49 :        END DO
  50 :        NP = NP+NPATDI
  50 :        CALL FATDI (TT,0.D0,PSI, PATDI, PSIPTP)
  51 :        NP = NP+1
  52 :        LFFI = NINT(PDVDI(NP+1))
  53 :        IF (LFFI.EQ.0) THEN
  54 :         NP = NP+1
  55 :        ELSE
  56 :         NPFI = NINT(PDVDI(NP))
  57 :         DO IP = 1,NPFI
  58 :          PFI(IP) = PDVDI(NP+IP)
  59 :         END DO
  60 :         NP = NP+NPFI
  60 :         CALL FFLUX (FI, PFI, PSIPFI)
  61 :         PSIP = PSIP-PSIPTP*PSIPFI
  62 :        END IF
  63 :       END IF
  64 : C     ------------------------------------------------------------------
  65 :       PSIP0 = 0.
  66 :       NP = NP+1
  67 :       KRD = NINT(PDVDI(NP))
  68 :       IF (KRD.EQ.0) RETURN
  69 :       DO IDP = 1-NDPI,NDVP
  70 :        NP = NP+1
  71 :        LERV = NINT(PDVDI(NP+1))
  72 :        IF (LERV.EQ.0) THEN
  73 :         NP = NP+1
  74 :        ELSE
  75 :         NPERV = NINT(PDVDI(NP))
  76 :         DO IP = 1,NPERV
  77 :          PERV(IP) = PDVDI(NP+IP)
  78 :         END DO
  79 :         NP = NP+NPERV
  79 :         CALL ECOREV (SEQ(IDP),0.D0,EPSEQ(IDP),TT,FI,PSI, PERV, PSIPRD)
  80 :         IF (IDP.EQ.0) THEN
  81 :          PSIP = PSIP-PSIPRD*PDVDI(NP+1)
  82 :          PSIP0 = -PSIPRD*PDVDI(NP+2)
  83 :         ELSE
  84 :          PSIP = PSIP-PSIPRD*(PDVDI(NP+1)+PDVDI(NP+2)*VEPSE(IDP))
  85 :         END IF
  86 :         NP = NP+2
  87 :        END IF
  88 :       END DO
  89 : C     ------------------------------------------------------------------
  90 :         RETURN
  91 :         END
  92 :  

© Cast3M 2003 - All rights reserved.
Disclaimer