Download ricbet.eso

Back to the list

   1 : C RICBET    SOURCE    BR232186  12/08/01    22:53:33     7456           
   2 :           SUBROUTINE RICBET(wrk52,wrk53,wrk54,nvari,iecou)
   3 : C
   4 : C====&===1=========2=========3=========4=========5=========6=========7==
   5 : C Commentaires : Subroutine permettant de mettre en oeuvre le 
   6 : C                        modele RICBET (B. Richard) pour representer
   7 : C                le comportement 2D/3D d'un beton ordinaire sous                 
   8 : C                sollicitations cycliques
   9 : C
  10 : C Traits       : - Endommagement scalaire 
  11 : C                - Boucles hystÂŽrÂŽsis
  12 : C                - DÂŽformations permanentes
  13 : C                - Refermeture lineaire des fissures
  14 : C                - Effet unilatteral complet
  15 : C                - Non localite portant sur le seuil d'endommagement (Fd)
  16 : C
  17 : C Auteur       : B. Richard
  18 : C
  19 : C Co-auteur    : F. Ragueneau
  20 : C
  21 : C Date         : 2010 - 2011
  22 : C====&===1=========2=========3=========4=========5=========6=========7==
  23 : C
  24 : C-----DECLARATION GENERALE----------------------------------------------
  25 : C
  26 :       IMPLICIT REAL*8(A-H,O-Z)
  27 :       REAL*8 DEPST2(4),DEPST3(6),VAR1(42)
  28 : C
  29 : C-----LISTE DES INCLUDES A CHARGER--------------------------------------
  30 : C
  31 : -INC CCOPTIO 
  32 : -INC DECHE
  33 : C
  34 : C-----DEFINITION DE L ISOTROPIE-----------------------------------------
  35 : C
  36 :       CMATE = 'ISOTROPE'
  37 : C
  38 : C-----PARAMETERES-------------------------------------------------------
  39 : C
  40 :      
  41 : C     Dans le cas d'un calcul local      : 
  42 : C                --> NSUB = NSUB0
  43 : C
  44 : C     Dans le cas d'un calculs non local : 
  45 : C                --> calcul du seuil : NSUB = 1
  46 : C                --> calcul moyenne  : NSUB = NSUB0
  47 : 
  48 : 
  49 : C     Choix de NSUB0 de maniere adaptative
  50 :       XTEMP = 0.0D0
  51 : 
  52 :       DO I=1,(2*IDIM)
  53 :          XTEMP = MAX(DABS(DEPST(I)),XTEMP)
  54 :       ENDDO
  55 :       
  56 :       IF (XTEMP.LE.1.0D-5) THEN
  57 :          NSUB0 = 10
  58 :       ELSEIF ((XTEMP.GT.1.0D-5).AND.(XTEMP.LE.1.0D-4)) THEN
  59 :          NSUB0 = 100
  60 :       ELSEIF ((XTEMP.GT.1.0D-4).AND.(XTEMP.LE.1.0D-3)) THEN
  61 :          NSUB0 = 1000
  62 :       ELSEIF (XTEMP.GT.1.0D-3) THEN
  63 :          NSUB0 = 1000
  64 :       ENDIF
  65 : 
  66 :       IF (ISTEP.EQ.0) THEN
  67 :          NSUB = NSUB0
  68 :       ELSEIF (ISTEP.EQ.1) THEN
  69 :          NSUB = 1
  70 :       ELSEIF (ISTEP.EQ.2) THEN
  71 :          NSUB = NSUB0
  72 :       ENDIF
  73 : 
  74 : C
  75 : C-----SWITCH SELON LA DIMENSION-----------------------------------------
  76 : C
  77 :       IF (IDIM.EQ.2) THEN
  78 :       
  79 :       PRINT*,'Pas operationnel... a travailler'
  80 :       STOP
  81 : 
  82 : C     RICBET2D
  83 : C-----------------------------------------------------------------------
  84 : C
  85 : 
  86 : C        On forme le vecteur des increments de deformations subdivisees
  87 :          DO K=1,4
  88 :             DEPST2(K)=DEPST(K)/NSUB
  89 :          ENDDO
  90 : 
  91 : C        On retient les varibles internes de depart
  92 :          DO K=1,42
  93 :             VAR1(K)=VAR0(K)
  94 :          ENDDO
  95 : 
  96 : C        On commence le substepping
  97 :          DO J=1,NSUB
  98 : 
  98 :             CALL RICBET2D(XMAT,SIG0,SIGF,VAR1,VARF,DEPST2,ISTEP)
  99 : 
 100 :             DO I=1,42
 101 :                VAR1(I)=VARF(I)
 102 :             ENDDO
 103 :          
 104 :          ENDDO
 105 : 
 106 :       ELSE
 107 :       
 108 : C     RICBET3D
 109 : C-----------------------------------------------------------------------
 110 : C
 111 : 
 112 : C        On forme le vecteur des increments de deformations subdivisees
 113 :          DO K=1,6
 114 :             DEPST3(K)=DEPST(K)/NSUB
 115 :          ENDDO
 116 : 
 117 : C        On retient les varibles internes de depart
 118 :          DO K=1,42
 119 :             VAR1(K)=VAR0(K)
 120 :          ENDDO
 121 : 
 122 : C        On commence le substepping
 123 :          DO J=1,NSUB
 124 : 
 124 :             CALL RICBET3D(XMAT,SIG0,SIGF,VAR1,VARF,DEPST3,ISTEP)
 125 : 
 125 : C            CALL RICBET3D2(XMAT,SIG0,SIGF,VAR1,VARF,DEPST3,ISTEP)
 126 : 
 127 :             DO I=1,42
 128 :                VAR1(I)=VARF(I)
 129 :             ENDDO
 130 :          
 131 :          ENDDO
 132 : 
 133 :       ENDIF
 134 : 
 135 :       RETURN
 136 :           END
 137 : 
 138 : 
 139 : 
 140 : 
 141 : 
 142 : 
 143 : 
 144 : 
 145 : 
 146 : 
 147 : 
 148 : 
 149 : 
 150 : 
 151 : 
 152 : 
 153 : 
 154 : 
 155 : 
 156 :  

© Cast3M 2003 - All rights reserved.
Disclaimer