Download dohmas.eso

Back to the list

   1 : C DOHMAS    SOURCE    CHAT      05/01/12    22:53:45     5004           
   2 : 
   3 : C=======================================================================
   4 : C=                            D O H M A S                              =
   5 : C=                            -----------                              =
   6 : C=                                                                     =
   7 : C=  Fonction :                                                         =
   8 : C=  ----------                                                         =
   9 : C=  Calcul de la matrice de Hooke (elasticite lineaire) dans le cas    =
  10 : C=  des materiaux isotropes                                            =
  11 : C=                                                                     =
  12 : C=  Parametres :  (E)=Entree  (S)=Sortie                               =
  13 : C=  ------------                                                       =
  14 : C=   VELA     (E)   Valeurs des parametres elastiques du materiau      =
  15 : C=   MATE     (E)   Chaine contenant le type du materiau               =
  16 : C=   IFOU     (E)   Mode de calcul (cf. IFOUR de CCOPTIO)              =
  17 : C=   LHOOK    (S)   Dimension de la matrice de Hooke                   =
  18 : C=   KCAS     (E)   =1 si on veut la matrice de Hooke associee au mode =
  19 : C=                  de calcul (non necessairement inversible)          =
  20 : C=                  =2 si on veut la matrice de Hooke complete pour    =
  21 : C=                  l'inverser par la suite (matrice de souplesse)     =
  22 : C=   DDHOOK   (S)   Matrice de Hooke dans le repere GLOBAL             =
  23 : C=   IRET     (S)   =1 si option existante , =0 sinon                  =
  24 : C=======================================================================
  25 : 
  26 :       SUBROUTINE DOHMAS (VELA,MATE,IFOU,LHOOK,KCAS,DDHOOK,IRET)
  27 : 
  28 :       IMPLICIT INTEGER(I-N)
  29 :       IMPLICIT REAL*8 (A-H,O-Z)
  30 : 
  31 :       PARAMETER (XUnDemi=0.5,XUn=1.)
  32 : 
  33 :       DIMENSION VELA(*),DDHOOK(LHOOK,*)
  34 :       CHARACTER*(*) MATE
  35 : 
  36 :       IRET=1
  37 : C= ERREUR si le materiau n'est pas massif ISOTROPE ou POREUX (isotrope)
  38 :       IF (MATE.NE.'ISOTROPE'.AND.MATE.NE.'POREUX  ') THEN
  39 :         IRET=0
  40 :         RETURN
  41 :       ENDIF
  42 : 
  43 : C= Initialisation de la matrice de Hooke
  43 :       CALL ZERO(DDHOOK,LHOOK,LHOOK)
  44 : 
  45 : C= Recuperation des module d'Young et coefficient de Poisson
  46 :       YOU=VELA(1)
  47 :       XNU=VELA(2)
  48 : 
  49 : C= -> Contraintes planes avec KCAS=1
  50 :       IF (IFOU.EQ.-2.AND.KCAS.EQ.1) THEN
  51 :         AUX=YOU/(XUn-XNU*XNU)
  52 :         AUX1=AUX*XNU
  53 :         DDHOOK(1,1)=AUX
  54 :         DDHOOK(1,2)=AUX1
  55 :         DDHOOK(2,1)=AUX1
  56 :         DDHOOK(2,2)=AUX
  57 :         DDHOOK(4,4)=XUnDemi*YOU/(XUn+XNU)
  58 : 
  59 : C= -> Deformations planes, Axisymetrie et Contraintes planes avec KCAS=2
  60 :       ELSE IF (IFOU.EQ.-1.OR.IFOU.EQ.0.OR.IFOU.EQ.-3.OR.
  61 :      .         (IFOU.EQ.-2.AND.KCAS.EQ.2)) THEN
  62 :         AUX0=YOU/((XUn+XNU)*(XUn-XNU-XNU))
  63 :         AUX=AUX0*(XUn-XNU)
  64 :         AUX1=AUX0*XNU
  65 :         DDHOOK(1,1)=AUX
  66 :         DDHOOK(2,1)=AUX1
  67 :         DDHOOK(3,1)=AUX1
  68 :         DDHOOK(1,2)=AUX1
  69 :         DDHOOK(2,2)=AUX
  70 :         DDHOOK(3,2)=AUX1
  71 :         DDHOOK(1,3)=AUX1
  72 :         DDHOOK(2,3)=AUX1
  73 :         DDHOOK(3,3)=AUX
  74 :         DDHOOK(4,4)=XUnDemi*YOU/(XUn+XNU)
  75 : 
  76 : C= -> Serie de Fourier et 3D
  77 :       ELSE IF (IFOU.EQ.1.OR.IFOU.EQ.2) THEN
  78 :         AUX0=YOU/((XUn+XNU)*(XUn-XNU-XNU))
  79 :         AUX=AUX0*(XUn-XNU)
  80 :         AUX1=AUX0*XNU
  81 :         GEGE=XUnDemi*YOU/(XUn+XNU)
  82 :         DDHOOK(1,1)=AUX
  83 :         DDHOOK(2,1)=AUX1
  84 :         DDHOOK(3,1)=AUX1
  85 :         DDHOOK(1,2)=AUX1
  86 :         DDHOOK(2,2)=AUX
  87 :         DDHOOK(3,2)=AUX1
  88 :         DDHOOK(1,3)=AUX1
  89 :         DDHOOK(2,3)=AUX1
  90 :         DDHOOK(3,3)=AUX
  91 :         DDHOOK(4,4)=GEGE
  92 :         DDHOOK(5,5)=GEGE
  93 :         DDHOOK(6,6)=GEGE
  94 : 
  95 : C= -> Modes de calcul 1D
  96 :       ELSE IF (IFOU.GE.3.AND.IFOU.LE.15) THEN
  97 :         IF (IFOU.EQ.6.AND.KCAS.EQ.1) THEN
  98 :           DDHOOK(1,1)=YOU
  99 :         ELSE IF ((IFOU.EQ.4.OR.IFOU.EQ.8).AND.KCAS.EQ.1) THEN
 100 :           AUX=YOU/(XUn-XNU*XNU)
 101 :           AUX1=AUX*XNU
 102 :           DDHOOK(1,1)=AUX
 103 :           DDHOOK(2,1)=AUX1
 104 :           DDHOOK(1,2)=AUX1
 105 :           DDHOOK(2,2)=AUX
 106 :         ELSE IF ((IFOU.EQ.5.OR.IFOU.EQ.10.OR.IFOU.EQ.13).AND.
 107 :      .           KCAS.EQ.1) THEN
 108 :           AUX=YOU/(XUn-XNU*XNU)
 109 :           AUX1=AUX*XNU
 110 :           DDHOOK(1,1)=AUX
 111 :           DDHOOK(3,1)=AUX1
 112 :           DDHOOK(1,3)=AUX1
 113 :           DDHOOK(3,3)=AUX
 114 :         ELSE
 115 :           AUX0=YOU/((XUn+XNU)*(XUn-XNU-XNU))
 116 :           AUX=AUX0*(XUn-XNU)
 117 :           AUX1=AUX0*XNU
 118 :           DDHOOK(1,1)=AUX
 119 :           DDHOOK(2,1)=AUX1
 120 :           DDHOOK(3,1)=AUX1
 121 :           DDHOOK(1,2)=AUX1
 122 :           DDHOOK(2,2)=AUX
 123 :           DDHOOK(3,2)=AUX1
 124 :           DDHOOK(1,3)=AUX1
 125 :           DDHOOK(2,3)=AUX1
 126 :           DDHOOK(3,3)=AUX
 127 :         ENDIF
 128 : 
 129 : C= -> Cas non prevus actuellement
 130 :       ELSE
 131 :         IRET=0
 132 :       ENDIF
 133 : 
 134 :       RETURN
 135 :       END
 136 : 
 137 :  
 138 :  

© Cast3M 2003 - All rights reserved.
Disclaimer