Download courbu.eso

Back to the list

   1 : C COURBU    SOURCE    CHAT      05/01/12    22:25:35     5004           
   2 :       SUBROUTINE COURBU(SIG,FT,ISGN1,ISGN2,NSURF,FFF)
   3 : C Calcul de la derivee seconde pour le calcul de la matrice tangente
   4 : C 21/08/95
   5 : C
   6 :       IMPLICIT INTEGER(I-N)
   7 :       IMPLICIT REAL*8(A-H,O-Z)
   8 : C
   9 : C========================================================================
  10 : C
  11 : C ENTREES:
  12 : C -------
  13 : C   SIG    = Vecteurs contraintes egal a SIGT pour les deux surfaces
  14 : C   ISGN1  =  1 EN TRACTION -1 EN COMPRESSION
  15 : C   ISGN2  = -1 SI ON ECOULE SUR LA PLUS PETITE CONT. PRIN.
  16 : C            +1 SI ON ECOULE SUR LA PLUS GRANDE CONT. PRINC.
  17 : C   FT     = Contrainte de reference pour le test de l'apex
  18 : C SORTIES:
  19 : C -------
  20 : C   FFF    = Derivee seconde (matrice 3*3) 
  21 : C
  22 : C
  23 : C========================================================================
  24 : C
  25 :       PARAMETER(UNDEMI=.5D0,UNQUAR=.25D0,UN=1.D0,
  26 :      &          DEUX =2.D0,PRECIS=1.D-4)
  27 : C
  28 :       DIMENSION SIG(4),XPP(3,3),FFF(3,3),XPSIG(3,1),XPSIGT(1,3)
  29 : C
  29 :       CALL ZERO(XPP,3,3)
  29 :       CALL ZERO(FFF,3,3)
  30 :       XPP(1,1) = UNDEMI
  31 :       XPP(1,2) = (-1.D0)*UNDEMI
  32 :       XPP(2,1) = (-1.D0)*UNDEMI
  33 :       XPP(2,2) = UNDEMI
  34 :       XPP(3,3) = DEUX
  35 :       SIG(3) = SIG(4)
  36 : C========================================================================
  37 : C                      Calcul de phi
  38 : C====================================================================
  39 :       PHI = SQRT ((UNDEMI*(SIG(1)-SIG(2)))**2+SIG(3)**2)
  40 :       IF (PHI.LT.ABS(PRECIS*FT)) THEN 
  41 : C                      Cas de l'apex
  42 :         IF (NSURF.EQ.2) THEN
  43 :           PHI = (ISGN2*ISGN1)*(UN/ABS(PRECIS*FT))
  43 :           CALL PLMATR(XPP,UNDEMI*PHI,FFF,XZER,3,3,FFF)
  44 :         ELSE
  44 :           CALL ZERO(FFF,3,3)
  45 :         ENDIF
  46 :       ELSE
  47 : C                      Cas regulier
  47 :         CALL MATVE1(XPP,SIG,3,3,XPSIG,2)
  47 :         CALL MATVE1(XPP,SIG,3,3,XPSIGT,1) 
  47 :         CALL MATMAT(XPSIG,XPSIGT,3,1,3,FFF) 
  48 :         PHI = (ISGN1*ISGN2)*(UN/PHI)
  48 :         CALL PLMATR(XPP,UNDEMI*PHI,FFF,-UNQUAR*(PHI**3),3,3,FFF)
  49 :       ENDIF
  50 : C========================================================================
  51 : C                     Fin de la routine
  52 : C========================================================================
  53 :       RETURN
  54 :       END
  55 :  
  56 :  

© Cast3M 2003 - All rights reserved.
Disclaimer