Download acianc.eso

Back to the list

   1 : C ACIANC    SOURCE    CHAT      12/04/06    21:15:00     7348           
   2 : C ACIANC    SOURCE    CHAT      05/01/12    21:15:36     5004           
   3 : C 
   4 :       SUBROUTINE ACIANC(XMAT,XCAR,DEPST,SIG0,VAR0,SIGF,VARF,DEFP)
   5 : *
   6 :       IMPLICIT INTEGER(I-N)
   7 :       IMPLICIT REAL*8(A-H,O-Z)
   8 :       DIMENSION XMAT(25),VAR0(18),VARF(18)
   9 :       DIMENSION EPSON(5),SIGMA(5),EPSON0(5),SIGMA0(5)
  10 :       CHARACTER*8 CMATE
  11 : C----------------------------------------------------------------------
  12 : C----------------------------------------------------------------------
  13 : C     Didier COMBESCURE - EMSI MAI 2000
  14 : C     MODELE D'ANCRAGE AVEC LA LOI ACIER_UNI POUR l'ACIER 
  15 : C      ET ELIGEHAUSEN POUR LE GLISSEMENT 
  16 : C     
  17 : C     FONCTIONNE SUR LES ELEMENTS BARRES ET AVEC LE MODELE A FIBRE 
  18 : C
  19 : C----------------------------------------------------------------------
  20 : C
  21 : C      XMAT( 1) YOUNG
  22 : C      XMAT( 2) NU
  23 : C      XMAT( 3) RHO
  24 : C      XMAT( 4) ALPHA
  25 : C      XMAT( 5) MAX. ELAST. STRESS
  26 : C      XMAT( 6) ULTIMATE STRESS
  27 : C      XMAT( 7) HARDENING STRAIN
  28 : C      XMAT( 8) ULTIMATE STRAIN
  29 : C      XMAT( 9) Ro FACTOR
  30 : C      XMAT(10) b  FACTOR
  31 : C      XMAT(11) a1 FACTOR
  32 : C      XMAT(12) a2 FACTOR
  33 : C      XMAT(13) FACTOR L/D
  34 : C      XMAT(14) a6 FACTOR
  35 : C      XMAT(15) c FACTOR
  36 : C      XMAT(16) a FACTOR
  37 : C      XMAT(17) KS
  38 : C      XMAT(18) S1T
  39 : C      XMAT(19) S2T 
  40 : C      XMAT(20) S3T
  41 : C      XMAT(21) T1T 
  42 : C      XMAT(22) T3T
  43 : C      XMAT(23) ALFA
  44 : C      XMAT(24) LANC
  45 : C      XMAT(25) SECT
  46 : C
  47 : C      DEPS(1) EPXX    SIG0(1) SIGF(1) SMXX
  48 : C      DEPS(2) GAXY    SIG0(2) SIGF(2) SMXY
  49 : C      DEPS(3) GAXZ    SIG0(3) SIGF(3) SMXZ
  50 : C                    
  51 : 
  52 : C                      VAR0( 1) VARF( 1) FLAG
  53 : C                      VAR0( 2) VARF( 2) EPSO
  54 : C                      VAR0( 3) VARF( 3) R FACTOR
  55 : C                      VAR0( 4) VARF( 4) TANGENT MODULUS
  56 : C                      VAR0( 5) VARF( 5) LAST REV. STRAIN
  57 : C                      VAR0( 6) VARF( 6) INTERSEPTION POINT
  58 : C                      VAR0( 7) VARF( 7) MAX. REV. POST. STRAIN
  59 : C                      VAR0( 8) VARF( 8) MIN. REV. POST. STRAIN
  60 : C                      VAR0( 9) VARF( 9) LAST REV. STRESS
  61 : C                      VAR0(10) VARF(10) INTERSEPTION POINT
  62 : C                      VAR0(11) VARF(11) MAX. REV. POST. STRESS
  63 : C                      VAR0(12) VARF(12) MIN. REV. POST. STRESS
  64 : C                      VAR0(13) VARF(13) EPPP
  65 : C                      VAR0(14) VARF(14) EPPM
  66 : C                      VAR0(15) VARF(15) EPSOA
  67 : C                      VAR0(16) VARF(16) KSTAN
  68 : C                      VAR0(17) VARF(17) NITER
  69 : C                      VAR0(18) VARF(18) XLAMBDA
  70 : C
  71 : C----------------------------------------------------------------------
  72 : C
  73 : C----------------------------------------------------------------------
  74 : *
  75 : -INC CCREEL
  76 :        XSECT = XCAR
  77 : C
  78 : C DONNEES GEOMETRIQUES DES ANCRAGES
  79 : C
  80 :        XDIAM = 2.D0*((XSECT/xpi)**0.5D0)
  81 :        XLANC = XMAT(24) 
  82 :        XPERI = xpi*XDIAM
  83 : C
  84 :        IF (XLANC.LE.0.D0) THEN
  85 :          WRITE (*,*) 'Longueur d ancrage nulle ou négative'
  86 :          XLANC = 1.D-8
  87 :        ENDIF 
  88 : C
  89 : C
  90 : C CARACTERISTIQUES ACIER
  91 : C 
  92 :        EYOUN = XMAT( 1)
  93 :        FSY__ = XMAT( 5)
  94 :        FSU__ = XMAT( 6)
  95 :        EPSH_ = XMAT( 7)
  96 :        EPSU_ = XMAT( 8)
  97 :        ROFAC = XMAT( 9)
  98 :        BFACT = XMAT(10)
  99 :        A1FAC = XMAT(11)
 100 :        A2FAC = XMAT(12)
 101 :        FACLD = XMAT(13)
 102 :        A6FAC = XMAT(14)
 103 :        CFACT = XMAT(15)
 104 :        AFACT = XMAT(16)
 105 : C
 106 : C
 107 : C
 108 : C Joint
 109 : C
 110 :        G12 = XMAT(17)
 111 :        S1T = XMAT(18)
 112 :        S2T = XMAT(19)
 113 :        S3T = XMAT(20)
 114 :        T1T = XMAT(21)
 115 :        T3T = XMAT(22)
 116 :        ALFA = XMAT(23)
 117 : C
 118 :        G12S = 0.10D0*T1T/S1T
 119 : C
 120 :       XJACJOSE =   XPERI * (T1T/S1T) * XLANC 
 121 :       XJACJOEL =   XPERI * G12 * XLANC 
 122 : C
 123 : C
 124 : C Increment de deformation totale
 125 : C
 126 :        DEPS = DEPST
 127 : C
 128 : C
 129 : C Contrainte initiale dans l'acier
 130 : C
 131 :        XSIG0 = SIG0
 132 : C
 133 : C  VARIABLES INTERNES
 134 : C
 135 : C ACIERS
 136 : C
 137 :        IFLAG0 = NINT(VAR0(1))
 138 :        STRAI0 = VAR0(2)
 139 :        RFACT0 = VAR0(3)
 140 :        TANGE0 = VAR0(4)
 141 : C
 142 :        DO IFACT = 1, 2
 143 :           EPSON0(IFACT) = VAR0(4+IFACT)
 144 :           SIGMA0(IFACT) = VAR0(8+IFACT)
 145 :        END DO
 146 : C
 147 :        EPSON0(3) = VAR0(2)
 148 :        SIGMA0(3) = XSIG0
 149 : C
 150 :        DO IFACT = 4, 5
 151 :           EPSON0(IFACT) = VAR0(3+IFACT)
 152 :           SIGMA0(IFACT) = VAR0(7+IFACT)
 153 :        END DO
 154 : C
 155 : C VARIABLES INTERNES JOINT
 156 : C
 157 : C Glissements plastiques du joint
 158 : C
 159 :        EPPP   = VAR0(13)
 160 :        EPPM   = VAR0(14)
 161 : C
 162 : C Glissement total initial 
 163 : C
 164 :        GLISJOI0 = VAR0(15)       
 165 : C
 166 : C Déformation axiale correspondante
 167 : C
 168 :        EPSOJOI0 = GLISJOI0/XLANC          
 169 : C
 170 : C
 171 : C Participation Glissement/déformation acier
 172 : C
 173 : C On estime la partition glissement/déformation initiale à partir
 174 : C des rigidités tangentes ou du lambda précédent
 175 : C 
 176 : C
 176 :        CALL ELIGEH(GLISJOI0,G12,S1T,S2T,S3T,T1T,T3T,ALFA,
 177 :      .            EPPP,EPPM,EPPPF,EPPMF,XKTANJ,TAUF)
 178 : C
 179 :         XDENLAM = (XLANC*XKTANJ) + (0.25D0*XDIAM*TANGE0)
 180 :         IF (ABS(XDENLAM).GT.((1.D-6)*G12*XLANC)) THEN
 181 :            XLAMBDA = (XLANC*XKTANJ)/XDENLAM
 182 :         ELSE
 183 :            XLAMBDA = VAR0(18)
 184 :         ENDIF
 185 : C 
 186 : C
 187 :        NITER = 0
 188 : C
 189 : C ON ITERE
 190 : C
 191 :  100   CONTINUE
 192 : C________________________________________________________________________
 193 : C
 194 : C     CALCUL DES CONTRAINTES ET DES DEFORMATIONS PLASTIQUES DANS L'ACIER
 195 : C_________________________________________________________________________
 196 : C
 197 : C
 198 :        DO IFACT = 1, 5
 199 :           EPSON(IFACT) = EPSON0(IFACT)
 200 :           SIGMA(IFACT) = SIGMA0(IFACT)
 201 :        END DO
 202 : C
 203 :        STRAI = STRAI0 + XLAMBDA*DEPS
 204 :        IFLAG = IFLAG0
 205 :        RFACT = RFACT0
 206 :        TANGE = TANGE0
 207 : C
 207 :        CALL STEEL1
 208 :      .       ( EYOUN, FSY__, FSU__, EPSH_, EPSU_, ROFAC, BFACT,
 209 :      .         A1FAC, A2FAC, FACLD, A6FAC, CFACT, AFACT, IFLAG,
 210 :      .         STRAI, RFACT, EPSON, SIGMA, TANGE, STRES )
 211 : C
 212 : C
 213 : C  XSIGF: CONTRAINTE ACIER
 214 : C
 215 :        XSIGF = STRES
 216 :        XTAN = TANGE
 217 : C 
 218 : C  XFORACIE : Force correspondante 
 219 : C
 220 :        XFORACIE = XSECT*XSIGF
 221 :        XJACACIE = XSECT*XTAN
 222 :        XJACACEL = XSECT*EYOUN
 223 : C_________________________________________         
 224 : C
 225 : C FIN CALCUL CONTRAINTES DANS L'ACIER
 226 : C_________________________________________
 227 : C__________________________________________
 228 : C
 229 : C CALCUL CONTRAINTES DANS L'ANCRAGE
 230 : C__________________________________________
 231 : C
 232 :        GLISJOIN = GLISJOI0 + ((1.D0 - XLAMBDA)*DEPS*XLANC)
 233 : C
 233 :        CALL ELIGEH(GLISJOIN,G12,S1T,S2T,S3T,T1T,T3T,ALFA,
 234 :      .            EPPP,EPPM,EPPPF,EPPMF,XKTANJ,TAUF)
 235 : C
 236 : C
 237 :        XFORJOIN = XPERI * TAUF * XLANC
 238 : C
 239 :        XJACJOIN = XPERI * XKTANJ * XLANC 
 240 : C
 241 :        XJACJOEL =   XPERI * G12 * XLANC 
 242 : C____________________________________________
 243 : C
 244 : C FIN CALCUL CONTRAINTE DANS L'ANCRAGE
 245 : C____________________________________________
 246 : C
 247 : C
 248 : C CALCUL DU RESIDU
 249 : C
 250 :        XRESIDU = XFORACIE - XFORJOIN
 251 : C
 252 : C TEST DE SORTIE
 253 : C
 254 :        IF (ABS(XRESIDU/(XSECT*FSY__)).LE.1.D-7) GOTO 1000
 255 : C  
 256 : C
 257 :         NITER = NITER + 1
 258 : C           
 259 :       IF (NITER.GT.1000) THEN
 260 :           WRITE (*,*) 'Non convergence dans les itérations '
 261 :           WRITE (*,*) 'internes de ACIER_ANCRAGE'
 262 :          GOTO 1000
 263 :       ENDIF 
 264 : C
 265 : C CALCUL DU JACOBIEN
 266 : C
 267 : C
 268 :        XJACTAN = (XJACACIE + (XLANC*XJACJOIN))
 269 :        IF (ABS(XJACTAN).LT. ((XJACACEL + (XLANC*XJACJOSE))*1.D-3)) THEN
 270 :            XJACTAN = ((XJACACEL + (XLANC*XJACJOSE))*1.D-3)
 271 :        ENDIF
 272 : C
 273 :        IF (NITER.EQ.1) THEN
 274 :          XJAC = XJACTAN*DEPS
 275 :        ELSEIF ((NITER.EQ.10)) THEN
 276 :          XJAC = XJACTAN*DEPS
 277 :        ELSEIF ((NITER.EQ.20)) THEN
 278 :          XJAC = XJACTAN*DEPS
 279 :        ELSEIF ((NITER.EQ.30)) THEN
 280 :          XJAC = XJACTAN*DEPS
 281 :        ELSEIF ((NITER.EQ.40)) THEN
 282 :          XJAC = XJACTAN*DEPS
 283 :        ELSEIF ((NITER.EQ.50)) THEN
 284 :          XJAC = (XJACACEL + (XLANC*XJACJOEL))*DEPS
 285 :          XLAMBDA = VAR0(18)
 286 :          GOTO 100
 287 :        ELSEIF ((NITER.EQ.100)) THEN
 288 :          XJAC = XJACTAN*DEPS
 289 :        ELSEIF (NITER.EQ.200) THEN
 290 :          XJAC = (XJACACEL + (XLANC*XJACJOEL))*DEPS
 291 :          XLAMBDA = 0.D0
 292 :          GOTO 100
 293 :        ELSEIF ((NITER.EQ.300)) THEN
 294 :          XJAC = XJACTAN*DEPS
 295 :        ENDIF 
 296 : C        
 297 :        IF (ABS(DEPS).LT.1.D-9) GOTO 1000
 298 : C  
 299 :              XH0 = 1.0D0 / XJAC
 300 :              XLAMBDA = XLAMBDA - (XH0*XRESIDU)
 301 : C
 302 :           IF (ABS(XLAMBDA).GT.50.D0) THEN
 303 :             XLAMBDA = 0.D0
 304 :             XJAC = (XJACACEL + (XLANC*XJACJOEL))*DEPS
 305 :             GOTO 100
 306 :           ENDIF 
 307 : C
 308 :        GOTO 100             
 309 : C
 310 : C
 311 :  1000  CONTINUE
 312 : C
 313 : C     ON SORT
 314 : C
 315 :        SIGF = XSIGF
 316 : C
 317 : C
 318 : C  DEFORMATION PLASTIQUE ACIER
 319 : C
 320 :        DEFP    = (XLAMBDA*DEPS) - ((XSIGF - XSIG0) / EYOUN)
 321 : C
 322 : C VARIABLES INTERNES ACIER
 323 : C
 324 :        VARF(1) = DBLE(IFLAG)
 325 :        VARF(2) = STRAI
 326 :        VARF(3) = RFACT
 327 :        VARF(4) = TANGE
 328 : C
 329 :        DO IFACT = 1, 2
 330 :           VARF(4+IFACT) = EPSON(IFACT)
 331 :           VARF(8+IFACT) = SIGMA(IFACT)
 332 :        END DO
 333 : C
 334 :        DO IFACT = 4, 5
 335 :           VARF(3+IFACT) = EPSON(IFACT)
 336 :           VARF(7+IFACT) = SIGMA(IFACT)
 337 :        END DO
 338 : C
 339 : C VARIABLES INTERNES JOINT 
 340 : C
 341 :        VARF(13) = EPPPF
 342 :        VARF(14) = EPPMF
 343 :        VARF(15) = GLISJOIN
 344 :        XKTADEN = (XJACJOIN*XLANC) + XJACACIE
 345 :        IF ((ABS(XKTADEN)).GE.1.D-10) THEN
 346 :          VARF(16) = XJACJOIN*XLANC*XJACACIE/(XKTADEN*XSECT)
 347 :        ELSE 
 348 :          VARF(16) = 0.D0
 349 :        ENDIF
 350 :        VARF(17) = NITER    
 351 :        VARF(18) = XLAMBDA 
 352 : C
 353 :        RETURN
 354 :        END
 355 :  
 356 :  
 357 :  
 358 :  
 359 :  
 360 :  

© Cast3M 2003 - All rights reserved.
Disclaimer