1 : C PRGURS SOURCE CHAT 05/01/13 02:26:34 5004 2 : SUBROUTINE PRGURS(SIG0,NSTRS,DEPST,VAR0,XMAT,NCOMAT,XCAR,ICARA, 3 : 1NVARI,SIGF,VARF,DEFP,MFR1,KERRE,wrkgur) 4 : C 5 : C ================================================================== 6 : C CE SOUS-PROGRAMME EST APPELE DANS "ECOUL2". 7 : C IL PREPARE L'INTEGRATION DE LA LOI DE GURSON 8 : C 9 : C ENTREES: 10 : C ------- 11 : C NSTRS = NBR. DE COMPOSANTES DES CONTR. OU DES DEFORM. 12 : C SIG0(NSTRS) = CONTR. AU DEBUT DU PAS D'INTEGRATION 13 : C DEPST(NSTRS) = INCREMENT DES DEFORM. TOTALES 14 : C NVARI = NBR. DE VARIABLES INTERNES 15 : C VAR0(NVARI) = VARIABLES INTERNES AU DEBUT DU PAS D'INTEGRATION 16 : C CE TABLEAU CONTIENT DANS L'ORDRE: 17 : C - LA DEFORM. PLASTIQUE CUMULEE 18 : C - LA FRACTION DE VIDE INTERNE 19 : C - LA DENSITE 20 : C - LES DEFORM. PLASTIQUES 21 : C NCOMAT = NBR. DE CARACTERISTIQUES MECANIQUES DU MATERIAU 22 : C XMAT(NCOMAT) = CARACTERISTIQUES MECANIQUES DU MATERIAU 23 : C MFR = INDICE DE LA FORMULATION MECANIQUE; SEULEMENT 24 : C MASSIF OU COQUE POUR LES MATERIAUX ENDOMMAGEABLES 25 : C ICARA = NBR. DE CARACT. GEOMETRIQUES DES ELEMENTS FINIS 26 : C XCAR(ICARA) = CARACT. GEOMETRIQUES DES ELEMENTS FINIS 27 : C 28 : C SORTIES: 29 : C ------- 30 : C SIGF(NSTRS)= CONTR. A LA FIN DU PAS D'INTEGRATION 31 : C VARF(NVARI)= VARIABLES INTERNES A LA FIN DU PAS D'INTEGRATION 32 : C DEFP(NSTRS)= INCREMENT DES DEFORM. PLASTIQUES A LA FIN DU PAS 33 : C D'INTEGRATION 34 : C KERRE = INDICE QUI REGIT LES ERREURS 35 : C = 77 SI LA DEFORM. PLAST. CUMULEE ENDOMMAGEE (2IEME VAR. 36 : C INT.) EST EN DEHORS DE LA COURBE DE TRACTION, DS. 37 : C LE CAS DE L'ECROUISSAGE ET DE L'ENDOMM. ISOTROPES. 38 : C CECI PEUT SE PRODUIRE SUITE A L'APPEL A "CRIDAM" 39 : C = 99 SI LA FORMULATION MECANIQUE N'EST PAS DISPONIBLE 40 : C POUR LE MODELE CONSIDERE OU S'IL Y A INCOMPATIBILITE 41 : C ENTRE MFR ET IFOUR 42 : C ================================================================== 43 : C ICI IL FAUT PROGRAMMER EN FORTRAN PUR 44 : C =================================================================== 45 : C 46 : IMPLICIT INTEGER(I-N) 47 : IMPLICIT REAL*8(A-H,O-Z) 48 : -INC CCOPTIO 49 : segment wrkgur 50 : real*8 sigbar, sy0,phi0,rho0,g,b,h 51 : real*8 epn,phin,sqrtj2,rho,sig(6) 52 : real*8 e(7),dt 53 : real*8 conv,tol1,tol2 54 : endsegment 55 : * common/prop/sigbar,sy0,phi0,rho0,g,b,h 56 : DIMENSION SIG0(*),DEPST(*),VAR0(*),XMAT(*),XCAR(*),SIGF(*), 57 : & VARF(*),DEFP(*) 58 : DIMENSION RSIG0(6),RDEFP(6),RSIGF(6) ,RDEPST(6) 59 : C 60 : C ADAPTATION DE L'OPTION DE CALCUL VERS LE 3D MASSIF DE SIG0 A RSIG0 61 : C 62 : IF (MFR1 .EQ. 1) THEN 63 : C MASSIF 3D 64 : IF (NSTRS .EQ. 6) THEN 65 : DO 10 I=1,NSTRS 66 : RSIG0(I)=SIG0(I) 67 : RDEPST(I)=DEPST(I) 68 : 10 CONTINUE 69 : ELSE IF ( NSTRS .EQ. 4 .AND. (IFOUR .EQ. 0 .OR. 70 : & IFOUR .EQ. -1)) THEN 71 : C calcul axisyemmtrique ou deformation plane 72 : DO 15 I=1,NSTRS 73 : RSIG0(I)=SIG0(I) 74 : RDEPST(I)=DEPST(I) 75 : 15 CONTINUE 76 : RSIG0(5)=0.D0 77 : RSIG0(6)=0.D0 78 : RDEPST(5)=0.D0 79 : RDEPST(6)=0.D0 80 : ENDIF 81 : ELSE 82 : KERRE = 99 83 : RETURN 84 : ENDIF 85 : C 86 : C DONNE MATERIAU 87 : C 88 : SIGBAR=XMAT(7) 89 : SY0=XMAT(5) 90 : phi0=XMAT(8) 91 : G=XMAT(1)/2.D0/(1.D0+XMAT(2)) 92 : B=XMAT(1)/3.D0/(1.D0-2.D0*XMAT(2)) 93 : H=XMAT(6) 94 : RHO0=1.D0 95 : C 96 : C METTRE LES CONTRAINTES SOUS FORME DEVIATORIC + PRESSION 97 : C 98 : DO 20 I=1,6 99 : RSIGF(I)=RSIG0(I) 100 : 20 CONTINUE 101 : C 102 : RP = -(RSIG0(1)+RSIG0(2)+RSIG0(3))/3.D0 103 : RSIG0(1)=RSIG0(1)+RP 104 : RSIG0(2)=RSIG0(2)+RP 105 : RSIG0(3)=RSIG0(3)+RP 106 : 107 : * WRITE (*,*) '------------------------------' 108 : * WRITE (*,100) 'sig=' ,(RSIG0(I),I=1,6) 109 : * WRITE (*,*) 'P=',RP 110 : * WRITE (*,100) 'depst=' ,(DEPST(I),I=1,6) 111 : * WRITE (*,*) 'PHI0=',PHI0 112 : * WRITE (*,*) 'epse=',VAR0(1), ' phi=',VAR0(2),' dens=',VAR0(3) 113 : 114 : C 115 : C NOUVEL ETAT APRES L'INCREMENT DE DEFORMATION 116 : C 116 : CALL GURSON(RSIG0,RP,RDEFP,VAR0(1),VAR0(2),VAR0(3), 117 : & RDEPST,1.D0,wrkgur) 118 : 119 : C 120 : * WRITE (*,100) 'sig=' ,(RSIG0(I),I=1,6) 121 : * WRITE (*,*) 'P=',RP 122 : * WRITE (*,*) 'epse=',VAR0(1),' phi0=',VAR0(2),' dens=',VAR0(3) 123 : 124 : RSIG0(1)=RSIG0(1)-RP 125 : RSIG0(2)=RSIG0(2)-RP 126 : RSIG0(3)=RSIG0(3)-RP 127 : C 128 : C MISE A JOUR DES VARIABLES 129 : C 130 : C VARIABLES INTERNES 131 : C 132 : DO 50 I=1,NVARI 133 : VARF(I)=VAR0(I) 134 : 50 CONTINUE 135 : C 136 : C CONTRAINTES 137 : C 138 : DO 60 I=1,6 139 : RSIGF(I)=RSIG0(I) 140 : 60 CONTINUE 141 : C 142 : C PASSAGE A L'OPTION DE CALCUL POUR LES CONTRAINTES 143 : C 144 : IF (MFR1 .EQ. 1) THEN 145 : IF (NSTRS .EQ. 6) THEN 146 : C massif 3D 147 : DO 70 I=1,NSTRS 148 : SIGF(I)=RSIGF(I) 149 : DEFP(I)=RDEFP(I) 150 : 70 CONTINUE 151 : ELSE IF ( NSTRS .EQ. 4 .AND. (IFOUR .EQ. 0 152 : & .OR. IFOUR .EQ. -1)) THEN 153 : C calcul axisymetrique ou deformations planes 154 : DO 80 I=1,NSTRS 155 : SIGF(I)=RSIGF(I) 156 : DEFP(I)=RDEFP(I) 157 : 80 CONTINUE 158 : IF ( ABS(RSIGF(5)) .GT. 1.E-6 .OR. 159 : & ABS(RSIGF(6)) .GT. 1.E-6) THEN 160 : * PRINT* ,'Incompatibilite de la valeur des contraintes' 161 : KERRE = 99 161 : * CALL ERREUR(5) 162 : ENDIF 163 : ENDIF 164 : ENDIF 165 : C 166 : C WRITE (*,100) 'sig=' ,(SIGF(I),I=1,6) 167 : C WRITE (*,100) 'var=' ,(VARF(I),I=1,3) 168 : C WRITE (*,100) 'dep=' ,(DEFP(I),I=1,6) 169 : C 170 : 100 FORMAT (A,6(1PE14.7,1X)) 171 : RETURN 172 : END 173 : 174 : 175 : 176 : 177 : 178 :
© Cast3M 2003 - All rights reserved.
Disclaimer