Download beton.eso

Back to the list

   1 : C BETON     SOURCE    AM        08/12/19    21:15:07     6237           
   2 :       SUBROUTINE BETON(SIG0,DEPST,VAR0,XMAT,IVAL,NCOMAT,XCAR,             
   3 :      1   DDAUX,CMATE,VALMAT,VALCAR,N2EL,N2PTEL,IB,IGAU,EPAIST,
   4 :      2   MELE,NPINT,SECT,LHOOK,TXR,XLOC,XGLOB,D1HOOK,
   5 :      3   ROTHOO,DDHOMU,CRIGI,DSIGT,SIGF,VARF,DEFP,NBPGAU,KERRE
   6 :      4, ecou,necou,iecou)
   7 : C
   8 : C----------------------------------------------------------------------         
   9 : C             PLASTICITE MODELE BETON                                           
  10 : C                                                                               
  11 : C ENTREES                                                                       
  12 : C     SIG0(NSTRS)   = CONTRAINTES INITIALES
  13 : C     NSTRS         = NOMBRE DE CONTRAINTES
  14 : C     DEPST(NSTRS)  = INCREMENT DE CONTRAINTES TOTALES
  15 : C     VAR0(NVARI)   =  VARIABLES INTERNES DEBUT
  16 : C     VAR0(   1 )   =  EPSE
  17 : C     VAR0(   2 )   =  DAM1
  18 : C     VAR0(   3 )   =  DAM2
  19 : C     VAR0(   4 )   =  DAM3
  20 : C     VAR0(   5 )   =  OUV1
  21 : C     VAR0(   6 )   =  OUV2
  22 : C     VAR0(   7 )   =  OUV3
  23 : C     VAR0(   8 )   =  LAMD
  24 : C     VAR0(   9 )   =  VF1(1)
  25 : C     VAR0(  10 )   =  VF1(2)
  26 : C     VAR0(  11 )   =  VF1(3)
  27 : C     VAR0(  12 )   =  VF2(1)
  28 : C     VAR0(  13 )   =  VF2(2)
  29 : C     VAR0(  14 )   =  VF2(3)
  30 : C     VAR0(  15 )   =  VF3(1)
  31 : C     VAR0(  16 )   =  VF3(2)
  32 : C     VAR0(  17 )   =  VF3(3)
  33 : C     XMAT(NCOMAT)  =  COMPOSANTES DE MATERIAU
  34 : C     IVAL(NCOMAT)  =  INDICE DES COMPOSANTES DE MATERIAU
  35 : C     NCOMAT        = NOMBRE DE COMPOSANTES DE MATERIAU
  36 : C     XCAR(ICARA)   =  CARACTERISTIQUES
  37 : C     MFR           =  NUMERO DE LA FORMULATION DE L'ELEMENT FINI
  38 : C                   = 1       MASSIF
  39 : C                   = 3       COQUE MINCE ( COQ2 , COQ3  ET DKT )
  40 : C                   = 5       COQUE EPAISSE ( COQ6 , COQ8 )
  41 : C                   = 7       POUTRE
  42 : C                   = 9       COQUE MINCE AVEC CISAILLEMENT TRANSVERSE
  43 : C                                    ( COQ4 ET DST )
  44 : C                   = 11      LIQUIDE
  45 : C                   = 13      TUYAU
  46 : C                   = 15      LINESPRING
  47 : C                   = 17      TUYAU FISSURE
  48 : C                   = 19      RACCORD MASSIF
  49 : C                   = 21      RACCORD COQUE
  50 : C                   = 23      SURFACE LIBRE
  51 : C                   = 25      MEMBRANE
  52 : C                   = 27      UNIAXIALE
  53 : C                   = 29      THERMIQUE
  54 : C                   = 31      INCOMPRESSIBLES
  55 : C                   = 33      POREUX
  56 : C                   = 35      JOINT
  57 : C                   = 37      HOMOGENEISE
  58 : C                   = 39      TUYO
  59 : C                   = 41      TUYAU ACOUSTIQUE PURE
  60 : C                   = 43      RACCORD TUYAU FLUIDE
  61 : *    DDAUX = MATRICE DE HOOKE ELASTIQUE
  62 : *    NSTRS = NBRE DE COMPOSANTES DES DEFORMATIONS
  63 : *    CMATE = NOM DU MATERIAU
  64 : *    VALMAT= TABLEAU DE CARACTERISTIQUES DU MATERIAU
  65 : *    VALCAR= TABLEAU DE CARACTERISTIQUES GEOMETRIQUES
  66 : *    N2EL  = NBRE D ELEMENTS DANS SEGMENT DE HOOKE
  67 : *    N2PTEL= NBRE DE POINTS DANS SEGMENT DE HOOKE
  68 : *    MFR   = NUMERO DE LA FORMULATION
  69 : *    IFOU  = 
  70 : *    IB    = NUMERO DE L ELEMENT COURANT
  71 : *    IGAU  = NUMERO DU POINT COURANT
  72 : *    EPAIST= EPAISSEUR
  73 : *    NBPGAU= NBRE DE POINTS DE GAUSS
  74 : *    MELE  = NUMERO DE L ELEMENT FINI
  75 : *    NPINT = NBRE DE POINTS D INTEGRATION
  76 : *    NBGMAT= NBRE DE POINTS DANS SEGMENT DE CARACTERISTIQUES
  77 : *    NELMAT= NBRE D ELEMENTS DANS SEGMENT DE CARACTERISTIQUES
  78 : *    SECT  = SECTION
  79 : *    LHOOK = TAILLE DE LA MATRICE DE HOOKE
  80 : *    TXR,XLOC,XGLOB,D1HOOK,ROTHOO,DDHOMU,CRIGI = TABLEAUX UTILISES
  81 : *    POUR LE CALCUL DE LA MATRICE DE HOOKE
  82 : C
  83 : C  SORTIES                                                                      
  84 : C     SIGF(NSTRS)   = CONTRAINTES FINALES                                       
  85 : C     VARF(NVARI)   = VARIABLES INTERNES FINALES
  86 : C     DEFP(NSTRS)   = DEFORMATIONS PLASTIQUES                                   
  87 : C     KERRE         = 0    TOUT OK
  88 : C        1   SI DLAMBDA NEGATIF                                                 
  89 : C        2   NOMBRE MAX D ITERATIONS INTERNES DEPASSE                           
  90 : C       21   ON NE TROUVE PAS L INTERSECTION AVEC LA SURFACE DE CHARGE          
  91 : C       22   SIG0 A L EXTERIEUR DE LA SURFACE DE CHARGE                         
  92 : C                                                                               
  93 : C-----------------------------------------------------------------------        
  94 : C      VARIABLES PASSEES PAR LES COMMONS COPTIO , ECOU  ET NECOU                
  95 : C                                                                               
  96 : C  IFOUR    INDICE DU TYPE DE PROBLEME
  97 : C            -3  DEFORMATIONS PLANES GENERALISEES
  98 : C            -2  CONTRAINTES PLANES                                             
  99 : C            -1  DEFORMATIONS PLANES                                            
 100 : C             0  AXISYMETRIQUE                                                  
 101 : C             1  SERIE DE FOURIER                                               
 102 : C             2  TRIDIMENSIONNEL                                                
 103 : C  ITYP      TYPE DE FORMULATION MECANIQUE                                      
 104 : C  --------------- ATTENTION ---------------
 105 : C     IL EST ACTIF APRES L APPEL DE VISAVI
 106 : C  -----------------------------------------
 107 : C       ITYP=1   CAS DES ELEMENTS MASSIFS                                       
 108 : C       ITYP=2   CAS DES COQUES
 109 : C       ITYP=3   CAS DES MEMBRANES                                              
 110 : C       ITYP=4   CAS DES CABLES ET DES BARRES                                   
 111 : C       ITYP=5   CAS QUELCONQUE                                                 
 112 : C       ITYP=6   CAS DES CONTRAINTES PLANES                                     
 113 : C       ITYP=7   CAS DES COQUES A NU=0. OU CONTRAINTES PLANES                   
 114 : C       ITYP=8   CAS DES MEMBRANES A NU=0. OU CONTRAINTES PLANES                
 115 : C       ITYP=9   CAS DES COQUES EPAISSES                                        
 116 : C       ITYP=10  CAS DES JOINTS                                                 
 117 : C       ITYP=11  CAS DES POUTRES                                                
 118 : C       ITYP=12  CAS DES TUYAUX                                                 
 119 : C       ITYP=13  CAS DES COQUES AVEC CISAILLEMENT TRANSVERSE                    
 120 : C                                                                               
 121 : C-----------------------------------------------------------------------        
 122 : C                                                                               
 123 :       IMPLICIT INTEGER(I-N)
 124 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
 125 : -INC CCOPTIO 
 126 :        SEGMENT IECOU
 127 : *      COMMON/IECOU/NYOG,NYNU,NYALFA,NYSMAX,NYN,NYM,NYKK,
 128 :        INTEGER icow1,icow2,icow3,icow4,icow5,icow6,icow7,
 129 : C      INTEGER NYOG, NYNU, NYALFA,NYSMAX,NYN, NYM,  NYKK,
 130 :      1  icow8,icow9,icow10,icow11,icow12,icow13,icow14,icow15,icow16,
 131 : C    .  NYALF1,NYBET1,NYR,  NYA,   NYRHO,NSIGY,  NNKX,  NYKX,  IND,
 132 :      2 icow17,icow18,icow19,icow20,icow21,icow22,icow23,icow24,
 133 : C    .  NSOM,  NINV, NINCMA,NCOMP, JELEM, LEGAUS,INAT,  NCXMAT,
 134 :      3 icow25,icow26,icow27,icow28,icow29,icow30,icow31,
 135 : C    .  LTRAC, MFR,  IELE,  NHRM,   NBNN, NBELEM,ICARA,
 136 :      4  icow32,icow33,NSTRS,MFR,NBGMAT,NELMAT,icow38,
 137 : C    .  LW2,   NDEF,  NSTRSS,MFR1,  NBGMAT,NELMAT,MSOUPA,
 138 :      5  icow39,icow40,icow41,icow42,icow43,icow44
 139 : C    .  NUMAT1,LENDO, NBBB,  NNVARI,KERR1, MELEME
 140 :         INTEGER icow45,icow46,icow47,icow48,icow49,icow50,
 141 :      .          icow51,icow52,icow53,icow54,icow55,icow56
 142 :      .          icow57,icow58
 143 :       ENDSEGMENT
 144 :  
 145 :         SEGMENT ECOU
 146 : ***     COMMON/ECOU/TEST,ALFAH, 
 147 : *       REAL*8 ecow00,ecow0,
 148 :       REAL*8 TEST, ALFAH, 
 149 :      1 ecow1,ecow2,ecow3(6),ecow4(9),ecow5(6),                                                 
 150 : C     1 HPAS,TEMPS,COVNMS(6),VECPRO(9),VALPRO(6),   
 151 :      2 ecow6(12),ecow7(6),ecow8(6),ecow9(6),ecow10(6),ecow11(6),
 152 :      2 ecow12(6),                           
 153 : C     2 CVNMSD(12),STOT(6),SIGEL(6),DSIGP(6),SIGT(6),W1(6),W2(6), 
 154 :      1 ecow13(6),ecow14(6),ecow15(12),ecow16(3),               
 155 : C     1 DALPHA(6),EPSPLA(6),E(12),XINV(3),   
 156 :      2 ecow17(6),ecow18(6),ecow19,ecow20                                   
 157 : C     2 SIPLAD(6),DSIGP0(6),TET,TETI       
 158 :       ENDSEGMENT                                                                 
 159 : C      COMMON/ECOU/TEST,ALFAH,ZOZO(112) 
 160 :        SEGMENT NECOU
 161 : *      COMMON/NECOU/NCOURB,IPLAST,IT,IMAPLA,ISOTRO,
 162 : C       INTEGER ncow1,  ncow2,ncow3,ncow4,  ncow5,
 163 :        INTEGER NCOURB,IPLAST,IT,   IMAPLA,ISOTRO,
 164 :      1  ITYP,IFOU, ncow8,
 165 : C    . ITYP, IFOURB,IFLUAG,
 166 :      2 ncow9,ncow10,ncow11,ncow12,ncow13,
 167 : C    . ICINE,ITHER, IFLUPL,ICYCL, IBI,
 168 :      3 ncow14,ncow15,ncow16,
 169 : C    . JFLUAG,KFLUAG,LFLUAG,
 170 :      4 ncow17,ncow18,ncow19,ncow20,ncow21
 171 : C    . IRELAX,JNTRIN,MFLUAG,JSOUFL,JGRDEF
 172 :       ENDSEGMENT
 173 :                                         
 174 : C     COMMON/NECOU/NCOURB,IPLAST,IT,IMAPLA,ISOTRO,ITYP,IZOZO(15)
 175 : C 
 176 : 
 177 :       DIMENSION SIG0(*),DEPST(*),VAR0(*),XMAT(*),XCAR(*),IVAL(*)                
 178 :       DIMENSION SIGF(*),VARF(*),DEFP(*) 
 179 :       DIMENSION SIGMA(6),DSIGMA(6),STOT(6),SIGFIN(6),ORMAT(1)                   
 180 :       DIMENSION XLAMBD(6),DEFPLA(6),DEPS(6),DSIGT(*)                                    
 181 :       DIMENSION SPHER(6),AUXIL(6),DSIGZE(6)                                     
 182 :       DIMENSION VF1(3),VF2(3),VF3(3),XLTR(3),XLTT(3),EPTR(3),EPTT(3),
 183 :      .          EPRS(3),OUVER(3),RT(3)                                          
 184 :       DIMENSION CONTR(6),DCONTR(6),DDEFT(6),CONFIN(6),EPSPLA(6)
 185 :       DIMENSION W1(3),W2(3),W3(3),YLTR(3),YLTT(3),DETR(3),DETT(3),
 186 :      .          DERS(3),FISSU(3),ST(3)
 187 :       DIMENSION VALMAT(*),VALCAR(*)
 188 :       DIMENSION TXR(IDIM,*),CRIGI(12)
 189 :       DIMENSION DDAUX(LHOOK,*),DDHOMU(LHOOK,*)
 190 :       DIMENSION XLOC(IDIM,*),XGLOB(IDIM,*)
 191 :       DIMENSION D1HOOK(LHOOK,*),ROTHOO(LHOOK,*)
 192 :       CHARACTER*8 CMATE
 193 : C
 194 : C                                                                               
 195 : C TEST DE CONSISTANCE DES DONNEES                                               
 196 : C                                                                               
 197 :       DO 100 I=1,NCOMAT
 198 :       IF(XMAT(I).LT.0.D0) KERRE=437                                             
 199 :   100 CONTINUE                                                                  
 200 :       IF(KERRE.EQ.437) RETURN                                                   
 201 : C
 202 :       YOUN= 0.D0                                                                
 203 :       XNU = 0.D0                                                                
 204 :       RHO = 0.D0
 205 :       ALPH= 0.D0
 206 :       CTR1= 0.D0                                                                
 207 :       ETR1= 0.D0                                                                
 208 :       CTT1= 0.D0                                                                
 209 :       ETT1= 0.D0                                                                
 210 :       ERS1= 0.D0                                                                
 211 :       CTR2= 0.D0                                                                
 212 :       ETR2= 0.D0                                                                
 213 :       CTT2= 0.D0                                                                
 214 :       ETT2= 0.D0                                                                
 215 :       ERS2= 0.D0                                                                
 216 :       CTR3= 0.D0                                                                
 217 :       ETR3= 0.D0                                                                
 218 :       CTT3= 0.D0                                                                
 219 :       ETT3= 0.D0                                                                
 220 :       ERS3= 0.D0
 221 :       BETR= 0.D0
 222 :       CLCS= 0.D0
 223 :       EPCS= 0.D0
 224 :       CLBI= 0.D0
 225 :       VF1(1)= 0.D0
 226 :       VF1(2)= 0.D0
 227 :       VF1(3)= 0.D0
 228 :       VF2(1)= 0.D0
 229 :       VF2(2)= 0.D0
 230 :       VF2(3)= 0.D0
 231 :       VF3(1)= 0.D0
 232 :       VF3(2)= 0.D0
 233 :       VF3(3)= 0.D0
 234 : *
 235 : *    VARIABLE IDECA POUR SE DECALER EN CAS D'EPAISSEUR EN CP
 236 : *
 237 :       IDECA=1
 238 :       IF(IFOUR.EQ.-2) IDECA=2
 239 : C                                                                               
 240 :       YOUN= XMAT(1)                                                             
 241 :       XNU = XMAT(2)                                                             
 242 :       RHO = XMAT(3)
 243 :       ALPH= XMAT(4)
 244 :       CTR1= XMAT(5+IDECA)
 245 :       ETR1= XMAT(6+IDECA)
 246 :       CTT1= XMAT(7+IDECA)
 247 :       ETT1= XMAT(8+IDECA)
 248 :       ERS1= XMAT(9+IDECA)
 249 :       CTR2= XMAT(10+IDECA)
 250 :       ETR2= XMAT(11+IDECA)
 251 :       CTT2= XMAT(12+IDECA)
 252 :       ETT2= XMAT(13+IDECA)
 253 :       ERS2= XMAT(14+IDECA)
 254 :       CTR3= XMAT(15+IDECA)
 255 :       ETR3= XMAT(16+IDECA)
 256 :       CTT3= XMAT(17+IDECA)
 257 :       ETT3= XMAT(18+IDECA)
 258 :       ERS3= XMAT(19+IDECA)
 259 :       BETR= XMAT(20+IDECA)
 260 :       CLCS= XMAT(21+IDECA)
 261 :       EPCS= XMAT(22+IDECA)
 262 :       CLBI= XMAT(23+IDECA)
 263 :       VF1(1)= XMAT(24+IDECA)
 264 :       VF1(2)= XMAT(25+IDECA)
 265 :       VF1(3)= XMAT(26+IDECA)
 266 :       VF2(1)= XMAT(27+IDECA)
 267 :       VF2(2)= XMAT(28+IDECA)
 268 :       VF2(3)= XMAT(29+IDECA)
 269 :       VF3(1)= XMAT(30+IDECA)
 270 :       VF3(2)= XMAT(31+IDECA)
 271 :       VF3(3)= XMAT(32+IDECA)
 272 : C                                                                               
 273 :       IF(IIMPI.EQ.9) WRITE(IOIMP,2007) (XMAT(I),I=1,32+IDECA)
 274 :       IF(IIMPI.EQ.9) WRITE(IOIMP,2008) (IVAL(I),I=1,32+IDECA)
 275 : C                                                                               
 276 : C                                                                               
 277 : C  PETIT TEST SUR NU POUR CERTAINS CAS                                          
 278 : C                                                                               
 279 :       IF(MFR.EQ.3.AND.IFOUR.EQ.-2.AND.XNU.NE.0.D0) THEN
 280 :       KERRE=38                                                                  
 281 :       RETURN                                                                    
 282 :       ENDIF                                                                     
 283 : C                                                                               
 284 : C VALEURS PAR DEFAUT
 285 : C                                                                               
 286 : C                  POUR LA TRACTION                                             
 287 : C                                                                               
 288 :       IF(IVAL( 5+IDECA).EQ.0) CTR1=YOUN*1.2E-4
 289 :       IF(IVAL( 6+IDECA).EQ.0) ETR1=3.D0*CTR1/YOUN
 290 :       IF(IVAL( 7+IDECA).EQ.0) CTT1=0.D0
 291 :       IF(IVAL( 8+IDECA).EQ.0) ETT1=ETR1
 292 :       IF(IVAL( 9+IDECA).EQ.0) ERS1=0.D0
 293 :       IF(IVAL(10+IDECA).EQ.0) THEN
 294 :         CTR2=CTR1
 295 :         ETR2=ETR1
 296 :         CTT2=CTT1
 297 :         ETT2=ETT1
 298 :         ERS2=ERS1
 299 :       ELSE
 300 :         IF(IVAL(11+IDECA).EQ.0) ETR2=3.D0*CTR2/YOUN
 301 :         IF(IVAL(12+IDECA).EQ.0) CTT2=0.D0
 302 :         IF(IVAL(13+IDECA).EQ.0) ETT2=ETR2
 303 :         IF(IVAL(14+IDECA).EQ.0) ERS2=0.D0
 304 :       ENDIF
 305 :       IF(IVAL(15+IDECA).EQ.0) THEN
 306 :         CTR3=CTR1
 307 :         ETR3=ETR1
 308 :         CTT3=CTT1
 309 :         ETT3=ETT1
 310 :         ERS3=ERS1
 311 :       ELSE
 312 :       IF(IVAL(16+IDECA).EQ.0) ETR3=3.D0*CTR3/YOUN
 313 :       IF(IVAL(17+IDECA).EQ.0) CTT3=0.D0
 314 :       IF(IVAL(18+IDECA).EQ.0) ETT3=ETR3
 315 :       IF(IVAL(19+IDECA).EQ.0) ERS3=0.D0
 316 :       ENDIF
 317 : *
 318 : *
 319 :       IF(MFR.EQ.1.AND.(IFOUR.GE.-1.OR.IFOUR.EQ.-3)) THEN
 320 : C
 321 :         IF(IVAL(24+IDECA).EQ.0.AND.IVAL(27+IDECA).EQ.0
 322 :      &                        .AND.IVAL(30+IDECA).EQ.0) NVEC=0
 323 :         IF(IVAL(24+IDECA).NE.0.OR.IVAL(27+IDECA).NE.0
 324 :      &                        .OR.IVAL(30+IDECA).NE.0)  NVEC=1
 325 :         IF(IVAL(24+IDECA).NE.0.AND.IVAL(27+IDECA).NE.0) NVEC=2
 326 : C
 327 :         KAS=1
 328 :         IF(IVAL(27+IDECA).NE.0.AND.NVEC.EQ.1) KAS=2
 329 :         IF(IVAL(30+IDECA).NE.0.AND.NVEC.EQ.1) KAS=3
 330 :         IF(IFOUR.EQ.-3.OR.IFOUR.EQ.-1.OR.IFOUR.EQ.0) THEN
 331 :           NVEC=1
 332 :           KAS=3
 333 :           VAR0(15)=0.D0
 334 :           VAR0(16)=0.D0
 335 :           VAR0(17)=1.D0
 336 :           VF3(1)=0.D0
 337 :           VF3(2)=0.D0
 338 :           VF3(3)=1.D0
 339 :         ENDIF
 340 : C
 341 :       ENDIF
 342 : C
 343 :       IF(IVAL(20+IDECA).EQ.0)  BETR=0.1D0
 344 : C
 345 : C VALEURS PAR DEFAUT POUR LE MODELE BETON CONTRAINTES PLANES
 346 : C                                                                               
 347 : C                  POUR LA TRACTION                                             
 348 : C                                                                               
 349 :       IF(MFR.EQ.3.OR.MFR.EQ.9.OR.IFOUR.EQ.-2) THEN
 350 :         IFIS=0
 351 :         IF(IVAL(5+IDECA).NE.0.AND.IVAL(10+IDECA).NE.0) IFIS=1
 352 :         ANGL=0.D0
 353 :         IF(IVAL(24+IDECA).NE.0.AND.IVAL(25+IDECA).NE.0.AND.IFIS.EQ.1)
 354 :      .     ANGL=ATAN2(VF1(2),VF1(1))
 355 : C                                                                               
 356 : C                  POUR LA COMPRESSION                                          
 357 : C                                                                               
 358 :         IF(IVAL(21+IDECA).EQ.0) CLCS=YOUN*1.2D-3
 359 :         IF(IVAL(22+IDECA).EQ.0) EPCS=10.D0*CLCS/YOUN
 360 : C                                                                               
 361 : C                  BI-COMPRESSION
 362 : C                                                                               
 363 :         IF(IVAL(23+IDECA).EQ.0) THEN
 364 :           REP=EPCS*YOUN/CLCS
 365 :           UMN=1.D0-XNU
 366 :           ALF=((REP-UMN-(SQRT(0.5D0*REP*UMN)))/(2.D0*REP-UMN))*0.95D0
 367 :           DDD=(1.D0-ALF)/(1.D0-2.D0*ALF)
 368 :           CLBI=DDD*CLCS
 369 :         ENDIF
 370 :       ENDIF
 371 : C                                                                               
 372 : C INITIALISATION                                                                
 373 : C                                                                               
 374 :       JEPRIN = 0
 375 :       UNIT=0.0174532925199432957692D0                                           
 376 :       ANGLE=0.D0
 377 :       IF(IFIS.EQ.1) ANGLE=ANGL
 378 : C                                                                               
 379 :       XLTR(1)=CTR1                                                              
 380 :       XLTR(2)=CTR2                                                              
 381 :       XLTR(3)=CTR3                                                              
 382 :       XLTT(1)=CTT1                                                              
 383 :       XLTT(2)=CTT2                                                              
 384 :       XLTT(3)=CTT3                                                              
 385 :       EPTR(1)=ETR1                                                              
 386 :       EPTR(2)=ETR2                                                              
 387 :       EPTR(3)=ETR3                                                              
 388 :       EPTT(1)=ETT1                                                              
 389 :       EPTT(2)=ETT2                                                              
 390 :       EPTT(3)=ETT3                                                              
 391 :       EPRS(1)=ERS1                                                              
 392 :       EPRS(2)=ERS2                                                              
 393 :       EPRS(3)=ERS3                                                              
 394 : C                                                                               
 395 : C CALCUL ET TEST DES PARAMETRES DU BETON                                        
 396 : C                                                                               
 397 : C     CALCUL DES BRANCHES DESCENDANTES DANS LE DOMAINE DE LA TRACTION           
 398 : C     POUR LE MODELE BETON CONTRAINTES PLANES                                   
 399 : C                                                                               
 400 :       IF(MFR.EQ.3.OR.MFR.EQ.9.OR.IFOUR.EQ.-2) THEN
 401 : C
 402 :         IF(IFIS.EQ.0) THEN
 403 :           R=ABS(CTR1-CTR2)
 404 :           IF(R.GT.1.D-7) THEN
 405 :             KERRE=441
 406 :             RETURN
 407 :           ENDIF
 408 :         ENDIF
 409 : C                                                                               
 410 :         EP1=ETR1-VAR0(5)
 411 :         EP2=ETR2-VAR0(6)
 412 : C                                                                               
 413 :         IF(EP1.LE.1.D-10) THEN
 414 :           CTR1=0.D0
 415 :           PENTT1=0.D0
 416 :         ENDIF
 417 : C                                                                               
 418 :         IF(EP2.LE.1.D-10) THEN
 419 :           CTR2=0.D0
 420 :           PENTT2=0.D0
 421 :         ENDIF
 422 : C                                                                               
 423 :         EP1=ETR1-CTR1/YOUN/(1-XNU)
 424 :         EP2=ETR2-CTR2/YOUN/(1-XNU)
 425 : C                                                                               
 426 :         IF(EP1.LT.1.D-10) THEN
 427 :           KERRE=438
 428 :           RETURN
 429 :         ENDIF
 430 : C                                                                               
 431 :         IF(EP2.LT.1.D-10) THEN
 432 :           KERRE=439
 433 :           RETURN
 434 :         ENDIF
 435 : C                                                                               
 436 :         IF(EP1.GT.1.D-10) PENTT1=-CTR1/ETR1
 437 :         IF(EP2.GT.1.D-10) PENTT2=-CTR2/ETR2
 438 : C                                                                               
 439 : C     CALCUL DES PARAMETRES DU DRUCKER POUR LE MODELE                           
 440 : C     BETON CONTRAINTES PLANES                                                  
 441 : C                                                                               
 442 :         DI1=CLCS-CLBI
 443 :         IF(DI1.GE.0.D0) THEN
 444 :           KERRE=443
 445 :           RETURN
 446 :         ENDIF
 447 : C                                                                               
 448 :         DI2=CLCS-2.D0*CLBI
 449 :         ALFAD2=DI1/DI2
 450 :         DPELA2=(1.D0-ALFAD2)*CLCS
 451 : C                                                                               
 452 :         R=DPELA2/(1.D0+ALFAD2)
 453 :         IF(R.LT.CTR1.OR.R.LT.CTR2.AND.IIMPI.EQ.9) WRITE(IOIMP,900)
 454 : C                                                                               
 455 :         R=ABS(PENTT1-PENTT2)
 456 :         IF(R.GT.1.D-7.AND.CTR1.NE.0.D0.AND.CTR2.NE.0.D0.
 457 :      .     AND.IIMPI.EQ.9) WRITE(IOIMP,901)
 458 : C                                                                               
 459 :         EPSA=CLCS/YOUN
 460 :         PENTE2=-CLCS/(EPCS-EPSA)
 461 :         PENTE2=(YOUN*PENTE2)/(YOUN-PENTE2)
 462 :         PENTE2=PENTE2*(ALFAD2-1.D0)*(ALFAD2-1.D0)
 463 : C                                                                               
 464 :       ENDIF
 465 : C                                                                               
 466 :       IF(BETR.GT.1.D0) THEN                                                     
 467 :         KERRE=442                                                               
 468 :         RETURN                                                                  
 469 :        ENDIF                                                                    
 470 : C                                                                               
 471 : C     CALCUL DES CONSTANTES                                                     
 472 : C                                                                               
 473 :       EPS1=CTR1/YOUN                                                            
 474 :       EPS2=CTR2/YOUN                                                            
 475 :       EPS3=CTR3/YOUN                                                            
 476 : C                                                                               
 477 :       TRTRAC=CTR1+CTR2+CTR3                                                     
 478 : C                                                                               
 479 :       SIGT=TRTRAC*0.333333333333333333333333333333333D0                         
 480 : C                                                                               
 481 : C     TEST SUR LES VALEURS DES PARAMETRES                                       
 482 : C                                                                               
 483 :       IF(MFR.EQ.3.OR.MFR.EQ.9.OR.IFOUR.EQ.-2) THEN
 484 : C                                                                               
 485 :         IF(ETR1.LT.EPS1) THEN
 486 :           KERRE=449
 487 :           REAERR(1)=ETR1
 488 :           REAERR(2)=EPS1
 489 :           RETURN
 490 :         ENDIF
 491 : C                                                                               
 492 :         IF(ETR2.LT.EPS2) THEN
 493 :           KERRE=450
 494 :           REAERR(1)=ETR2
 495 :           REAERR(2)=EPS2
 496 :           RETURN
 497 :         ENDIF
 498 : C                                                                               
 499 :         IF(EPCS.LT.EPSA) THEN
 500 :           KERRE=444
 501 :           REAERR(1)=EPCS
 502 :           REAERR(2)=EPSA
 503 :           RETURN
 504 :         ENDIF
 505 : C                                                                               
 506 :         IF(CLCS.LT.SIGT) THEN
 507 :           KERRE=445
 508 :           REAERR(1)=CLCS
 509 :           REAERR(2)=SIGT
 510 :           RETURN
 511 :         ENDIF
 512 : C                                                                               
 513 :         ECR2=(2.D0*YOUN*(0.5D0-ALFAD2)*(0.5D0-ALFAD2))/(1.D0-XNU)
 514 :         IF(ABS(PENTE2).GE.ECR2) THEN
 515 :           KERRE=458
 516 :           REAERR(1)=PENTE2
 517 :           REAERR(2)=ECR2
 518 :           RETURN
 519 :         ENDIF
 520 :       ENDIF
 521 : C                                                                               
 522 :       IF(MFR.EQ.1.AND.(IFOUR.GE.-1.OR.IFOUR.EQ.-3)) THEN
 523 : C                                                                               
 524 :         IF(CTR1.LT.CTT1) THEN
 525 :           KERRE=446
 526 :           REAERR(1)=CTR1
 527 :           REAERR(2)=CTT1
 528 :           RETURN
 529 :         ENDIF
 530 : C                                                                               
 531 :         IF(CTR2.LT.CTT2) THEN
 532 :           KERRE=447
 533 :           REAERR(1)=CTR2
 534 :           REAERR(2)=CTT2
 535 :           RETURN
 536 :         ENDIF
 537 : C                                                                               
 538 :         IF(CTR3.LT.CTT3) THEN
 539 :           KERRE=448
 540 :           REAERR(1)=CTR3
 541 :           REAERR(2)=CTT3
 542 :           RETURN
 543 :         ENDIF
 544 : C                                                                               
 545 :         IF(ETR1.LT.EPS1) THEN
 546 :           KERRE=449
 547 :           REAERR(1)=ETR1
 548 :           REAERR(2)=EPS1
 549 :           RETURN
 550 :         ENDIF
 551 : C                                                                               
 552 :         IF(ETR2.LT.EPS2) THEN
 553 :           KERRE=450
 554 :           REAERR(1)=ETR2
 555 :           REAERR(2)=EPS2
 556 :           RETURN
 557 :         ENDIF
 558 : C                                                                               
 559 :         IF(ETR3.LT.EPS3) THEN
 560 :           KERRE=451
 561 :           REAERR(1)=ETR3
 562 :           REAERR(2)=EPS3
 563 :           RETURN
 564 :         ENDIF
 565 : C                                                                               
 566 :         IF(ETR1.LT.ETT1.OR.ETT1.LT.EPS1) THEN
 567 :           KERRE=452
 568 :           REAERR(1)=ETR1
 569 :           REAERR(2)=ETT1
 570 :           REAERR(3)=EPS1
 571 :           RETURN
 572 :         ENDIF
 573 : C                                                                               
 574 :         IF(ETR2.LT.ETT2.OR.ETT2.LT.EPS2) THEN
 575 :           KERRE=453
 576 :           REAERR(1)=ETR2
 577 :           REAERR(2)=ETT2
 578 :           REAERR(3)=EPS2
 579 :           RETURN
 580 :         ENDIF
 581 : C                                                                               
 582 :         IF(ETR3.LT.ETT3.OR.ETT3.LT.EPS3) THEN
 583 :           KERRE=454
 584 :           REAERR(1)=ETR3
 585 :           REAERR(2)=ETT3
 586 :           REAERR(3)=EPS3
 587 :           RETURN
 588 :         ENDIF
 589 : C                                                                               
 590 :         IF(ETR1.LT.ERS1) THEN
 591 :           KERRE=455
 592 :           REAERR(1)=ETR1
 593 :           REAERR(2)=ERS1
 594 :           RETURN
 595 :         ENDIF
 596 : C                                                                               
 597 :         IF(ETR2.LT.ERS2) THEN
 598 :           KERRE=456
 599 :           REAERR(1)=ETR2
 600 :           REAERR(2)=ERS2
 601 :           RETURN
 602 :         ENDIF
 603 : C                                                                               
 604 :         IF(ETR3.LT.ERS3) THEN
 605 :           KERRE=457
 606 :           REAERR(1)=ETR3
 607 :           REAERR(2)=ERS3
 608 :           RETURN
 609 :         ENDIF
 610 : C                                                                               
 611 :       ENDIF
 612 : C                                                                               
 613 : C  CALCUL DE L INCREMENT DE CONTRAINTES                                                          
 614 : C 
 614 :       CALL CALSIG(DEPST,DDAUX,NSTRS,CMATE,VALMAT,
 615 :      1 VALCAR,N2EL,N2PTEL,MFR,IFOU,IB,IGAU,EPAIST,
 616 :      2 NBPGAU,MELE,NPINT,NBGMAT,NELMAT,SECT,LHOOK,TXR,
 617 :      3 XLOC,XGLOB,D1HOOK,ROTHOO,DDHOMU,CRIGI,DSIGT,IRTD)
 618 : *
 619 :        IF(IRTD.NE.1) THEN
 620 :           KERRE=69
 621 :           GOTO 998
 622 :        ENDIF
 623 : *
 624 : C                                                                               
 625 : C ECOULEMENT PLASTIQUE                                                          
 626 : C 
 627 :   333 MCOD=1
 627 :       CALL VISAVI(SIG0,DSIGT,VAR0,SIGMA,DSIGMA,SPHER,AUXIL,                     
 628 :      .        SIGF,DEFP,VARF,SIGFIN,DEFPLA,
 629 :      .        DSIGZE,ICENT2,MCOD,IBOU,MFR,NSTRS,XCAR,CMATE,ecou,necou)
 630 :       IF(ITYP.EQ.0) THEN                                                        
 631 :         KERRE=269                                                               
 632 :         RETURN                                                                  
 633 :       ENDIF                                                                     
 634 : *
 635 : C                                                                               
 636 : C IMPRESSION DES PARAMETRES DU MODELE                                           
 637 : C                                                                               
 638 :       IF(IIMPI.EQ.9) THEN                                                       
 639 :         WRITE(IOIMP,1000)                                                       
 640 :         WRITE(IOIMP,1001) YOUN                                                  
 641 :         WRITE(IOIMP,1002) XNU                                                   
 642 :         WRITE(IOIMP,1003)
 643 :         IF(ITYP.EQ.2.OR.ITYP.EQ.6.OR.ITYP.EQ.7) THEN
 644 :           WRITE(IOIMP,1004) CTR1,CTR2
 645 :           WRITE(IOIMP,1005) ETR1,ETR2
 646 :           WRITE(IOIMP,1006) VAR0(5),VAR0(6)
 647 :           WRITE(IOIMP,1007) (ANGLE/UNIT)
 648 :         ENDIF
 649 :         IF(MFR.EQ.1.AND.(IFOUR.GE.-1.OR.IFOUR.EQ.-3)) THEN
 650 :           WRITE(IOIMP,1008) CTR1,CTR2,CTR3
 651 :           WRITE(IOIMP,1009) CTT1,CTT2,CTT3
 652 :           WRITE(IOIMP,1010) ETT1,ETT2,ETT3
 653 :           WRITE(IOIMP,1011) ETR1,ETR2,ETR3
 654 :           WRITE(IOIMP,1012) ERS1,ERS2,ERS3
 655 :           WRITE(IOIMP,1013) VAR0(5),VAR0(6),VAR0(7)
 656 :           IF((KAS.EQ.1.AND.NVEC.EQ.1).OR.NVEC.EQ.2)
 657 :      .      WRITE(IOIMP,1014) (VF1(I),I=1,3)
 658 :           IF((KAS.EQ.2.AND.NVEC.EQ.1).OR.NVEC.EQ.2)
 659 :      .      WRITE(IOIMP,1015) (VF2(I),I=1,3)
 660 :           IF((KAS.EQ.3.AND.NVEC.EQ.1).OR.NVEC.EQ.2)
 661 :      .      WRITE(IOIMP,1016) (VF3(I),I=1,3)
 662 :         ENDIF
 663 :         WRITE(IOIMP,1017) BETR
 664 :         IF(ITYP.EQ.2.OR.ITYP.EQ.6.OR.ITYP.EQ.7) WRITE(IOIMP,1018)
 665 :         IF(MFR.EQ.1.AND.(IFOUR.GE.-1.OR.IFOUR.EQ.-3)) WRITE(IOIMP,1019)
 666 :         IF(ITYP.EQ.2.OR.ITYP.EQ.6.OR.ITYP.EQ.7) THEN
 667 :           WRITE(IOIMP,1020)
 668 :           WRITE(IOIMP,1021) CLCS,EPCS
 669 :           WRITE(IOIMP,1022) CLBI
 670 :         ENDIF
 671 :       ENDIF                                                                     
 672 : C                                                                               
 673 : C CAS DES CONTRAINTES PLANES :                                                  
 674 : C             IFOUR = -2
 675 : C AVEC DEUX TYPES DE FORMULATION MECANIQUE :                                    
 676 : C          CAS DES COQUES :             ITYP = 2 ==> ALFAH = 0                  
 677 : C                                   OU  ITYP = 7 ==> ALFAH = 0                  
 678 : C          CAS DES CONTRAINTES PLANES : ITYP = 6                                
 679 : C                                                                               
 680 :       IF(ITYP.EQ.2.OR.ITYP.EQ.6.OR.ITYP.EQ.7) THEN                              
 681 : C                                                                               
 682 : C DANS LE CAS DES COQUES ITYP = 2  , NOUS METTONS ALFAH = 0                     
 683 : C                                                                               
 684 :         IF(ITYP.EQ.2.OR.ITYP.EQ.7) ALFAH=0.D0                                   
 685 : C                                                                               
 686 : C INITIALISATIONS DES PARAMETRES                                                
 687 : C                                                                               
 688 :         IF(CTR1.GT.0.D0) RT1=(1.D0-VAR0(2))*CTR1
 689 :         IF(CTR1.LE.0.D0) RT1=0.D0
 690 :         IF(CTR2.GT.0.D0) RT2=(1.D0-VAR0(3))*CTR2
 691 :         IF(CTR2.LE.0.D0) RT2=0.D0
 692 :         XLAMBD(1)=VAR0(5)
 693 :         XLAMBD(2)=VAR0(6)
 694 :         XLAMBD(3)=VAR0(8)
 695 :         IF(IVAL(24+IDECA).EQ.0) VF1(1)=VAR0(9)
 696 :         IF(IVAL(25+IDECA).EQ.0) VF1(2)=VAR0(10)
 697 : C                                                                               
 698 :         IF(IFIS.EQ.0.AND.(XLAMBD(1).GT.0.D0.OR.XLAMBD(2).GT.0D0)) THEN
 699 :           IFIS=1
 700 :           ANGLE=ATAN2(VF1(2),VF1(1))
 701 :         ENDIF
 702 : C                                                                               
 703 :         DO 200 IBA=1,IBOU                                                        
 704 :         STOT(IBA)=SIGMA(IBA)+DSIGMA(IBA)                                           
 705 :   200   CONTINUE                                                                
 706 : C                                                                               
 707 : C ECOULEMENT PLASTIQUE                                                          
 708 : C 
 708 :         CALL ECBECP(SIGMA,DSIGMA,XLAMBD,DEFPLA,YOUN,XNU,                        
 709 :      .              IFIS,ANGLE,BETR,RT1,PENTT1,RT2,PENTT2,
 710 :      .              DPELA2,ALFAD2,PENTE2,IDAM,SIGFIN,ITYP,KERRE)   
 711 : C                                                                               
 712 :         IF(IIMPI.EQ.9) THEN                                                     
 713 :           WRITE(IOIMP,2000)                                                     
 714 :           WRITE(IOIMP,2001) (SIGMA(I),I=1,IBOU)                                 
 715 :           WRITE(IOIMP,2002) (DSIGMA(I),I=1,IBOU)                                
 716 :           WRITE(IOIMP,2003) (STOT(I),I=1,IBOU)                                  
 717 :           WRITE(IOIMP,2004) (SIGFIN(I),I=1,IBOU)                                
 718 :           WRITE(IOIMP,2005) (DEFPLA(I),I=1,IBOU)                                
 719 :           WRITE(IOIMP,2006) (XLAMBD(I),I=1,6)                                   
 720 :         ENDIF                                                                   
 721 : C                                                                               
 722 :         IF(KERRE.NE.0) THEN
 723 :            IF(JEPRIN.EQ.0) THEN
 724 :              KERRE=0
 725 :              JEPRIN=1
 726 :              IIMPI=9
 727 :              GO TO 333
 728 :            ELSE
 729 :              IIMPI=0
 730 :              RETURN
 731 :            ENDIF
 732 :         ENDIF
 733 : C                                                                               
 734 : C PAS DE PLASTICITE COMPORTEMENT ELASTIQUE                                      
 735 : C                                                                               
 736 :         IF(IDAM.EQ.0) THEN                                                      
 737 :           DO 300 IBA=1,IBOU                                                      
 738 :           SIGFIN(IBA)=STOT(IBA)                                                   
 739 :           DEFPLA(IBA)=0.D0                                                       
 740 :   300     CONTINUE                                                              
 741 :         ENDIF                                                                   
 742 : C                                                                               
 743 : C NOUS AVONS ENDOMMAGE LE MATERIAU                                              
 744 : C                                                                               
 745 : C MISE A JOUR DES VARIABLES INTERNES                                            
 746 : C                                                                               
 747 :         VARF(1)=SQRT(XLAMBD(1)*XLAMBD(1)+XLAMBD(2)*XLAMBD(2)+
 748 :      .                XLAMBD(3)*XLAMBD(3))                                      
 749 :         IF(CTR1.GT.0.D0) VARF(2)=1.D0-RT1/CTR1
 750 :         IF(CTR1.LE.0.D0) VARF(2)=1.D0
 751 :         IF(CTR2.GT.0.D0) VARF(3)=1.D0-RT2/CTR2
 752 :         IF(CTR2.LE.0.D0) VARF(3)=1.D0
 753 :         VARF(5)=XLAMBD(1)
 754 :         VARF(6)=XLAMBD(2)
 755 :         VARF(8)=XLAMBD(3)
 756 :         VARF(9)=COS(ANGLE)
 757 :         VARF(10)=SIN(ANGLE)
 758 : C                                                                               
 759 : C     CAS DES DEFORMATIONS PLANES , AXISYMETRIQUE ET TRIDIME                    
 760 : C                                                                               
 761 :       ELSEIF (ITYP.EQ.1) THEN                                                   
 762 : C                                                                               
 763 : C       INITIALISATIONS DES PARAMETRES                                          
 764 : C                                                                               
 765 :         IF(CTR1.GT.0.D0) RT(1)=(1.D0-VAR0(2))*CTR1
 766 :         IF(CTR1.LE.0.D0) RT(1)=0.D0
 767 :         IF(CTR2.GT.0.D0) RT(2)=(1.D0-VAR0(3))*CTR2
 768 :         IF(CTR2.LE.0.D0) RT(2)=0.D0
 769 :         IF(CTR3.GT.0.D0) RT(3)=(1.D0-VAR0(4))*CTR3
 770 :         IF(CTR3.LE.0.D0) RT(3)=0.D0
 771 :         OUVER(1)=VAR0(5)
 772 :         OUVER(2)=VAR0(6)
 773 :         OUVER(3)=VAR0(7)
 774 :         IF(IVAL(24+IDECA).EQ.0) VF1(1)=VAR0(9)
 775 :         IF(IVAL(25+IDECA).EQ.0) VF1(2)=VAR0(10)
 776 :         IF(IVAL(26+IDECA).EQ.0) VF1(3)=VAR0(11)
 777 :         IF(IVAL(27+IDECA).EQ.0) VF2(1)=VAR0(12)
 778 :         IF(IVAL(28+IDECA).EQ.0) VF2(2)=VAR0(13)
 779 :         IF(IVAL(29+IDECA).EQ.0) VF2(3)=VAR0(14)
 780 :         IF(IVAL(30+IDECA).EQ.0) VF3(1)=VAR0(15)
 781 :         IF(IVAL(31+IDECA).EQ.0) VF3(2)=VAR0(16)
 782 :         IF(IVAL(32+IDECA).EQ.0) VF3(3)=VAR0(17)
 783 : C
 784 :         IF(NVEC.EQ.2) THEN
 785 :           NBVECD=NVEC
 786 :         ELSE
 787 :           NBVECD=0
 787 :           CALL NORME(VF1,P1)
 787 :           CALL NORME(VF2,P2)
 787 :           CALL NORME(VF3,P3)
 788 :           IF(P1.GT.0.D0) NBVECD=NBVECD+1
 789 :           IF(P2.GT.0.D0) NBVECD=NBVECD+1
 790 :           IF(P3.GT.0.D0) NBVECD=NBVECD+1
 791 :           IF(NBVECD.GT.2) NBVECD=2
 792 :         ENDIF
 793 : C                                                                               
 794 : C       CALCUL DE DEFORMATION PLASTIQUE                                         
 795 : C 
 795 :         CALL EPSIG(DSIGMA,DEPS,IFOUR,YOUN,XNU,ITYP,ORMAT,XCAR)
 796 : C                                                                               
 797 :         IF(IIMPI.EQ.9) THEN                                                     
 798 :           WRITE(IOIMP,*) 'AVANT L APPEL A TENSI3 AVANT L APPEL A AJUSTE'
 799 :           WRITE(IOIMP,*) 'NBVECD',NBVECD
 800 :           WRITE(IOIMP,*) 'ANGLE ',(ANGLE/UNIT)
 801 :           WRITE(IOIMP,*) 'VF1   ',(VF1(I),I=1,3)
 802 :           WRITE(IOIMP,*) 'VF2   ',(VF2(I),I=1,3)
 803 :           WRITE(IOIMP,*) 'VF3   ',(VF3(I),I=1,3)
 804 :         ENDIF                                                                   
 805 : C
 806 :         MODE=1
 806 :         CALL AJUSTE (VF1,VF2,VF3,XLTR,EPTR,XLTT,EPTT,EPRS,RT,OUVER,
 807 :      .               W1,W2,W3,YLTR,DETR,YLTT,DETT,DERS,ST,FISSU,
 808 :      .               ANGLE,NBVECD,KAS,MODE)
 809 : C
 809 :         CALL TENSI3 (SIGMA,DSIGMA,DEPS,YOUN,XNU,BETR,
 810 :      .               W1,W2,W3,ANGLE,NBVECD,
 811 :      .               YLTR,DETR,YLTT,DETT,DERS,ST,FISSU,
 812 :      .               SIGFIN,DEFPLA,KERRE)
 813 : C                                                                               
 814 :         IF(IIMPI.EQ.9) THEN                                                     
 815 :           WRITE(IOIMP,*) 'APRES L APPEL A TENSI3 AVANT L APPEL A AJUSTE'
 816 :           WRITE(IOIMP,*) 'NBVECD',NBVECD
 817 :           WRITE(IOIMP,*) 'ANGLE ',(ANGLE/UNIT)
 818 :           WRITE(IOIMP,*) 'W1    ',(W1(I),I=1,3)
 819 :           WRITE(IOIMP,*) 'W2    ',(W2(I),I=1,3)
 820 :           WRITE(IOIMP,*) 'W3    ',(W3(I),I=1,3)
 821 :         ENDIF                                                                   
 822 : C
 823 :         MODE=2
 823 :         CALL AJUSTE (VF1,VF2,VF3,XLTR,EPTR,XLTT,EPTT,EPRS,RT,OUVER,
 824 :      .               W1,W2,W3,YLTR,DETR,YLTT,DETT,DERS,ST,FISSU,
 825 :      .               ANGLE,NBVECD,KAS,MODE)
 826 : C
 827 :         IF(IIMPI.EQ.9) THEN                                                     
 828 :           WRITE(IOIMP,*) 'KAS   ',KAS
 829 :           WRITE(IOIMP,*) 'SIGMA ',(SIGMA(I),I=1,IBOU)
 830 :           WRITE(IOIMP,*) 'DSIGMA',(DSIGMA(I),I=1,IBOU)
 831 :           WRITE(IOIMP,*) 'DEPS ',(DEPS(I),I=1,IBOU)
 832 :           WRITE(IOIMP,*) 'SIGFIN',(SIGFIN(I),I=1,IBOU)
 833 :           WRITE(IOIMP,*) 'DEFPLA',(DEFPLA(I),I=1,IBOU)
 834 :           WRITE(IOIMP,*) 'OUVER ',(OUVER(I),I=1,3)
 835 :           WRITE(IOIMP,*) 'RT    ',(RT(I),I=1,3)
 836 :           WRITE(IOIMP,*) 'NBVECD',NBVECD
 837 :           WRITE(IOIMP,*) 'ANGLE ',(ANGLE/UNIT)
 838 :           WRITE(IOIMP,*) 'VF1   ',(VF1(I),I=1,3)
 839 :           WRITE(IOIMP,*) 'VF2   ',(VF2(I),I=1,3)
 840 :           WRITE(IOIMP,*) 'VF3   ',(VF3(I),I=1,3)
 841 :         ENDIF                                                                   
 842 : C                                                                               
 843 :         IF(KERRE.NE.0) THEN
 844 :            IF(JEPRIN.EQ.0) THEN
 845 :              KERRE=0
 846 :              JEPRIN=1
 847 :              IIMPI=9
 848 :              GO TO 333
 849 :            ELSE
 850 :              IIMPI=0
 851 :              RETURN
 852 :            ENDIF
 853 :         ENDIF
 854 : C                                                                               
 855 : C MISE A JOUR DES VARIABLES INTERNES                                            
 856 : C                                                                               
 857 :         VARF(1)=SQRT(OUVER(1)*OUVER(1)+OUVER(2)*OUVER(2)+
 858 :      .                OUVER(3)*OUVER(3))
 859 :         IF(CTR1.GT.0.D0) VARF(2)=1.D0-RT(1)/CTR1
 860 :         IF(CTR1.LE.0.D0) VARF(2)=1.D0
 861 :         IF(CTR2.GT.0.D0) VARF(3)=1.D0-RT(2)/CTR2
 862 :         IF(CTR2.LE.0.D0) VARF(3)=1.D0
 863 :         IF(CTR3.GT.0.D0) VARF(4)=1.D0-RT(3)/CTR3
 864 :         IF(CTR3.LE.0.D0) VARF(4)=1.D0
 865 :         VARF(5)=OUVER(1)
 866 :         VARF(6)=OUVER(2)
 867 :         VARF(7)=OUVER(3)
 868 :         VARF( 9)=VF1(1)
 869 :         VARF(10)=VF1(2)
 870 :         VARF(11)=VF1(3)
 871 :         VARF(12)=VF2(1)
 872 :         VARF(13)=VF2(2)
 873 :         VARF(14)=VF2(3)
 874 :         VARF(15)=VF3(1)
 875 :         VARF(16)=VF3(2)
 876 :         VARF(17)=VF3(3)
 877 :       ELSE                                                                      
 878 :         KERRE=463                                                               
 879 :         RETURN                                                                  
 880 :       ENDIF
 881 : C                                                                               
 882 :       MCOD=2                                                                    
 882 :       CALL VISAVI(SIG0,DSIGT,VAR0,SIGMA,DSIGMA,SPHER,AUXIL,                     
 883 :      .        SIGF,DEFP,VARF,SIGFIN,DEFPLA,
 884 :      .        DSIGZE,ICENT2,MCOD,IBOU,MFR,NSTRS,XCAR,CMATE,ecou,necou)
 885 : 
 886 : C                                                                               
 887 : C LES FORMATS D IMPRESSION                                                      
 888 : C                                                                               
 889 :   900 FORMAT(1X,'ATTENTION LES CRITERES DE TRACTION SERONT INACTIFS',/,         
 890 :      * 1X,'LIMITE EN TRACTION TROP ELEVE SEUL LE DRUCKER EST ACTIF',/)          
 891 :   901 FORMAT(1X,'ATTENTION DEFORMATIONS A RUPTURE ET LIMITES EN',/,             
 892 :      * 1X,'TRACTION SONT INCOMPATIBLES POUR AVOIR UN MATERIAU',/,               
 893 :      * 1X,'ISOTROPE INITIALEMENT',/)                                            
 894 : C                                                                               
 895 :  1000 FORMAT(////,31X,'MATERIAU BETON',//)                                      
 896 :  1001 FORMAT(6X,'MODULE D''YOUNG',T51,'= ',1PE12.5)                             
 897 :  1002 FORMAT(6X,'COEF. DE POISSON',T51,'= ',1PE12.5)                            
 898 :  1003 FORMAT(/,1X,'DOMMAGE PAR TRACTION :',/)
 899 :  1004 FORMAT(6X,'CONTRAINTES LIMITES :',/
 900 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 901 :      *      5X,'DIRECTION(2) = ',1PE12.5/)                                      
 902 :  1005 FORMAT(6X,'DEFORMATIONS A RUPTURE EN TRACTION :',/
 903 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 904 :      *      5X,'DIRECTION(2) = ',1PE12.5/)                                      
 905 :  1006 FORMAT(6X,'OUVERTURES DES FISSURES :',/
 906 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 907 :      *      5X,'DIRECTION(2) = ',1PE12.5/)                                      
 908 :  1007 FORMAT(6X,'ANGLE DE FISSURATION',T51,'= ',1PE12.5/)
 909 :  1008 FORMAT(6X,'CONTRAINTES LIMITES :',/
 910 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 911 :      *      5X,'DIRECTION(2) = ',1PE12.5,5X,'DIRECTION(3) = ',1PE12.5/)         
 912 :  1009 FORMAT(6X,'CONTRAINTES DE TRANSITION :',/
 913 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 914 :      *      5X,'DIRECTION(2) = ',1PE12.5,5X,'DIRECTION(3) = ',1PE12.5/)         
 915 :  1010 FORMAT(6X,'DEFORMATIONS DE TRANSITION :',/
 916 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 917 :      *      5X,'DIRECTION(2) = ',1PE12.5,5X,'DIRECTION(3) = ',1PE12.5/)         
 918 :  1011 FORMAT(6X,'DEFORMATIONS A RUPTURE EN TRACTION :',/
 919 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 920 :      *      5X,'DIRECTION(2) = ',1PE12.5,5X,'DIRECTION(3) = ',1PE12.5/)         
 921 :  1012 FORMAT(6X,'DEFORMATIONS RESIDUELLES :',/
 922 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 923 :      *      5X,'DIRECTION(2) = ',1PE12.5,5X,'DIRECTION(3) = ',1PE12.5/)         
 924 :  1013 FORMAT(6X,'OUVERTURES DES FISSURES :',/
 925 :      *     11X,'DIRECTION(1) = ',1PE12.5,                                       
 926 :      *      5X,'DIRECTION(2) = ',1PE12.5,5X,'DIRECTION(3) = ',1PE12.5/)         
 927 :  1014 FORMAT(6X,'COMPOSANTES DU VECTEUR VF1 :',/
 928 :      *     11X,'DIRECTION(X) = ',1PE12.5,                                       
 929 :      *      5X,'DIRECTION(Y) = ',1PE12.5,5X,'DIRECTION(Z) = ',1PE12.5/)         
 930 :  1015 FORMAT(6X,'COMPOSANTES DU VECTEUR VF2 :',/
 931 :      *     11X,'DIRECTION(X) = ',1PE12.5,                                       
 932 :      *      5X,'DIRECTION(Y) = ',1PE12.5,5X,'DIRECTION(Z) = ',1PE12.5/)         
 933 :  1016 FORMAT(6X,'COMPOSANTES DU VECTEUR VF3 :',/
 934 :      *     11X,'DIRECTION(X) = ',1PE12.5,                                       
 935 :      *      5X,'DIRECTION(Y) = ',1PE12.5,5X,'DIRECTION(Z) = ',1PE12.5/)         
 936 :  1017 FORMAT(6X,'CISAILLEMENT RESIDUEL APRES FISSURATION  ',
 937 :      *     T51,'= ',1PE12.5/)                                                   
 938 :  1018 FORMAT(1X,'LA DECHARGE SERA EFFECTUEE AVEC LE MODULE ',
 939 :      *'ELASTIQUE DANS LE DOMAINE DE LA TRACTION',/)                             
 940 :  1019 FORMAT(1X,'LA DECHARGE SERA EFFECTUEE AVEC UN MODULE ',
 941 :      *'D ENDOMMAGEMENT DANS LE DOMAINE DE LA TRACTION',/)                       
 942 :  1020 FORMAT(/,1X,'DOMMAGE PAR COMPRESSION :',/)
 943 :  1021 FORMAT(6X,'COMPRESSION SIMPLE :',/
 944 :      *     11X,'CONTRAINTE LIMITE = ',1PE12.5,                                  
 945 :      *      5X,'DEFORMATION A RUPTURE   = ',1PE12.5/)                           
 946 :  1022 FORMAT(6X,'COMPRESSION BIAXIALE :',/
 947 :      *     11X,'CONTRAINTE LIMITE = ',1PE12.5/)                                 
 948 : C                                                                               
 949 :  2000 FORMAT(1X,'RESULTATS DE L ECOULEMENT PLASTIQUE')                          
 950 :  2001 FORMAT(1X,'SIGMA  =',6(1X,1PE12.5))                                       
 951 :  2002 FORMAT(1X,'DSIGMA =',6(1X,1PE12.5))                                       
 952 :  2003 FORMAT(1X,'STOT   =',6(1X,1PE12.5))                                       
 953 :  2004 FORMAT(1X,'SIGFIN =',6(1X,1PE12.5))                                       
 954 :  2005 FORMAT(1X,'DEFPLA =',6(1X,1PE12.5))                                       
 955 :  2006 FORMAT(1X,'XLAMBD =',6(1X,1PE12.5))                                       
 956 :  2007 FORMAT(7(6(1X,E12.5),/))                                                  
 957 :  2008 FORMAT(7(6(1X,I12),/))                                                    
 958 : C
 959 :  998  RETURN                                                                    
 960 :       END                                                                       
 961 :  
 962 :  
 963 :  
 964 : 
 965 : 
 966 : 
 967 :  
 968 :  
 969 :  
 970 :  

© Cast3M 2003 - All rights reserved.
Disclaimer