Download betaxi.eso

Back to the list

   1 : C BETAXI    SOURCE    CHAT      05/01/12    21:38:40     5004           
   2 :       SUBROUTINE BETAXI(SIG0,NSTRS,DSIGT,VAR0,XMAT,IVAL,NCOMAT,XCAR,
   3 :      1  SIGF,VARF,DEFP,MFR,KERRE,ECOU,NECOU)                                               
   4 : C----------------------------------------------------------------------         
   5 : C             PLASTICITE MODELE BETON                                           
   6 : C                                                                               
   7 : C ENTREES                                                                       
   8 : C     SIG0(NSTRS)   = CONTRAINTES INITIALES
   9 : C     NSTRS         = NOMBRE DE CONTRAINTES
  10 : C     DSIGT(NSTRS)  = INCREMENT DE CONTRAINTES TOTALES
  11 : C     VAR0(NVARI)   =  VARIABLES INTERNES DEBUT
  12 : C     VAR0(   1 )   =  EPSE
  13 : C     VAR0(   2 )   =  DAM1
  14 : C     VAR0(   3 )   =  DAM2
  15 : C     VAR0(   4 )   =  DAM3
  16 : C     VAR0(   5 )   =  ANGL
  17 : C     VAR0(   6 )   =  LAM1
  18 : C     VAR0(   7 )   =  LAM2
  19 : C     VAR0(   8 )   =  LAM3
  20 : C     VAR0(   9 )   =  LAM4
  21 : C     VAR0(  10 )   =  LAM5
  22 : C     XMAT(NCOMAT)  =  COMPOSANTES DE MATERIAU
  23 : C     IVAL(NCOMAT)  =  INDICE DES COMPOSANTES DE MATERIAU
  24 : C     NCOMAT        = NOMBRE DE COMPOSANTES DE MATERIAU
  25 : C     XCAR(ICARA)   =  CARACTERISTIQUES
  26 : C     MFR           =  NUMERO DE LA FORMULATION DE L'ELEMENT FINI
  27 : C                   = 1       MASSIF
  28 : C                   = 3       COQUE MINCE ( COQ2 , COQ3  ET DKT )
  29 : C                   = 5       COQUE EPAISSE ( COQ6 , COQ8 )
  30 : C                   = 7       POUTRE
  31 : C                   = 9       COQUE MINCE AVEC CISAILLEMENT TRANSVERSE
  32 : C                                    ( COQ4 ET DST )
  33 : C                   = 11      LIQUIDE
  34 : C                   = 13      TUYAU
  35 : C                   = 15      LINESPRING
  36 : C                   = 17      TUYAU FISSURE
  37 : C                   = 19      RACCORD MASSIF
  38 : C                   = 21      RACCORD COQUE
  39 : C                   = 23      SURFACE LIBRE
  40 : C                   = 25      MEMBRANE
  41 : C                   = 27      UNIAXIALE
  42 : C                   = 29      THERMIQUE
  43 : C                   = 31      INCOMPRESSIBLES
  44 : C                   = 33      POREUX
  45 : C                   = 35      JOINT
  46 : C                   = 37      HOMOGENEISE
  47 : C                   = 39      TUYO
  48 : C                   = 41      TUYAU ACOUSTIQUE PURE
  49 : C                   = 43      RACCORD TUYAU FLUIDE
  50 : C  SORTIES                                                                      
  51 : C     SIGF(NSTRS)   = CONTRAINTES FINALES                                       
  52 : C     VARF(NVARI)   = VARIABLES INTERNES FINALES
  53 : C     DEFP(NSTRS)   = DEFORMATIONS PLASTIQUES                                   
  54 : C     KERRE         = 0    TOUT OK
  55 : C        1   SI DLAMBDA NEGATIF                                                 
  56 : C        2   NOMBRE MAX D ITERATIONS INTERNES DEPASSE                           
  57 : C       21   ON NE TROUVE PAS L INTERSECTION AVEC LA SURFACE DE CHARGE          
  58 : C       22   SIG0 A L EXTERIEUR DE LA SURFACE DE CHARGE                         
  59 : C                                                                               
  60 : C-----------------------------------------------------------------------        
  61 : C      VARIABLES PASSEES PAR LES COMMONS COPTIO , ECOU  ET NECOU                
  62 : C                                                                               
  63 : C  IFOUR    INDICE DU TYPE DE PROBLEME
  64 : C            -3  DEFORMATIONS PLANES GENERALISEES
  65 : C            -2  CONTRAINTES PLANES                                             
  66 : C            -1  DEFORMATIONS PLANES                                            
  67 : C             0  AXISYMETRIQUE                                                  
  68 : C             1  SERIE DE FOURIER                                               
  69 : C             2  TRIDIMENSIONNEL                                                
  70 : C  ITYP      TYPE DE FORMULATION MECANIQUE                                      
  71 : C  --------------- ATTENTION ---------------
  72 : C     IL EST ACTIF APRES L APPEL DE VISAVI
  73 : C  -----------------------------------------
  74 : C       ITYP=1   CAS DES ELEMENTS MASSIFS                                       
  75 : C       ITYP=2   CAS DES COQUES
  76 : C       ITYP=3   CAS DES MEMBRANES                                              
  77 : C       ITYP=4   CAS DES CABLES ET DES BARRES                                   
  78 : C       ITYP=5   CAS QUELCONQUE                                                 
  79 : C       ITYP=6   CAS DES CONTRAINTES PLANES                                     
  80 : C       ITYP=7   CAS DES COQUES A NU=0. OU CONTRAINTES PLANES                   
  81 : C       ITYP=8   CAS DES MEMBRANES A NU=0. OU CONTRAINTES PLANES                
  82 : C       ITYP=9   CAS DES COQUES EPAISSES                                        
  83 : C       ITYP=10  CAS DES JOINTS                                                 
  84 : C       ITYP=11  CAS DES POUTRES                                                
  85 : C       ITYP=12  CAS DES TUYAUX                                                 
  86 : C       ITYP=13  CAS DES COQUES AVEC CISAILLEMENT TRANSVERSE                    
  87 : C                                                                               
  88 : C-----------------------------------------------------------------------        
  89 : C                                                                               
  90 :       IMPLICIT INTEGER(I-N)
  91 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
  92 : -INC CCOPTIO 
  93 : 
  94 :        SEGMENT ECOU
  95 : ***     COMMON/ECOU/TEST,ALFAH, 
  96 :        REAL*8 TEST, ALFAH, 
  97 :      1 ecow1,ecow2,ecow3(6),ecow4(9),ecow5(6),                                                 
  98 : C     1 HPAS,TEMPS,COVNMS(6),VECPRO(9),VALPRO(6),   
  99 :      2 ecow6(12),ecow7(6),ecow8(6),ecow9(6),ecow10(6),ecow11(6),
 100 :      2 ecow12(6),                           
 101 : C     2 CVNMSD(12),STOT(6),SIGEL(6),DSIGP(6),SIGT(6),W1(6),W2(6), 
 102 :      1 ecow13(6),ecow14(6),ecow15(12),ecow16(3),               
 103 : C     1 DALPHA(6),EPSPLA(6),E(12),XINV(3),   
 104 :      2 ecow17(6),ecow18(6),ecow19,ecow20                                   
 105 : C     2 SIPLAD(6),DSIGP0(6),TET,TETI       
 106 :       ENDSEGMENT
 107 : 
 108 :       SEGMENT NECOU
 109 : *      COMMON/NECOU/NCOURB,IPLAST,IT,IMAPLA,ISOTRO,
 110 : *       INTEGER ncow1,  ncow2,ncow3,ncow4,  ncow5,
 111 :       INTEGER NCOURB,IPLAST,IT,   IMAPLA,ISOTRO,
 112 :      1 ITYP,ncow7, ncow8,
 113 : C    . ITYP, IFOURB,IFLUAG,
 114 :      2 ncow9,ncow10,ncow11,ncow12,ncow13,
 115 : C    . ICINE,ITHER, IFLUPL,ICYCL, IBI,
 116 :      3 ncow14,ncow15,ncow16,
 117 : C    . JFLUAG,KFLUAG,LFLUAG,
 118 :      4 ncow17,ncow18,ncow19,ncow20,ncow21
 119 : C    . IRELAX,JNTRIN,MFLUAG,JSOUFL,JGRDEF
 120 :       ENDSEGMENT
 121 : 
 122 :                                                                   
 123 : *      COMMON/ECOU/TEST,ALFAH,ZOZO(112)                                          
 124 : *      COMMON/NECOU/NCOURB,IPLAST,IT,IMAPLA,ISOTRO,ITYP,IZOZO(15)
 125 : C                                                                               
 126 :        DIMENSION SIG0(*),DSIGT(*),VAR0(*),XMAT(*),XCAR(*),IVAL(*)                
 127 :        DIMENSION SIGF(*),VARF(*),DEFP(*)                                         
 128 :        DIMENSION SIGMA(6),DSIGMA(6),STOT(6),SIGFIN(6)
 129 :        DIMENSION XLAMBD(5),DEFPLA(6),DSIGP(6)
 130 :        DIMENSION SPHER(6),AUXIL(6),DSIGZE(6),ORMAT(1)
 131 :       CHARACTER*8 CMATE
 132 :       CMATE='ISOTROPE'
 133 : C                                                                               
 134 : C TEST DE CONSISTANCE DES DONNEES                                               
 135 : C                                                                               
 136 :       DO 100 I=1,NCOMAT
 137 :       IF(XMAT(I).LT.0.D0) KERRE=437                                             
 138 :   100 CONTINUE                                                                  
 139 :       IF(KERRE.EQ.437) RETURN                                                   
 140 : C
 141 :       YOUN= 0.D0                                                                
 142 :       XNU = 0.D0                                                                
 143 :       RHO = 0.D0
 144 :       ALPH= 0.D0
 145 :       CTR1= 0.D0                                                                
 146 :       CTR2= 0.D0                                                                
 147 :       CTR3= 0.D0                                                                
 148 :       ANGL= 0.D0
 149 :       CLCS= 0.D0      
 150 :       EPCS= 0.D0
 151 :       CLCT= 0.D0
 152 :       PCT = 0.D0
 153 :       EPCT= 0.D0
 154 :       CLCD= 0.D0
 155 :       PCD = 0.D0
 156 :       EPCD= 0.D0
 157 :       CLPH= 0.D0
 158 :       PENT= 0.D0
 159 : C                      
 160 :       YOUN= XMAT(1)                                                             
 161 :       XNU = XMAT(2)                                                             
 162 :       RHO = XMAT(3)
 163 :       ALPH= XMAT(4)
 164 :       CTR1= XMAT(5)
 165 :       CTR2= XMAT(6)
 166 :       CTR3= XMAT(7)
 167 :       ANGL= XMAT(8)
 168 :       CLCS= XMAT(9)
 169 :       EPCS= XMAT(10)
 170 :       CLCT= XMAT(11)
 171 :       PCT = XMAT(12)
 172 :       CLCD= XMAT(13)
 173 :       PCD = XMAT(14)
 174 :       EPCD= XMAT(15)
 175 :       CLPH= XMAT(16)
 176 :       PENT= XMAT(17)
 177 : C                                                                               
 178 :       IF(IIMPI.EQ.9) WRITE(IOIMP,2007) (XMAT(I),I=1,17)
 179 :       IF(IIMPI.EQ.9) WRITE(IOIMP,2008) (IVAL(I),I=1,17)
 180 : C                                                                               
 181 : C                                                                               
 182 : C  PETIT TEST SUR NU POUR CERTAINS CAS                                          
 183 : C                                                                               
 184 :       IF(MFR.EQ.1.AND.(IFOUR.GE.-1.OR.IFOUR.EQ.-3)) THEN
 185 : C                                                                               
 186 : C VALEURS PAR DEFAUT
 187 : C                                                                               
 188 : C                  DONNEES GENERALES
 189 : C                                                                               
 190 :         IF(IVAL( 3).EQ.0) RHO =2.4D+3
 191 :         IF(IVAL( 4).EQ.0) ALPH=1.2D-5
 192 : C
 193 : C                  POUR LA TRACTION                                             
 194 : C                                                                               
 195 :         IF(IVAL( 5).EQ.0) CTR1=YOUN*1.2E-4
 196 :         IF(IVAL( 6).EQ.0) CTR2=CTR1
 197 :         IF(IVAL( 7).EQ.0) CTR3=CTR1
 198 : C                                                                               
 199 : C                  POUR LA COMPRESSION                                          
 200 : C                                                                               
 201 :         IF(IVAL( 9).EQ.0) CLCS=YOUN*1.2D-3
 202 :         IF(IVAL(10).EQ.0) EPCS=10.D0*CLCS/YOUN
 203 :         IF(IVAL(12).EQ.0) PCT=1.6D0*CLCS
 204 : C                                                                               
 205 : C                  BI-COMPRESSION
 206 : C                                                                               
 207 :         REP=EPCS*YOUN/CLCS
 208 :         AAA=CLCT/CLCS
 209 :         BBB=PCT/CLCS
 210 :         CCC=CLCT/PCT
 211 :         UMN=1.D0-XNU
 212 :         ALF=((REP-UMN-(SQRT(0.5D0*REP*UMN)))/(2.D0*REP-UMN))*0.95D0
 213 :         DDD=(1.D0-ALF)/(1.D0-2.D0*ALF)
 214 :         CLBI=DDD*CLCS
 215 : C
 216 : C                CISAILLEMENT FRAGILE
 217 : C
 218 :         IF(IVAL(11).EQ.0) THEN
 219 :           CCC=((1.D0+BBB)/BBB)+((3.D0*ALF)/(1.D0-ALF))
 220 :           CLCT=CCC*PCT
 221 :         ELSE IF(IVAL(12).EQ.0) THEN
 222 :           BBB=((AAA-1.D0)*(1.D0-ALF))/(1.D0+2.D0*ALF)
 223 :           PCT=BBB*CLCS
 224 :         ENDIF
 225 : C
 226 : C                CISAILLEMENT DUCTILE
 227 : C
 228 :         IF(IVAL(14).EQ.0) PCD=1.125D0*PCT
 229 :         CCC=CLCT/PCT
 230 :         EEE=PCD/PCT
 231 :         FFF=(((1.D0+2.D0*ALF)*(EEE-1.D0))/(EEE*(1.D0-ALF)))+(CCC/EEE)
 232 :         FFF=FFF/1.05D0
 233 :         IF(IVAL(13).EQ.0) CLCD=FFF*PCD
 234 :         IF(IVAL(15).EQ.0) EPCD=5.D0*EPCS
 235 : C
 236 : C                PRESSION HYDROSTATIQUE
 237 : C
 238 :         BBB=PCT/CLCS
 239 :         IF(IVAL(16).EQ.0) CLPH=(((CCC+2.D0)*BBB)/3.D0)*1.05D0*CLCS
 240 :         IF(IVAL(17).EQ.0) PENT=YOUN/(9.D0*(1.D0-2.D0*XNU))
 241 : C                                                                               
 242 : C INITIALISATION                                                                
 243 : C                                                                               
 244 :         JEPRIN = 0
 245 :         PREC=1.D-2
 246 :         RFPR=1.D-3
 247 :         RFEP=1.D-7
 248 :         RFSG=YOUN*RFEP
 249 : C                                                                               
 250 : C CALCUL ET TEST DES PARAMETRES DU BETON                                        
 251 : C                                                                               
 252 : C     CALCUL DES PENTES
 253 : C
 254 :         XK1=YOUN/(3.D0*(1.D0-2.D0*XNU))
 255 :         XK2=PENT
 256 :         EPSA=CLCS/YOUN
 257 :         EPSB=(CLCT-PCT)/YOUN
 258 :         EPSC=(CLCD-PCD)/YOUN
 259 :         PENTE1=(CLCD-PCD-CLCT+PCT)/(EPCD-EPSB)
 260 :         PENTE1=(YOUN*PENTE1)/(YOUN-PENTE1)
 261 :         PENTE2=-CLCS/(EPCS-EPSA)
 262 :         PENTE2=(YOUN*PENTE2)/(YOUN-PENTE2)
 263 :         PENTE3=XK1*XK2/(XK1-XK2)
 264 : C
 265 :         CLCS=-CLCS
 266 :         CLCSA=CLCS*RFEP
 267 :         CLCT=-CLCT
 268 :         CLCD=-CLCD
 269 :         PCT=-PCT
 270 :         PCD=-PCD
 271 :         EPSA=-EPSA
 272 :         EPSB=-EPSB
 273 :         EPSC=-EPSC
 274 :         EPCD=-EPCD
 275 :         EPCS=-EPCS
 276 : C
 277 : C     CALCUL DES CONSTANTES
 278 : C
 279 :         XI1A=CLCS
 280 :         XI1AA=CLCSA
 281 :         XI1B=CLCT+2.D0*PCT
 282 :         XI1C=CLCD+2.D0*PCD
 283 :         SEQA=ABS(CLCS)
 284 :         SEQAA=ABS(CLCSA)
 285 :         SEQB=ABS(CLCT-PCT)
 286 :         SEQC=ABS(CLCD-PCD)
 287 : C
 288 :         VMELAS=SEQB
 289 : C
 290 :         ALFADV=(SEQC-SEQB)/(XI1B-XI1C)
 291 :         DPELAS=ALFADV*XI1B+SEQB
 292 : C
 293 :         ALFAD1=(SEQB-SEQAA)/(XI1AA-XI1B)
 294 :         DPELA1=ALFAD1*XI1B+SEQB
 295 : C
 296 :         ALFAD2=(SEQB-SEQA)/(XI1A-XI1B)
 297 :         DPELA2=ALFAD2*XI1B+SEQB
 298 :         PENTE2=PENTE2*(ALFAD2-1.D0)*(ALFAD2-1.D0)
 299 : C
 300 :         PORELA=CLPH
 301 : C
 302 :         UMU=YOUN/(1.D0+XNU)/2.D0
 303 :         ALAM=2.D0*UMU*XNU/(1.-2.D0*XNU)
 304 :         CPLA=YOUN/(1.D0-(XNU*XNU))
 305 : C
 306 :         TRTRAC=CTR1+CTR2+CTR3
 307 :         XLAMER=(ALFAD2*TRTRAC-DPELA2)/PENTE2
 308 :         XLAMAX=(ALFAD2*DPELA1-ALFAD1*DPELA2)/(ALFAD1*PENTE2)
 309 :         DP2MIN=DPELA1*ALFAD2/ALFAD1
 310 : C
 311 :         SIGT=TRTRAC*0.333333333333333333333333333333333D0
 312 :         PMIN=-XI1B*0.333333333333333333333333333333333D0
 313 :         SIG1=(DPELA2-(2.D0*ALFAD2+1.D0)*PCD)/(ALFAD2-1.D0)
 314 :         SIG3=(DPELA2-(ALFAD2-1.D0)*CLCD)/(2.D0*ALFAD2+1.D0)
 315 : C                                                                               
 316 : C     TEST SUR LES VALEURS DES PARAMETRES                                       
 317 : C                                                                               
 318 :         IF(CLCT.GT.CLCS.OR.CLCT.LT.CLCD) THEN
 319 :           KERRE=640
 320 :           WRITE(IOIMP,5010) ABS(CLCT),ABS(CLCS),ABS(CLCD)
 321 :         ENDIF
 322 : C
 323 :         IF(PCT.LT.PCD) THEN
 324 :           KERRE=640
 325 :           WRITE(IOIMP,5011) ABS(PCT),ABS(PCD)
 326 :         ENDIF
 327 : C
 328 :         IF(EPCS.GE.EPSA) THEN
 329 :           KERRE=640
 330 :           WRITE(IOIMP,5012) ABS(EPCS),ABS(EPSA)
 331 :         ENDIF
 332 : C
 333 :         IF(EPCD.GE.EPSC) THEN
 334 :           KERRE=640
 335 :         WRITE(IOIMP,5013)ABS(EPCD),ABS(EPSC)
 336 :         ENDIF
 337 : C
 338 :         IF(ALFADV.LT.0.D0) THEN
 339 :           KERRE=640
 340 :           WRITE(IOIMP,5017)
 341 :         ENDIF
 342 : C
 343 :         IF(ALFAD1.LT.0.D0.OR.ALFAD2.LT.0.D0) THEN
 344 :           KERRE=640
 345 :           WRITE(IOIMP,5018)
 346 :         ENDIF
 347 : C
 348 :         IF(ABS(CLCS).LT.SIGT) THEN
 349 :           KERRE=640
 350 :           WRITE(IOIMP,5014) ABS(CLCS),SIGT
 351 :         ENDIF
 352 : C
 353 :         IF(PMIN.GE.PORELA) THEN
 354 :           KERRE=640
 355 :           WRITE(IOIMP,5015) PMIN
 356 :         ENDIF
 357 : C
 358 :         IF(ALFAD1.GE.0.5D0) THEN
 359 :           KERRE=640
 360 :           WRITE(IOIMP,5019) ABS(CLCT),(4*ABS(PCT))
 361 :          ENDIF
 362 : C
 363 :         IF(DPELA2.GE.DPELAS) THEN
 364 :           KERRE=640
 365 :           WRITE(IOIMP,5020) ABS(CLCD),ABS(SIG1),ABS(PCD),ABS(SIG3)
 366 :         ENDIF
 367 : C
 368 :         IF(XK2.GE.XK1) THEN
 369 :           KERRE=640
 370 :           WRITE(IOIMP,5021) XK2,XK1
 371 :         ENDIF
 372 : C
 373 :         ECR2=(2.D0*YOUN*(0.5D0-ALFAD2)*(0.5D0-ALFAD2))/(1.D0-XNU)
 374 :         IF(ABS(PENTE2).GT.ECR2) THEN
 375 :           KERRE=640
 376 :           WRITE(IOIMP,5016) ABS(PENTE2),ECR2
 377 :         ENDIF
 378 : C
 379 :         ECR3=(1.5D0/(1.D0+XNU))+(3.D0*ALFAD2*ALFAD2/(1.D0-2.D0*XNU))
 380 :         ECR3=ECR3*YOUN
 381 :         IF(ABS(PENTE2).GT.ECR3) THEN
 382 :           KERRE=640
 383 :           WRITE(IOIMP,5022) ABS(PENTE2),ECR3
 384 :         ENDIF
 385 : C                                                                               
 386 :         IF(KERRE.NE.0) RETURN
 387 : C                                                                               
 388 : C ECOULEMENT PLASTIQUE                                                          
 389 : C                                                                               
 390 :   333   MCOD=1
 390 :         CALL VISAVI(SIG0,DSIGT,VAR0,SIGMA,DSIGMA,SPHER,AUXIL,
 391 :      .          SIGF,DEFP,VARF,SIGFIN,DEFPLA,
 392 :      .        DSIGZE,ICENT2,MCOD,IBOU,MFR,NSTRS,XCAR,CMATE,ecou,necou)
 393 :         IF(ITYP.EQ.0) THEN
 394 :           KERRE=269
 395 :           RETURN
 396 :         ENDIF
 397 : C                                                                               
 398 : C IMPRESSION DES PARAMETRES DU MODELE                                           
 399 : C                                                                               
 400 :         IF(IIMPI.EQ.9) THEN
 401 :           WRITE(IOIMP,1000)
 402 :           WRITE(IOIMP,1001) YOUN
 403 :           WRITE(IOIMP,1002) XNU
 404 :           WRITE(IOIMP,1003) RHO
 405 :           WRITE(IOIMP,1004) ALPH
 406 :           WRITE(IOIMP,1005)
 407 :           WRITE(IOIMP,1006) CTR1,CTR2,CTR3
 408 :           WRITE(IOIMP,1007) ANGL
 409 :           WRITE(IOIMP,1008)
 410 :           WRITE(IOIMP,1009) ABS(CLCS),ABS(EPCS)
 411 :           WRITE(IOIMP,1010) ABS(CLBI)
 412 :           WRITE(IOIMP,1011)
 413 :           WRITE(IOIMP,1012) ABS(CLCT),ABS(PCT)
 414 :           WRITE(IOIMP,1013) ABS(CLCD),ABS(PCD),ABS(EPCD)
 415 :           WRITE(IOIMP,1014)
 416 :           WRITE(IOIMP,1015) CLPH,PENT
 417 :         ENDIF
 418 : C                                                                               
 419 : C INITIALISATIONS DES PARAMETRES                                                
 420 : C                                                                               
 421 :         EPSE=VAR0(1)
 422 :         IF(CTR1.GT.0.D0) RT1=(1.D0-VAR0(2))*CTR1
 423 :         IF(CTR1.LE.0.D0) RT1=0.D0
 424 :         IF(CTR2.GT.0.D0) RT2=(1.D0-VAR0(3))*CTR2
 425 :         IF(CTR2.LE.0.D0) RT2=0.D0
 426 :         IF(CTR3.GT.0.D0) RT3=(1.D0-VAR0(4))*CTR2
 427 :         IF(CTR3.LE.0.D0) RT3=0.D0
 428 :         ANGLE=VAR0(5)
 429 :         IF(IVAL( 8).NE.0) ANGLE=ANGL
 430 :         XLAMBD(1)=VAR0(6)
 431 :         XLAMBD(2)=VAR0(7)
 432 :         XLAMBD(3)=VAR0(8)
 433 :         XLAMBD(4)=VAR0(9)
 434 :         XLAMBD(5)=VAR0(10)
 435 : C                                                                               
 436 :         IFIS=0
 437 :         IF((RT1.EQ.0.D0.OR.RT2.EQ.0.D0).AND.ANGLE.NE.0.D0) IFIS=1
 438 :         IF(IVAL( 8).NE.0) IFIS=1
 439 : C                                                                               
 440 :         IDED=0
 441 :         IF(XLAMBD(3).GT.0.D0) IDED=IDED+1
 442 :         IF(XLAMBD(5).GT.0.D0) IDED=IDED+2
 443 : C
 444 :         DO 200 IB=1,IBOU                                                        
 445 :         STOT(IB)=SIGMA(IB)+DSIGMA(IB)                                           
 446 :   200   CONTINUE                                                                
 447 : C                                                                               
 448 : C ECOULEMENT PLASTIQUE                                                          
 449 : C                                                                               
 450 :         IF(IIMPI.EQ.9) THEN                                                     
 451 :           WRITE(IOIMP,2000)                                                     
 452 :           WRITE(IOIMP,2001) (SIGMA(I),I=1,IBOU)                                 
 453 :           WRITE(IOIMP,2002) (DSIGMA(I),I=1,IBOU)                                
 454 :           WRITE(IOIMP,2003) (STOT(I),I=1,IBOU)                                  
 455 :           WRITE(IOIMP,2006) (XLAMBD(I),I=1,5)
 456 :           WRITE(IOIMP,2010) RT1,RT2,RT3
 457 :         ENDIF                                                                   
 458 : C                                                                               
 458 :         CALL DAMAGE(ALFADV,ALFAD1,ALFAD2,VMELAS,DPELAS,
 459 :      .              DPELA1,DPELA2,PORELA,RT1,RT2,RT3,
 460 :      .              PENTE1,PENTE2,PENTE3,XLAMBD,SIGMA,DSIGMA,STOT,
 461 :      .              SIGFIN,ANGLE,YOUN,XNU,XLAMER,XLAMAX,DP2MIN,
 462 :      .              PREC,RFSG,RFEP,RFPR,IFIS,IDED,IDAM,KERRE)
 463 : 
 464 : C                                                                               
 465 :         IF(IIMPI.EQ.9) WRITE(IOIMP,2011) IDAM
 466 : C                                                                               
 467 :         IF(KERRE.NE.0) THEN
 468 :            IF(JEPRIN.EQ.0) THEN
 469 :              KERRE=0
 470 :              JEPRIN=1
 471 :              IIMPI=9
 472 :              GO TO 333
 473 :            ELSE
 474 :              IIMPI=0
 475 :              RETURN
 476 :            ENDIF
 477 :         ENDIF
 478 : C                                                                               
 479 : C PAS DE PLASTICITE COMPORTEMENT ELASTIQUE                                      
 480 : C                                                                               
 481 :         IF(IDAM.EQ.1) THEN
 482 :           DO 300 IB=1,IBOU                                                      
 483 :           SIGFIN(IB)=STOT(IB)                                                   
 484 :           DEFPLA(IB)=0.D0                                                       
 485 :   300     CONTINUE                                                              
 486 :         DEPSEQ=0.D0
 487 : C
 488 :         ELSE
 489 : C                                                                               
 490 : C NOUS AVONS ENDOMMAGE LE MATERIAU                                              
 491 : C                                                                               
 492 : C       CALCUL DE DEFORMATION PLASTIQUE                                         
 493 : C                                                                               
 494 :         DO 400 IB=1,IBOU
 495 :         DSIGP(IB)=STOT(IB)-SIGFIN(IB)
 496 :   400   CONTINUE
 496 :         CALL EPSIG(DSIGP,DEFPLA,IFOUR,YOUN,XNU,ITYP,ORMAT,XCAR)
 497 :         DEPSEQ=SQRT(AVM(DEFPLA,DEFPLA))
 498 : C                                                                               
 499 :         ENDIF                                                                   
 500 : C                                                                               
 501 :         IF(IIMPI.EQ.9) THEN                                                     
 502 :           WRITE(IOIMP,2000)                                                     
 503 :           WRITE(IOIMP,2001) (SIGMA(I),I=1,IBOU)                                 
 504 :           WRITE(IOIMP,2002) (DSIGMA(I),I=1,IBOU)                                
 505 :           WRITE(IOIMP,2003) (STOT(I),I=1,IBOU)                                  
 506 :           WRITE(IOIMP,2004) (SIGFIN(I),I=1,IBOU)                                
 507 :           WRITE(IOIMP,2005) (DEFPLA(I),I=1,IBOU)                                
 508 :           WRITE(IOIMP,2006) (XLAMBD(I),I=1,5)
 509 :         ENDIF                                                                   
 510 : C
 511 : C MISE A JOUR DES VARIABLES INTERNES                                            
 512 : C                                                                               
 513 :         VARF(1)=EPSE+DEPSEQ
 514 :         IF(CTR1.GT.0.D0) VARF(2)=1.D0-RT1/CTR1
 515 :         IF(CTR1.LE.0.D0) VARF(2)=1.D0
 516 :         IF(CTR2.GT.0.D0) VARF(3)=1.D0-RT2/CTR2
 517 :         IF(CTR2.LE.0.D0) VARF(3)=1.D0
 518 :         IF(CTR3.GT.0.D0) VARF(4)=1.D0-RT3/CTR3
 519 :         IF(CTR3.LE.0.D0) VARF(4)=1.D0
 520 :         VARF(5)=ANGLE
 521 :         VARF(6)=XLAMBD(1)
 522 :         VARF(7)=XLAMBD(2)
 523 :         VARF(8)=XLAMBD(3)
 524 :         VARF(9)=XLAMBD(4)
 525 :         VARF(10)=XLAMBD(5)
 526 : C                                                                               
 527 :         IF(IIMPI.EQ.9) WRITE(IOIMP,2009) EPSE,DEPSEQ,VARF(1)
 528 : C                                                                               
 529 :          MCOD=2
 529 :         CALL VISAVI(SIG0,DSIGT,VAR0,SIGMA,DSIGMA,SPHER,AUXIL,
 530 :      .          SIGF,DEFP,VARF,SIGFIN,DEFPLA,
 531 :      .        DSIGZE,ICENT2,MCOD,IBOU,MFR,NSTRS,XCAR,CMATE,ecou,necou)
 532 : C
 533 :       ELSE                                                                      
 534 :         KERRE=639
 535 :         RETURN                                                                  
 536 :       ENDIF                                                                     
 537 : C                                                                               
 538 : C                                                                               
 539 : C LES FORMATS D IMPRESSION                                                      
 540 : C                                                                               
 541 :  1000 FORMAT(//,31X,'MATERIAU BETON',//)
 542 :  1001 FORMAT(6X,'MODULE D YOUNG  ',T51,'= ',1PD12.5)
 543 :  1002 FORMAT(6X,'COEF. DE POISSON',T51,'= ',1PD12.5)                            
 544 :  1003 FORMAT(6X,'MASSE VOLUMIQUE ',T51,'= ',1PD12.5)
 545 :  1004 FORMAT(6X,'COEF. DE DILATATION THERMIQUE',T51,'= ',1PD12.5)
 546 :  1005 FORMAT(/,1X,'DOMMAGE PAR TRACTION :',/)
 547 :  1006 FORMAT(6X,'CONTRAINTES LIMITES :',/
 548 :      *     11X,'DIRECTION(1) = ',1PD12.5,                                       
 549 :      *      5X,'DIRECTION(2) = ',1PD12.5,5X,'DIRECTION(3) = ',1PD12.5/)         
 550 :  1007 FORMAT(6X,'ANGLE DE FISSURATION',T51,'= ',1PD12.5/)
 551 :  1008 FORMAT(/,1X,'DOMMAGE PAR COMPRESSION :',/)
 552 :  1009 FORMAT(6X,'COMPRESSION SIMPLE :',/
 553 :      *     11X,'CONTRAINTE LIMITE = ',1PD12.5,                                  
 554 :      *      5X,'DEFORMATION A RUPTURE   = ',1PD12.5/)                           
 555 :  1010 FORMAT(6X,'COMPRESSION BIAXIALE :',/
 556 :      *     11X,'CONTRAINTE LIMITE = ',1PD12.5/)                                 
 557 :  1011 FORMAT(/,1X,'DOMMAGE PAR CISAILLEMENT :',/)
 558 :  1012 FORMAT(6X,'SOUS CONFINEMENT DE TRANSITION :',/
 559 :      *     11X,'CONTRAINTE LIMITE = ',1PD12.5,
 560 :      *      5X,'PRESSION DE CONFINEMENT = ',1PD12.5/)
 561 :  1013 FORMAT(6X,'SOUS CONFINEMENT DUCTILE :',/
 562 :      *     11X,'CONTRAINTE LIMITE = ',1PD12.5,
 563 :      *      5X,'PRESSION DE CONFINEMENT = ',1PD12.5,/
 564 :      *     11X,'DEFORMATION AU DEBUT DU PALIER PLASTIQUE = ',1PD12.5/)
 565 :  1014 FORMAT(/,1X,'DOMMAGE PAR PRESSION HYDROSTATIQUE :',/)
 566 :  1015 FORMAT(6X,'PRESSION LIMITE = ',1PD12.5,
 567 :      *     12X,'MODULE TANGENT = ',1PD12.5,//)
 568 : C                                                                               
 569 :  2000 FORMAT(1X,'RESULTATS DE L ECOULEMENT PLASTIQUE')                          
 570 :  2001 FORMAT(1X,'SIGMA  =',6(1X,1PD12.5))                                       
 571 :  2002 FORMAT(1X,'DSIGMA =',6(1X,1PD12.5))                                       
 572 :  2003 FORMAT(1X,'STOT   =',6(1X,1PD12.5))                                       
 573 :  2004 FORMAT(1X,'SIGFIN =',6(1X,1PD12.5))                                       
 574 :  2005 FORMAT(1X,'DEFPLA =',6(1X,1PD12.5))                                       
 575 :  2006 FORMAT(1X,'XLAMBD =',5(1X,1PD12.5))
 576 :  2007 FORMAT(7(6(1X,1PD12.5),/))                                                  
 577 :  2008 FORMAT(7(6(1X,I12),/))                                                    
 578 :  2009 FORMAT(1X,'EPSE0  =',1X,1PD12.5,1X,'DEPSEQ=',1X,1PD12.5,
 579 :      .       1X,'EPSE   =',1X,1PD12.5)
 580 :  2010 FORMAT(1X,'RT1    =',1X,1PD12.5,1X,'RT2   =',1X,1PD12.5,
 581 :      .       1X,'RT3    =',1X,1PD12.5)
 582 :  2011 FORMAT(1X,'INDICE D ENDOMMAGEMENT IDAM  =',I4)
 583 : C
 584 :  5010 FORMAT(1X,'ERREUR LA LIMITE LCT =',1PD12.5,' DOIT ETRE COMPRISE',
 585 :      .     /,1X,'ENTRE LCS =',1PD12.5,' ET LCD =',1PD12.5)
 586 :  5011 FORMAT(1X,'ERREUR LE CONFINEMENT PCT =',1PD12.5,' DOIT ETRE ',/,
 587 :      .       1X,'INFERIEUR A PCD =',1PD12.5)
 588 :  5012 FORMAT(1X,'ERREUR LA DEFORMATION A RUPTURE EN COMPRESSION SIMPLE'
 589 :      .         ,' EST MAUVAISE',/,
 590 :      .       1X,'EPCS =',1PD12.5,' DOIT ETRE SUPERIEURE A ',1PD12.5)
 591 :  5013 FORMAT(1X,'ERREUR LA DEFORMATION A RUPTURE EN COMPRESSION DUCTILE'
 592 :      .         ,' EST MAUVAISE',/,
 593 :      .       1X,'EPCD =',1PD12.5,' DOIT ETRE SUPERIEURE A ',1PD12.5)
 594 :  5014 FORMAT(1X,'ERREUR LA LIMITE EN COMPRESSION SIMPLE LCS =',1PD12.5,
 595 :      .     /,1X,'DOIT ETRE SUPERIREURE A LA LIMITE EN TRACTION LCT =',
 596 :      .           D12.5)
 597 :  5015 FORMAT(1X,'ERREUR LA LIMITE EN PRESSION HYDROSTATIQUE SE TROUVE',
 598 :      .          ' DANS LE DOMAINE FRAGILE',/,
 599 :      .       1X,'IL FAUT AUGMENTER LPH POUR QU''ELLE SOIT SUPERIEURE ',
 600 :      .          'A PMIN =',1PD12.5)
 601 :  5016 FORMAT(1X,'ERREUR MODULE D ECROUISSAGE DU DRUCKER EST TROP GRAND',
 602 :      .          ' =',1PD12.5,/,
 603 :      .       1X,'PENTE2 < 2 * E * (0.5 - ALFAD2 ) ** 2 / (1-NU) ',
 604 :      .          'DONC PENTE2 MAX VAUT =',1PD12.5)
 605 :  5017 FORMAT(1X,'ERREUR LA VALEUR DE ( LCD - PCD ) DOIT ETRE ',
 606 :      .          'SUPERIEURE A ( LCT - PCT )')
 607 :  5018 FORMAT(1X,'ERREUR LA VALEUR DE ( LCT - PCT ) DOIT ETRE ',
 608 :      .          'SUPERIEURE A LCS')
 609 :  5019 FORMAT(1X,'ERREUR LA LIMITE LCT =',1PD12.5,'DOIT ETRE INFERIEURE',
 610 :      .          ' A',1PD12.5)
 611 :  5020 FORMAT(1X,'ERREUR LA LIMITE LCD =',1PD12.5,'DOIT ETRE INFERIEURE',
 612 :      .          ' A',1PD12.5,'   OU BIEN  :',/,
 613 :      .       1X,'LE CONFINEMENT PCD =',1PD12.5,' DOIT ETRE SUPERIEURE',
 614 :      .          ' A',1PD12.5)
 615 :  5021 FORMAT(1X,'ERREUR LA PENTE DE LA PRESSION HYDROSTATIQUE ',
 616 :      .          'EST MAUVAISE',/,
 617 :      .       1X,'PENT =',1PD12.5,' DOIT ETRE INFERIEURE A ',1PD12.5)
 618 :  5022 FORMAT(1X,'ERREUR MODULE D ECROUISSAGE DU DRUCKER EST TROP GRAND',
 619 :      .           ' =',1PD12.5,/,
 620 :      .       1X,'PENTE2 < 1.5*E/(1+NU) + 3*ALFAD2**2*E/(1-2*NU) ',
 621 :      .          'DONC PENTE2 MAX VAUT ',1PD12.5)
 622 : C                                                                               
 623 :       RETURN                                                                    
 624 :       END                                                                       
 625 :  
 626 :  
 627 : 
 628 : 
 629 : 
 630 : 
 631 : 
 632 :  
 633 :  

© Cast3M 2003 - All rights reserved.
Disclaimer