Download uo2vi2.eso

Back to the list

   1 : C UO2VI2    SOURCE    STRU      05/01/14    21:15:15     5006           
   2 : C   responsable STRUB
   3 :        SUBROUTINE  UO2VI2(NC1,NCA,NDIM,NN,PRECIZ,EPSPT,EPSVPT,
   4 :      &                    EPSDPT,EPSGPT,DDE,DFDS,DGDS,HDFDQ,DDX,SIGPT,
   5 :      &                    KERRE)
   6 : C-----------------------------------------------------------------------
   7 : C                MODELE UO2 (OTTOSEN+GATT_MONERIE)
   8 : C          CALCUL DES VITESSES DES GRANDEURS SUIVANTES:
   9 : C  - DEFORMATIONS DUES A LA FISSURATION (OUVERTURES)
  10 : C  - CONTRAINTES
  11 : C-----------------------------------------------------------------------
  12 : C                                                                               
  13 : C  ENTREES
  14 : C  -------
  15 : C NC1          = NC+1 AVEC NC(=3) NBR. TOTAL DE DIRECTIONS DE FISS. 
  16 : C NCA          = NBR. DE DIRECTIONS DE FISS. OU UN CRITERE EST ATTEINT
  17 : C NDIM         = NCA+1 SI CP, NCA SINON
  18 : C NN(NC)       = NUMEROS DES DIRECTIONS DE FISS. OU UN CRIT. EST ATTEINT
  19 : C PRECIZ       = PRECISION POUR L INVERSION DE LA MATRICE 
  20 : C EPSPT(6)     = VIT. DE DEF. TOT.
  21 : C EPSVPT(6)    = VIT. DE DEF. VISCOPLAST.
  22 : C EPSDPT(3)    = VIT. DE DEF. DE DENSIFICATION
  23 : C EPSGPT(3)    = VIT. DE DEF. DE GONFLEMENT
  24 : C DDE(18)      = MATRICE DE HOOKE FISSUREE
  25 : C DFDS(6,NC)   = DERIVEES DES CRITERES DE FISSURATION / CONTRAINTES
  26 : C DGDS(6,NC)   = MATRICE DE PASSAGE DU VECTEUR DES DEF. DE FISSURATION
  27 : C                EN OUVERTURE AU VECTEUR DE FISSURATION COMPLET
  28 : C                (OUVERTURES + GLISSEMENTS)
  29 : C HDFDQ(NC)    = DERIVEES DES CRITERES DE FISSURATION /
  30 : C                VECTEUR DES DEF. DE FISSURATION EN OUVERTURE
  31 : C
  32 : C  SORTIES
  33 : C  -------
  34 : C DDX(NC1)     = VIT. DES DEF. DE FISSURATION (+ PREMIERE COMPOSANTE
  35 : C                DE LA VIT. DE DEF. TOT. SI CP)
  36 : C SIGPT(6)     = VIT. DES CONTRAINTES
  37 : C KERRE        = GESTION DES ERREURS
  38 : C-----------------------------------------------------------------------
  39 :       IMPLICIT INTEGER(I-N)
  40 :       IMPLICIT REAL*8(A-H,O-Z)
  41 : -INC CCOPTIO
  42 : C                                                
  43 :        DIMENSION NN(*),EPSPT(*),EPSVPT(*),EPSDPT(*),EPSGPT(*),DDE(*)
  44 :        DIMENSION DFDS(6,*),DGDS(6,*),HDFDQ(*),DDX(*),SIGPT(*)
  45 :        DIMENSION AA(4,4),BB1(4)
  46 :        DIMENSION VAUX1(6),DEPS(6),DSIGT(6),EPSPT1(6),EPSFPT(6)
  47 : C
  48 :       KERRE=0
  48 :       CALL ZDANUL(DDX,NC1)
  48 :       CALL ZDANUL(VAUX1,6)
  48 :       CALL ZDANUL(EPSFPT,6)
  49 : C
  50 :       DO I=1,6
  51 :         DEPS(I)=EPSPT(I)-EPSVPT(I)
  52 :       ENDDO
  53 :       DO I=1,3
  54 :         DEPS(I)=DEPS(I)-(EPSDPT(I)+EPSGPT(I))
  55 :       ENDDO
  55 :       CALL OTTOPR(DDE,DEPS,DSIGT)
  56 : C
  57 : C
  58 : C calcul de DDX - vit des def de fiss (+ premiere compos de la vit de def tot si cp)
  59 : C
  60 :       IF (NCA.EQ.0) THEN
  61 : C     ------------------
  62 :         IF (IFOUR.EQ.-2) DDX(NDIM)=-DSIGT(1)/DDE(1)
  63 :       ELSE
  64 : C     ----
  65 :       DO IJ=1,NCA
  66 : C
  67 :          JJ=NN(IJ)
  67 :          CALL OTTOPR(DDE,DGDS(1,JJ),VAUX1)
  68 : C
  69 :          DO IK=1,NCA
  70 :             JK=NN(IK)
  71 :             AA(IK,IJ)= SDOT(6,DFDS(1,JK),1,VAUX1,1)
  72 :             IF(IK.EQ.IJ) AA(IK,IJ)=AA(IK,IJ)-HDFDQ(JK)
  73 :          ENDDO
  74 :          BB1(IJ)=SDOT(6,DFDS(1,JJ),1,DSIGT,1)
  75 : C
  76 : C        SPECIAL CP
  77 : C
  78 :          IF(IFOUR.EQ.-2) THEN
  79 : C           LA COMPOSANTE EPS 33 EST EN POSITION 1
  80 :             AA(IJ,NDIM)=-(DFDS(1,JJ)*DDE(1)+DFDS(2,JJ)*DDE(6)
  81 :      &                   +DFDS(3,JJ)*DDE(5)+DFDS(4,JJ)*DDE(10)
  82 :      &                   +DFDS(5,JJ)*DDE(13)+DFDS(6,JJ)*DDE(16))
  83 :             AA(NDIM,IJ)=VAUX1(1)
  84 :             AA(NDIM,NDIM)=-DDE(1)
  85 :             BB1(NDIM)=DSIGT(1)
  86 :          ENDIF
  87 : C
  88 :       ENDDO
  89 : C
  90 :       DO IK=1,NCA
  91 :          IF(AA(IK,IK).LT.0.D0) THEN
  92 :             PRINT *,' UO2VI2 - TERME DIAGONAL NEGATIF'
  93 :             KERRE=61
  94 :             WRITE(IOIMP,77011) ((AA(I,J),J=1,5),I=1,5)
  95 :             RETURN
  96 :          ENDIF
  97 :       ENDDO
  98 : C
  99 :       IF(IIMPI.EQ.42) THEN
 100 :          WRITE(IOIMP,77011) ((AA(I,J),J=1,5),I=1,5)
 101 : 77011    FORMAT(5X,' MATRICE AA'/(5(1X,1PE12.5)))
 102 :          WRITE(IOIMP,77012) (BB1(I),I=1,5)
 103 : 77012    FORMAT(5X,' VECTEUR BB1'/(5(1X,1PE12.5)))
 104 :       ENDIF
 105 : C
 106 : C --- RESOLUTION
 107 : C
 107 :       CALL INVALM(AA,NC1,NDIM,KERRE,PRECIZ)
 108 :       IF(KERRE.NE.0) THEN
 109 :          PRINT *,' UO2VI2 - INVERSION MATRICE IMPOSSIBLE'
 110 :          RETURN
 111 :       ENDIF
 112 :       IF(IIMPI.EQ.42) THEN
 113 :          WRITE(IOIMP,77013) ((AA(I,J),J=1,5),I=1,5)
 114 : 77013    FORMAT(5X,' MATRICE AA INVERSEE '/(5(1X,1PE12.5)))
 115 :       ENDIF
 116 : C
 116 :       CALL MULMA2(DDX,AA,BB1,NDIM,1,NDIM,NC1,NC1)
 117 : C
 118 : C --- CALCUL DE |F*dµ/dt
 119 : C
 120 :       DO IJ=1,NCA
 121 :          JJ=NN(IJ)
 122 :          DO I=1,6
 123 :            EPSFPT(I)=EPSFPT(I)+DGDS(I,JJ)*DDX(IJ)
 124 :          ENDDO
 125 :       ENDDO
 126 : C
 127 :       ENDIF
 128 : C     ----
 129 : C
 130 : C calcul de SIGPT - vit de contraintes
 131 : C
 131 :       CALL ZDANUL(EPSPT1,6)
 132 :       IF(IFOUR.EQ.-2) EPSPT1(1)=DDX(NDIM)
 133 : C
 134 :       DO I=1,6
 135 :         DEPS(I)=DEPS(I)+EPSPT1(I)-EPSFPT(I)
 136 :       ENDDO
 136 :       CALL OTTOPR(DDE,DEPS,SIGPT)
 137 : C
 138 :       RETURN
 139 :       END
 140 :  
 141 :  
 142 :  
 143 :  

© Cast3M 2003 - All rights reserved.
Disclaimer