Download dogo88.eso

Back to the list

   1 : C DOGO88    SOURCE    CHAT      05/01/12    22:53:12     5004           
   2 :       SUBROUTINE DOGO88(VELA,MATE,EPAIST,IFOU,LHOOK,DDHOOK,IRET)
   3 : C
   4 : C=======================================================================
   5 : C
   6 : C  MATRICE DE HOOKE DES ELEMENTS JOINTS GENERALISE JGI2 (2D), 
   7 : C                                          JGI4 ET JGT3 (3D)
   8 : C
   9 : C  ENTREES
  10 : C     VELA() = materiau dans un tableau de travail
  11 : C     MATE   = Nom du materiau
  12 : C     IFOU   = num{ro d'harmonique de  fourier: IFOUR de CCOPTIO
  13 : C     LHOOK  = taille de la matrice de hooke
  14 : C
  15 : C  SORTIES
  16 : C     DDHOOK(LHOOK,LHOOK) = matrice de hooke
  17 : C     IRET = 1 si option existante 0 SINON
  18 : C
  19 : C  REMARQUE : ATTENTION : DANS LES CAS  CONTRAINTES PLANES,
  20 : C             DEFORMATIONS PLANES ET AXISYMETRIQUE,
  21 : C             LA MATRICE DE HOOK N'A PLUS LA DIMENSION
  22 : C             (3X3), MAIS (2X2). C'EST DONC LES DIMENSIONS DU CAS
  23 : C             BIDIMENSIONNEL.
  24 : C
  25 : C  CECI EST UN DOUBLE DE DOHO88, MAIS AVEC LA THEORIE DE PARVIS
  26 : C  POUR LE CALCUL DE LA MATRICE DE TRANSFORMATION. LA MATRICE DE
  27 : C  ROTATION ROTHOO TRANSFORME UN VECTEUR (EN L'OCCURENCE LE VECTEUR
  28 : C  DEPLACEMENT) DU REPERE D'ORTHOTROPIE AU REPERE GLOBAL. IL FAUT
  29 : C  BIEN VOIR QUE CECI EST UNE TRANSFORMATION D'UN VECTEUR EN UN AUTRE
  30 : C  VECTEUR, ET NON PAS LA TRANSFORMATION D'UN TENSEUR (EX: TENSEUR
  31 : C  DES CONTRAINTES) EN UN AUTRE TENSEUR. C'EST DONC CETTE SUBROUTINE
  32 : C  QUI EST LA BONNE, CAR JE RAISONNE EN TERMES DE DEPLACEMENTS, ET
  33 : C  NON EN TERMES DE CONTRAINTES, DANS LE CAS DES JOINTS (cf. LA
  34 : C  RELATION FORCES/DEPLACEMENTS ET NON PAS CONTRAINTES/DEFORMATIONS)
  35 : C
  36 : C          P. PEGON 2001 d'apres DOUO88
  37 : C=======================================================================
  38 : C
  39 :       IMPLICIT INTEGER(I-N)
  40 :       IMPLICIT REAL*8(A-H,O-Z)
  41 :       CHARACTER*8 MATE
  42 : C
  43 :       DIMENSION VELA(*),DDHOOK(LHOOK,*)
  44 :       REAL*8 D3HOO1(3,3),D3HOO2(3,3),ROTHOO(3,3)
  45 :       DATA UN,DEUX,UNDEMI/1.D0,2.0D0,.5D0/
  46 : C
  47 :       IRET=1
  47 :       CALL ZERO(DDHOOK,LHOOK,LHOOK)
  48 : C---->attention, LHOOK vaut 6...
  48 : C     CALL ZERO(D3HOO1,LHOOK,LHOOK)
  49 : C
  50 : C     MATERIAU ISOTROPE
  51 : C
  52 :       IF(MATE.EQ.'ISOTROPE') THEN
  53 : C
  54 :         YOU  =VELA(1)
  55 :         XNU  =VELA(2)
  56 : C
  57 : C     CAS CONTRAINTES PLANES DANS LE PLAN (S1,N)
  58 : C
  59 :         IF(IFOU.EQ.-2) THEN
  60 :           AUX =YOU/(UN-XNU*XNU)
  61 :           AUX1=AUX*XNU
  62 : *
  63 :           DDHOOK(1,1)=(UN-XNU)*AUX*UNDEMI/EPAIST
  64 : *
  65 :           DDHOOK(2,2)=   AUX  / EPAIST
  66 :           DDHOOK(2,3)=   AUX1
  67 : *
  68 :           DDHOOK(3,2)=   AUX1
  69 :           DDHOOK(3,3)=   AUX  * EPAIST
  70 : C
  71 : C      CAS DEFORMATIONS PLANES DANS LE PLAN (S1,N)
  72 : C
  73 :         ELSE IF(IFOU.EQ.-3.OR.IFOU.EQ.-1) THEN
  74 :           AUX0=UN/((UN+XNU)*(UN-DEUX*XNU))
  75 :           AUX =YOU*AUX0*(UN-XNU)
  76 :           AUX1=YOU*AUX0*XNU
  77 : *
  78 :           DDHOOK(1,1)=YOU*UNDEMI/(UN+XNU)/EPAIST
  79 : *
  80 :           DDHOOK(2,2)=   AUX  / EPAIST
  81 :           DDHOOK(2,3)=   AUX1
  82 :           DDHOOK(2,4)=   AUX1
  83 : *
  84 :           DDHOOK(3,2)=   AUX1
  85 :           DDHOOK(3,3)=   AUX  * EPAIST
  86 :           DDHOOK(3,4)=   AUX1 * EPAIST
  87 : *
  88 :           DDHOOK(4,2)=   AUX1
  89 :           DDHOOK(4,3)=   AUX1 * EPAIST
  90 :           DDHOOK(4,4)=   AUX  * EPAIST
  91 : C
  92 : C     CAS TRIDIMENSIONNEL
  93 : C
  94 :         ELSE IF(IFOU.EQ.2) THEN
  95 :           AUX0=UN/((UN+XNU)*(UN-DEUX*XNU))
  96 :           AUX =YOU*AUX0*(UN-XNU)
  97 :           AUX1=YOU*AUX0*XNU
  98 : *
  99 :           DDHOOK(1,1)=YOU*UNDEMI/(UN+XNU)/EPAIST
 100 : *
 101 :           DDHOOK(2,2)=DDHOOK(1,1)
 102 : *
 103 :           DDHOOK(3,3)=   AUX  / EPAIST
 104 :           DDHOOK(3,4)=   AUX1
 105 :           DDHOOK(3,5)=   AUX1
 106 : *
 107 :           DDHOOK(4,3)=   AUX1
 108 :           DDHOOK(4,4)=   AUX  * EPAIST
 109 :           DDHOOK(4,5)=   AUX1 * EPAIST
 110 : *
 111 :           DDHOOK(5,3)=   AUX1
 112 :           DDHOOK(5,4)=   AUX1 * EPAIST
 113 :           DDHOOK(5,5)=   AUX  * EPAIST
 114 : *
 115 :           DDHOOK(6,6)=YOU*UNDEMI/(UN+XNU)*EPAIST
 116 : C
 117 : C     OPTION NON DEFINIE
 118 : C
 119 :         ELSE
 120 :           IRET=0
 121 :         ENDIF
 122 : C
 123 : C     MATERIAU ORTHOTROPE (Pour le moment rien!)
 124 : C
 125 : C     ELSE IF(MATE.EQ.'ORTHOTRO') THEN
 126 : C
 127 : C     CAS TRIDIMENSIONNEL
 128 : C
 129 : C       IF(IFOU.EQ.2) THEN
 130 : C         ZK1 =VELA(1)
 131 : C         ZK2 =VELA(2)
 132 : C         ZK3 =VELA(3)
 133 : C         COSA=VELA(4)
 134 : C         SINA=VELA(5)
 135 : C
 136 : C         D3HOO1(1,1)=ZK1
 137 : C         D3HOO1(2,2)=ZK2
 138 : C         D3HOO1(3,3)=ZK3
 139 : C
 140 : C         ROTHOO(1,1) =  COSA
 141 : C         ROTHOO(1,2) = -SINA
 142 : C         ROTHOO(1,3) =  0.0D0
 143 : C         ROTHOO(2,1) =  SINA
 144 : C         ROTHOO(2,2) =  COSA
 145 : C         ROTHOO(2,3) =  0.0D0
 146 : C         ROTHOO(3,1) =  0.0D0
 147 : C         ROTHOO(3,2) =  0.0D0
 148 : C         ROTHOO(3,3) =  1.0D0
 149 : C
 150 : C       PASSAGE DANS LE REPERE DE L'ELEMENT:
 151 : C
 151 : C         CALL PRODT (D3HOO2,D3HOO1,ROTHOO,3,3)
 152 : C         DO 400 J=1,3
 153 : C           DO 400 I=1,3
 154 : C              DDHOOK(I,J) = D3HOO2(I,J)
 155 : C 400     CONTINUE
 156 : C
 157 : C           OPTION NON DEFINIE
 158 : C
 159 : C         ELSE
 160 : C           IRET=0
 161 : C         ENDIF
 162 : C
 163 : C     OPTION NON DEFINIE
 164 : C
 165 :       ELSE
 166 :         IRET=0
 167 :       ENDIF
 168 : C
 169 :       RETURN
 170 :       END
 171 : 
 172 : 
 173 :  
 174 :  

© Cast3M 2003 - All rights reserved.
Disclaimer