Download dbdst2.eso

Back to the list

   1 : C DBDST2    SOURCE    CHAT      05/01/12    22:37:17     5004           
   2 :       SUBROUTINE DBDST2(XEL,DD,XDDL,IGAU,BGENE,CMATE,COSA,SINA
   3 :      1                                  ,XSTRS)                           
   4 : C======================================================================         
   5 : C                                                                               
   6 : C  AJOUTE DANS LES CONTRAINTES XSTRS LA PARTIE DHO * EPS2                       
   7 : C                  QUE POUR LES ELEMENTS DST                                    
   8 : C  ENTREE                                                                       
   9 : C    XEL(3,3)           =COORDONNEES LOCALES  DU DST                            
  10 : C    DD(8,8)            =MATRICE DE HOOKE                                       
  11 : C    XDDL(18)          =D D L LOCAUX DE LA FORMULATION                          
  12 : C    IGAU               =NUMERO DU POINT DE GAUSS    DE 1 A 3                   
  13 : C    XSTRS(8)           =CONTRAINTES  DHO*(EPS1        )                        
  14 : C   BGENE(8,18)         =RELIE LES DEFORMATIONS AUX DDL                         
  15 : C  CMATE                ='ISOTROPE' OU 'ORTHOTRO'
  16 : C  COSA                 =COSINUS ET SINUS DU L'ANGLE ENTRE l'AXE
  17 : C  SINA                  1 DE L'ORTHOTROPIE ET L'AXE X
  18 : C  SORTIE                                                                       
  19 : C    XSTRS(6)           =CONTRAINTES DHO*(EPS1 + EPS2 )                         
  20 : C                                                                               
  21 : C   CODE EBERSOLT AOUT  85   +  P DOWLATYARI OCT. 91 POUR ELEMENT DST           
  22 : C=======================================================================        
  23 :       IMPLICIT INTEGER(I-N)
  24 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
  25 :       DIMENSION XEL(3,*),DD(8,*),XSTRS(*),XDDL(*),BGENE(8,*)                    
  26 :       DIMENSION EPS2(3),SHP(6,9),ROT(9)                                         
  27 :       CHARACTER*8 CMATE   
  28 : C                                                                               
  29 : C                                                                               
  30 :       DATA XZER,UNDEMI,TRDEMI/0.D0,.5D0,1.5D0/                                               
  31 : C                                                                               
  32 :       BETAX=XZER                                                                
  33 :       BETAY=XZER                                                                
  34 :       GAMAXZ=XZER                                                               
  35 :       GAMAYZ=XZER                                                               
  36 : C                                                                               
  36 :       CALL DKTSHP(IGAU,XEL,SHP,DJAC)                                            
  37 : C                                                                               
  38 : C     ON EXTRAIT LES DEGRES W ROT X ROT Y                                       
  39 : C                                                                               
  40 :       IACC= 0                                                                   
  41 :       IADD= 2                                                                   
  42 :       DO 100 IA=1,3                                                             
  43 :       DO 110 IB=1,3                                                             
  44 :       ROT(IACC+IB)=XDDL(IADD+IB)                                                
  45 :  110  CONTINUE                                                                  
  46 :       IF(CMATE.NE.'ISOTROPE')THEN 
  47 :         RRX=ROT(IACC+2)*COSA+ROT(IACC+3)*SINA
  48 :         RRY=ROT(IACC+2)*(-SINA)+ROT(IACC+3)*COSA
  49 :         ROT(IACC+2)=RRX
  50 :         ROT(IACC+3)=RRY
  51 :       ENDIF
  52 :       IACC=IACC+3                                                               
  53 :       IADD=IADD+6                                                               
  54 :  100  CONTINUE                                                                  
  55 : C                                                                               
  56 : C     LES ROT SONT DES W   -BETAX  -BETAY AUX 3 NOEUDS                                
  57 : C     LES XDDL  SONT LES W RX RY AUX 3 NOEUDS                                   
  58 : C                                                                               
  59 :       CCC   = ROT(2)                                                            
  60 :       ROT(2)=-ROT(3)                                                            
  61 :       ROT(3)= CCC                                                               
  62 : C                                                                               
  63 :       CCC   = ROT(5)                                                            
  64 :       ROT(5)=-ROT(6)                                                            
  65 :       ROT(6)= CCC                                                               
  66 : C                                                                               
  67 :       CCC   = ROT(8)                                                            
  68 :       ROT(8)=-ROT(9)                                                            
  69 :       ROT(9)= CCC                                                               
  70 : C                                                                               
  71 :       DO 200 IA=1,9                                                             
  72 :       BETAX =SHP(2,IA)*ROT(IA) +BETAX                                           
  73 :       BETAY =SHP(3,IA)*ROT(IA) +BETAY                                           
  74 :   200 CONTINUE                                                                  
  75 : C                                                                               
  76 :       DO 210 IA=1,18                                                             
  77 :       GAMAXZ=BGENE(7,IA)*XDDL(IA)+GAMAXZ                                        
  78 :       GAMAYZ=BGENE(8,IA)*XDDL(IA)+GAMAYZ                                        
  79 :  210  CONTINUE                                                                  
  80 : C
  81 : C     ON AJOUTE L'EFFET DE CISAILLEMENT
  82 : C
  83 :       IF(IGAU.EQ.1)THEN
  84 :         DX=XEL(1,2)-XEL(1,1)                                                      
  85 :         DY=XEL(2,2)-XEL(2,1)                                                      
  86 :       ELSEIF(IGAU.EQ.2)THEN
  87 :         DX=XEL(1,3)-XEL(1,1)                                                      
  88 :         DY=XEL(2,3)-XEL(2,1)                                                      
  89 :       ELSE
  90 :         DX=XEL(1,3)-XEL(1,2)                                                      
  91 :         DY=XEL(2,3)-XEL(2,2)                                                      
  92 :       ENDIF              
  93 :       XLONG= DX*DX + DY*DY                                                      
  94 :       XLON2= SQRT(XLONG)                                                        
  95 :       CC=DX/XLON2                                                               
  96 :       SS=DY/XLON2                                                               
  97 :       BETAX=BETAX-TRDEMI*CC*CC*GAMAXZ-TRDEMI*SS*CC*GAMAYZ
  98 :       BETAY=BETAY-TRDEMI*SS*CC*GAMAXZ-TRDEMI*SS*SS*GAMAYZ
  99 : C
 100 : C     BETA EST EN REALITE  -BETA DONC:W,X=BETAX+GAMAXZ
 101 : C                                                                               
 102 :       DWDX = BETAX + GAMAXZ                                                     
 103 :       DWDY = BETAY + GAMAYZ                                                     
 104 : C                                                                               
 105 :       EPS2(1)= DWDX*DWDX*UNDEMI                                                 
 106 :       EPS2(2)= DWDY*DWDY*UNDEMI                                                 
 107 :       EPS2(3)= DWDX*DWDY                                                        
 108 : C                                                                               
 109 : C     MULTIPLICATION PAR LA MATRICE DE HOOKE                                    
 110 : C                                                                               
 111 :       DO 300 IB=1,3                                                             
 112 :       DO 300 IC=1,3                                                             
 113 :       XSTRS(IB)=XSTRS(IB)+ DD(IB,IC)*EPS2(IC)                                   
 114 :   300 CONTINUE                                                                  
 115 : C                                                                               
 116 :       RETURN                                                                    
 117 :       END                                                                       
 118 :  

© Cast3M 2003 - All rights reserved.
Disclaimer