Download uo2ca2.eso

Back to the list

   1 : C UO2CA2    SOURCE    STRU      07/05/31    21:15:32     5744           
   2 : C   responsable STRUB
   3 :       SUBROUTINE UO2CA2(DT,MSOUPA,PRECIE,PRECIZ,SIG0,DEPST,EPSV,VARGA0,
   4 :      &                 NGAT,W,WMAX,XLTR,
   5 :      &                 XINVL,GS,XMAT,NCOMAT,NSIMP,AAD,
   6 :      &                 TETA1,TPOINT,FI1,FPOINT,PRECIS,IB,IGAU,
   7 :      &                 NFISSU,NVF,VF,XX,IRESU,NRESU,
   8 :      &                 SIGF,DEFP,EPSVF,VARGAF,KERRE)
   9 : C----------------------------------------------------------------------
  10 : C      ECOULEMENT MODELE UO2 (OTTOSEN ET GATT_MONERIE) SIMPLIFIE
  11 : C----------------------------------------------------------------------         
  12 : C                                                                               
  13 : C  ENTREES
  14 : C  -------
  15 : C DT           = PAS D INTEGRATION
  16 : C MSOUPA       = NBR. MAX. DE SOUS PAS AUTORISES POUR LA VISCOPLASTICITE
  17 : C PRECIE       = PRECISION POUR TESTS SUR OUVERTURES DE FISSURES
  18 : C PRECIZ       = PRECISION POUR TESTS SUR CONTRAINTES
  19 : C SIG0(6)      = CONTR. AU DEBUT DU SOUS PAS D'INTEGRATION
  20 : C DEPST(6)     = INCR. DES DEFORM. TOTALES SUR LE PAS D INTEGRATION
  21 : C EPSV(6)      = DEFORM. VISCOPLAST. AU DEBUT DU SOUS PAS D'INTEGRATION
  22 : C VARGA0(NGAT) = VAR. INT. SCAL. DE GATT_MONERIE AU DEB. DU SS PAS
  23 : C NGAT         = NOMBRE DE VAR. INT. SCALAIRES DU MODELE GATT_MONERIE
  24 : C W(3)         = OUVERTURES DES FISSURES AU DEBUT DU SOUS PAS
  25 : C WMAX(3)      = OUVERTURES MAXIMALES DES FISSURES AU DEBUT DU SOUS PAS
  26 : C XLTR(3)      = LIMITES EN TRACTION POUR LA FISSURATION
  27 : C XINVL(3)     = PARAMETRES DE TAILLE
  28 : C GS(3)        = RESISTANCES AU CISAILLEMENT
  29 : C XMAT(NCOMAT) = CARACTERISTIQUES THERMOMECANIQUES DU MATERIAU
  30 : C NSIMP        = POINTE SUR LA CARACTERISTIQUE FACULTATIVE 'SIMP' DE XMAT
  31 : C AAD          = COEFFICIENT INTERVENANT DANS LE CALCUL DE L INCREMENT
  32 : C                DE LA DEFORMATION DE DENSIFICATION
  33 : C TETA1        = TEMPERATURE AU DEBUT DU PAS D INTEGRATION
  34 : C TPOINT       = VITESSE DE TEMPERATURE CTE SUR LE PAS D INTEGRATION
  35 : C FI1          = DENSITE DE FISSION AU DEBUT DU PAS D INTEGRATION
  36 : C FPOINT       = VIT. DE DENSITE DE FISSION CTE SUR LE PAS D INTEGRATION
  37 : C PRECIS       = PRECISION POUR LA VISCOPLASTICITE
  38 : C IB           = NUMERO DE L ELEMENT
  39 : C IGAU         = NUMERO DU POINT D INTEGRATION
  40 : C NFISSU       = NOMBRE DE FISSURES
  41 : C NVF          = NBR DE DIRECTIONS IMPOSEES POUVANT DEVENIR
  42 : C                DES DIRECTIONS DE FISSURATION
  43 : C
  44 : C  SORTIES
  45 : C  -------
  46 : C W(3)         = OUVERTURES DES FISSURES   A LA FIN DE LA DUREE CALCULEE
  47 : C WMAX(3)      = OUVERTURES MAX. DES FISS. A LA FIN DE LA DUREE CALCULEE
  48 : C VF(3,3)      = VECTEURS DES DIRECTIONS DE FISSURATION
  49 : C XX           = DUREE QUI VIENT D ETRE CALCULEE
  50 : C IRESU(20)    = TYPE DES NOUVELLES NON LINEARITES RENCONTREES
  51 : C                POUR LA FISSURATION
  52 : C NRESU        = NOMBRE DE NOUVELLES NON LINEARITES (FISSURATION)
  53 : C SIGF(6)      = CONTR. A LA FIN DE LA DUREE CALCULEE
  54 : C DEFP(6)      = INC. DES DEFORM. INELASTIQUES (FISSURATION+VISCOPLAST.)
  55 : C                A LA FIN DE LA DUREE CALCULEE
  56 : C EPSVF(6)     = DEFORM. VISCOPLAST. A LA FIN DE LA DUREE CALCULEE
  57 : C VARGAF(NGAT) = VAR. INT. SCAL. A LA FIN DE LA DUREE CALCULEE
  58 : C KERRE        = GESTION DES ERREURS
  59 : C
  60 : C   RAPPEL :  EN DEFO PLANES,CONTRAINTES PLANES OU AXI,
  61 : C             LA DIRECTION 1 EST CELLE PERPENDICULAIRE AU MAILLAGE
  62 : C-----------------------------------------------------------------------        
  63 : C
  64 :       IMPLICIT INTEGER(I-N)
  65 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
  66 : -INC CCOPTIO                                                                   
  67 : C
  68 :       PARAMETER (XZER=0.D0,NC=3,NGATT=4)
  69 : C
  70 :       DIMENSION SIG0(*),DEPST(*),EPSV(*),VARGA0(*)
  71 :       DIMENSION W(*),WMAX(*),XLTR(*)
  72 :       DIMENSION XINVL(*)
  73 :       DIMENSION GS(*),XMAT(*)
  74 :       DIMENSION VF(3,*),IRESU(*)
  75 :       DIMENSION SIGF(*),DEFP(*),EPSVF(*),VARGAF(*)
  76 : C
  77 :       DIMENSION EPSPT(6),SIGG0(6),EPSV0(6),VAR0(NGATT)
  78 :       DIMENSION W0(3),WMAX0(3),DX0(NC),DX00(NC)
  79 :       DIMENSION SIGGF(6),EPSVVF(6),VARF(NGATT),WF(3),DXF(NC),EPSFF(6)
  80 :       DIMENSION DGDS0(6,NC),DGDSF(6,NC),DFDS(6,NC),HDFDQ(NC)
  81 :       DIMENSION WMAXF(3),DXV1(NC)
  82 : C
  83 :       DIMENSION NN(NC),FC(NC),FC2(NC),PENTE(NC),LEBIL(NC)
  84 :       DIMENSION FCV(20),FCV1(20),MM(20)
  85 : C
  86 :       DIMENSION IFERM(NC),NN0(NC)
  87 : C
  88 :       DIMENSION JFIS(3)
  89 : C
  90 :       DATA ITMAX/25/
  91 :       DATA IRMAX/5/
  92 : C
  93 : C--------------------
  94 : C   INITIALISATIONS
  95 : C--------------------
  96 :       KERRE=0
  97 :       NC1=NC+1
  98 :       IRED=0
  99 :       IFLAG1=1
 100 :       YOUN=XMAT(1)
 101 : C
 102 : C --- PAS DE TEMPS CALCULE INITIAL
 103 : C
 104 :       DTCALC=DT
 105 : C
 106 : C ------------ LA VITESSE DE LA DEFORMATION TOTALE EST CTE ------------
 107 : C
 108 :       DO 10 I=1,6
 109 :         EPSPT(I)=DEPST(I)/DT
 110 : 10    CONTINUE
 111 :       IF (IFOUR.EQ.-2) EPSPT(1)=XZER
 112 : C
 113 : C
 114 :       IF(IIMPI.EQ.42) THEN
 115 :          WRITE(IOIMP,74433) (EPSPT(I),I=1,6)
 116 : 74433    FORMAT(1X,' EPSPT ',6(1X,1PE12.5)/)
 117 :       ENDIF
 118 : C
 119 : C ------------ DEFORMATION DE FISSURATION EN OUVERTURE ------------
 120 : C
 121 :       DO I=1,3
 122 :          DX00(I)=W(I)*XINVL(I)
 123 :       ENDDO
 124 : C
 125 : C
 126 : 888   CONTINUE
 127 : C
 128 :       IRED=IRED+1
 129 :       IF(IRED.GT.IRMAX) THEN
 130 :          PRINT *,'&&&&&&&& UO2CA2  IRED = ',IRED
 131 :          KERRE=989
 132 :          RETURN
 133 :       ENDIF
 134 : C
 135 :       IF(IRED.GT.1) DTCALC=0.5*DTCALC
 136 : C
 137 : C
 138 : C
 139 :       DTLEFT = DTCALC
 140 :       TAU    = DTLEFT
 141 :       XX     = XZER
 142 : C
 143 :       T0=TETA1
 144 :       FI0=FI1
 145 : C
 146 : C ----- CONTRAINTES - DEF. VISCOPLAST. -----
 147 : C
 148 :       DO I=1,6
 149 :         SIGG0(I)=SIG0(I)
 150 :         EPSV0(I)=EPSV(I)
 151 :       ENDDO
 152 : C
 153 : C ------- VARIABLES INTERNES DE GATT_MONERIE -------
 154 : C
 155 :       DO I=1,NGAT
 156 :         VAR0(I)=VARGA0(I)
 157 :       ENDDO
 158 : C
 159 : C ------------ VARIABLES DE FISSURATION ------------
 160 : C
 161 :       DO I=1,3
 162 :          W0(I)=W(I)
 163 :          WMAX0(I)=WMAX(I)
 164 :          DX0(I)=W0(I)*XINVL(I)
 165 :       ENDDO
 166 : C
 167 : C
 168 :       NSSINC=0
 169 : C
 170 : C --------------------------------------------------------------        
 171 : C       DEBUT DES ITERATIONS EN SSINCREMENTS / FIN SI DTLEFT = 0                
 172 : C --------------------------------------------------------------
 173 : 1400  CONTINUE
 174 :       ITERU=0
 175 : 1500  CONTINUE
 176 : C
 177 :       NSSINC = NSSINC + 1
 178 :       IF (NSSINC.GT.MSOUPA) THEN
 179 :         KERRE=268
 180 :         PRINT *,' UO2CA2 - PAS DE CONVERGENCE EN VISCOPLASTICITE'
 181 :         RETURN
 182 :       ENDIF
 183 : C
 184 : C-----------------------------------------------------------------------
 185 : C  Etat de fissuration au temps XX et crit. susceptibles d etre atteints
 186 : C-----------------------------------------------------------------------
 186 :       CALL ZDANUL(DXV1,3)
 187 : C
 187 :       CALL UO2ET2(NC,NN,SIGG0,W0,WMAX0,
 188 :      &           XLTR,XINVL,PRECIE,PRECIZ,FC,FC2,LEBIL,NFISSU,
 189 :      &           NVF,VF,FCV,PENTE,DXV1,YOUN,NCA,MC,MM,IFERM,KERRE)
 190 :       IF(KERRE.NE.0) RETURN
 191 : C
 192 : C
 193 :       ITERI=0
 194 : 444   CONTINUE
 195 : C
 196 :       IF (ITERI.NE.0) THEN
 197 : C     --------------------
 198 :         IF(IIMPI.EQ.42) THEN
 199 :           WRITE(IOIMP,74078)
 200 : 74078     FORMAT(/2X,' ON REINITIALISE LE PROCESSUS'//)
 201 :         ENDIF
 202 :         IF(ITERI.GT.NC) THEN
 203 :           KERRE=989
 204 :           PRINT *,' UO2CA2 - PAS DE CONVERGENCE - ITERI ',ITERI
 205 :           RETURN
 206 :         ENDIF
 207 : C
 208 : C       calcul de PENTE pour tableau NN reduit NN(ITERI+1)UO2CR2(NC,NCA,NN,SIGG0,W0,WMAX0,
 210 :      &             XINVL,FC,PENTE,LEBIL,PRECIE,PRECIZ,KERRE)
 211 :         IF(KERRE.NE.0) RETURN
 212 : C
 213 :       ENDIF
 214 : C     -----
 215 : C
 216 :       NDIM=NCA
 217 :       IF(IFOUR.EQ.-2) NDIM=NCA+1                                                                   
 218 : C
 219 : C --- determination d un etat converge pour TAU inf. ou egal a DTCALC
 220 : C
 220 :       CALL UO2DC2(IFLAG1,T0,TPOINT,FI0,FPOINT,PRECIS,PRECIZ,
 221 :      &            XMAT,NCOMAT,NSIMP,AAD,GS,LEBIL,XINVL,PENTE,
 222 :      &            EPSPT,SIGG0,EPSV0,VAR0,W0,WMAX0,DX0,
 223 :      &            NGAT,NC1,NCA,NDIM,NN,TAU,TAUNEX,SIGGF,EPSVVF,
 224 :      &            VARF,WF,DXF,WMAXF,TF,FIF,KERRE)
 225 :       IF (KERRE.NE.0) THEN
 226 :         RETURN 
 227 :       ENDIF
 228 : C
 229 : C --- Viole-t-on un critere de fissuration pour l etat converge ?
 230 : C
 230 :       CALL ZDANUL(DXV1,3)
 231 : C
 231 :       CALL UO2CE2(MC,MM,SIGG0,DXV1,W0,XLTR,XINVL,
 232 :      &           NFISSU,NVF,FCV1,VF,YOUN,PRECIZ,JFIS,KERRE)
 233 :       IF(KERRE.NE.0) RETURN
 234 : C
 234 :       CALL UO2XX2(T0,TPOINT,FI0,FPOINT,PRECIS,PRECIZ,
 235 :      &            XMAT,NCOMAT,NSIMP,AAD,GS,LEBIL,XINVL,PENTE,
 236 :      &            YOUN,EPSPT,SIGG0,EPSV0,VAR0,W0,WMAX0,DX0,
 237 :      &            XLTR,NFISSU,NVF,VF,MC,MM,FCV1,NGAT,NC1,NCA,NDIM,
 238 :      &            NN,TAU,SIGGF,EPSVVF,VARF,WF,DXF,WMAXF,
 239 :      &            TF,FIF,MCA,XXX,IRESU,NRESU,LERED,KERRE)
 240 :       IF(KERRE.NE.0) RETURN
 241 :       IF(LERED.EQ.1) GO TO 888
 242 : C
 243 :       IF(XXX.LE.0.D0) THEN
 244 :          KERRE=989
 245 :          PRINT *,' UO2CA2 - XXX EST NEGATIF OU NUL '
 246 :          RETURN
 247 :       ENDIF
 248 : C
 249 : C
 250 : C --- Controle de la coherence des resultats pour XXX*TAU
 251 : C     ------------------
 252 :       IF (NCA.NE.0) THEN
 253 : C     ------------------
 254 :       NCA0=NCA
 255 :       NCAA=0
 256 :       DO IJ=1,NCA
 257 :          NN0(IJ)=NN(IJ)
 258 :          JJ=NN(IJ)
 259 :          DXSOM=DXF(JJ)-DX0(JJ)
 260 : C
 261 :          IF(DXSOM.GE.0.D0) THEN
 262 :             NCAA=NCAA+1
 263 :             NN(NCAA)=JJ
 264 :          ELSE IF(DXSOM.LT.0.D0) THEN
 265 : C
 266 :             IF(LEBIL(JJ).EQ.1) THEN
 267 : C
 268 :                IF(IFERM(JJ).NE.1) THEN
 269 :                   NCAA=NCAA+1
 270 :                   NN(NCAA)=JJ
 271 :                ELSE IF(IFERM(JJ).EQ.1) THEN
 272 :                   IF(WF(JJ).GT.XZER) THEN
 273 :                      NCAA=NCAA+1
 274 :                      NN(NCAA)=JJ
 275 :                   ENDIF
 276 :                ENDIF
 277 : C
 278 :             ENDIF
 279 :          ENDIF
 280 :       ENDDO
 281 : C
 282 :       IF(IIMPI.EQ.42) THEN
 283 :          WRITE(IOIMP,77008) NCA,NCAA,(NN(IJ),IJ=1,NCAA)
 284 : 77008    FORMAT(5X,'NCA=',I3,2X,'NCAA=',I3/2X,'NN ' ,8I3/)
 285 :       ENDIF
 286 : C
 287 :       IF(NCAA.EQ.0) THEN
 288 :         IF(IIMPI.EQ.42) THEN
 289 :            PRINT *,' UO2CA2 - NCAA EST NUL '
 290 :         ENDIF
 291 :            NCA=NCAA
 292 :            ITERI=ITERI+1
 293 :            GO TO 444
 294 :       ENDIF
 295 : C
 296 : C
 297 :       IF(NCA.NE.NCAA) THEN
 298 :          IF(NCAA.GT.NCA) THEN
 299 :             PRINT *,' UO2CA2 - NCAA EST SUPERIEUR A NCA '
 300 :             KERRE=989
 301 :             RETURN
 302 :          ENDIF
 303 :          NCA=NCAA
 304 :          ITERI=ITERI+1
 305 :          GO TO 444
 306 :       ENDIF
 307 : C     -----
 308 :       ENDIF
 309 : C     -----
 310 : C
 311 : C     -------------------------------------
 312 :       IF ((NCA.EQ.0).AND.(ITERI.NE.0)) THEN
 313 : C     -------------------------------------
 314 :       DO IJ=1,NCA0
 315 :          JJ=NN0(IJ)
 316 :          IF (IFERM(JJ).EQ.1) THEN
 317 :             SXDIF=SIGGF(JJ)-SIGG0(JJ)
 318 :             IF (SXDIF.GT.XZER) THEN
 319 :                PRINT *,'ATTENTION FOIREUX IB IGAU',IB,IGAU
 320 :                ITERU=ITERU+1
 321 :                IF(ITERU.GT.IRMAX) THEN
 322 :                  PRINT *,'&&&&&&&& UO2CA2  ITERU = ',ITERU
 323 :                  KERRE=989
 324 :                  RETURN
 325 :                ENDIF
 326 :                TAU=0.5*TAU
 327 :                GOTO 1500
 328 :             ENDIF
 329 :          ENDIF
 330 :       ENDDO
 331 : C     -----
 332 :       ENDIF
 333 : C     -----
 334 : C --- Fin du controle de la coherence des resultats pour XXX*TAU
 335 : C
 336 : C
 337 :       DO I=1,3
 338 :          IF(WF(I).GE.WMAXF(I)) WMAXF(I)=WF(I)
 339 :       ENDDO
 340 : C
 341 : C
 342 : C ---------------------
 343 : C ENCORE QUELQUES TESTS
 344 : C ---------------------
 344 :       CALL UO2VE2(NRESU,IRESU,SIGGF,WF,WMAXF,
 345 :      &            XLTR,XINVL,PRECIE,PRECIZ,NN,
 346 :      &            NN0,NC,NCA,FC,FC2,PENTE,LEBIL,KERRE)
 347 :       IF(KERRE.NE.0) RETURN
 348 : C
 349 : C
 350 :       IF (MCA.NE.0) THEN
 351 :         XX=XX+(XXX*TAU)
 352 :         GOTO 777
 353 :       ELSE
 354 :         XX=XX+TAU
 355 :       ENDIF
 356 : C
 357 : C ----- MAJ CONTRAINTES - DEF. VISCOPLAST. A t0+XX -----
 358 : C
 359 :       DO I=1,6
 360 :         SIGG0(I)=SIGGF(I)
 361 :         EPSV0(I)=EPSVVF(I)
 362 :       ENDDO
 363 : C
 364 : C ------- MAJ VARIABLES INTERNES DE GATT_MONERIE A t0+XX -------
 365 : C
 366 :       DO I=1,NGAT
 367 :         VAR0(I)=VARF(I)
 368 :       ENDDO
 369 : C
 370 : C ------------ MAJ VARIABLES DE FISSURATION A t0+XX ------------
 371 : C
 372 :       DO I=1,3
 373 :          W0(I)=WF(I)
 374 :          DX0(I)=DXF(I)
 375 :          WMAX0(I)=WMAXF(I)
 376 :       ENDDO
 377 : C
 378 :       T0=TF
 379 :       FI0=FIF
 380 : C
 381 : C ----------------------------------------------------
 382 : C  TEST DE FIN SS INCREMENTS /  MISE A JOUR DE TAU
 383 : C    fin des boucles en ss increments  si tau = dtleft                          
 384 : C ----------------------------------------------------
 385 : C
 386 :       IF (TAU.LT.DTLEFT) THEN
 387 :         DTLEFT = DTLEFT - TAU
 388 :         IF (TAUNEX.GT.DTLEFT) TAUNEX = DTLEFT
 389 :         TAU=TAUNEX
 390 :         GOTO 1400
 391 :       ENDIF                                                                    
 392 : C                                                                               
 393 :       IF (ABS(TAU-DTLEFT).GT.(TAU/1000.)) THEN                                 
 394 :          PRINT *, ' UO2CA2 - PROBLEME  TAU > DTLEFT '
 395 :          KERRE=989
 396 :          RETURN
 397 :       ENDIF
 398 : C
 399 :       XX=DTCALC
 400 : C
 401 :  777  CONTINUE
 402 : C
 403 : C -------------------------
 404 : C MAJ DES VARIABLES A t0+XX
 405 : C -------------------------
 406 : C ------------ MAJ VARIABLES DE FISSURATION ------------
 407 : C
 408 :       DO I=1,3
 409 :          W(I)=WF(I)
 410 :          WMAX(I)=WMAXF(I)
 411 :       ENDDO
 412 : C
 413 : C ----- MAJ DEF. VISCOPLAST. -----
 414 : C
 415 :       DO I=1,6
 416 :         EPSVF(I)=EPSVVF(I)
 417 :       ENDDO
 418 : C
 419 : C ----- MAJ INCREMENT DES DEF. DE FISS. (OUV. + GLISS.)
 420 : C
 420 :       CALL ZDANUL(EPSFF,6)
 421 :       IF (NCA.NE.0) THEN
 422 : C
 423 : C      Calcul de DGDS0/DGDSF pour SIG0/SIGGF (etats initial/duree calculee)
 423 :         CALL UO2FL(NCA,NN,XINVL,PENTE,SIG0,GS,DFDS,DGDS0,HDFDQ,KERRE)
 423 :         CALL UO2FL(NCA,NN,XINVL,PENTE,SIGGF,GS,DFDS,DGDSF,HDFDQ,KERRE)
 424 : C
 425 :         DO IJ=1,NCA
 426 :            JJ=NN(IJ)
 427 :            DO I=1,6
 428 :              DXF(IJ)=W(IJ)*XINVL(IJ)
 429 :              EPSFF(I)=EPSFF(I)+
 430 :      &                     (DGDSF(I,JJ)*DXF(IJ))-(DGDS0(I,JJ)*DX00(IJ))
 431 :            ENDDO
 432 :         ENDDO
 433 :       ENDIF
 434 : C
 435 : C ----- MAJ INCREMENT DES DEF. INELAST. (FISS.+VISCOPLAST.)
 436 : C
 437 :       DO I=1,6
 438 :         EPSFF(I)=EPSFF(I)+(EPSVF(I)-EPSV(I))
 439 :       ENDDO
 440 : C
 441 : C ------- MAJ VARIABLES INTERNES DE GATT_MONERIE -------
 442 : C
 443 :       DO I=1,NGAT
 444 :         VARGAF(I)=VARF(I)
 445 :       ENDDO
 446 : C
 447 : C --------------------------------------------------
 448 : C MAJ CONTR. - INCR. DES DEF. INELAST. - SORTIE
 449 : C --------------------------------------------------
 450 :       DO I=1,6
 451 :         SIGF(I)=SIGGF(I)
 452 :         DEFP(I)=EPSFF(I)
 453 :       ENDDO
 454 : C
 455 : C
 456 :       IF(IIMPI.EQ.42) THEN
 457 :          WRITE(IOIMP,77894) XX
 458 : 77894    FORMAT(1X,'  UO2CA2 - DUREE CALCULEE XX '/1X,1PE12.5/)
 459 :          WRITE(IOIMP,77895) (SIGF(IJ),IJ=1,6)
 460 : 77895    FORMAT(1X,'  UO2CA2 - SIGF    '/(6(1X,1PE12.5))/)
 461 :          WRITE(IOIMP,77896) (DEFP(IJ),IJ=1,6)
 462 : 77896    FORMAT(1X,'  UO2CA2 - DEFP '/(6(1X,1PE12.5))/)
 463 :       ENDIF
 464 : C
 465 :       RETURN
 466 :       END
 467 :  
 468 :  

© Cast3M 2003 - All rights reserved.
Disclaimer