Download cq3grf.eso

Back to the list

   1 : C CQ3GRF    SOURCE    CHAT      05/01/12    22:26:55     5004           
   2 :       SUBROUTINE CQ3GRF(XXE,UUE,GRADF,                                          
   3 :      1 UE,XX,YY,P,XE,YE,ZE,DT,DF,T,Q,SD,TM)                                     
   4 : C|=====================================================================|        
   5 : C|                                                                     |        
   6 : C|       ELEMENT COQ3 CALCUL DES GRADIENS EN FLEXION ( GARFLEXI )      |        
   7 : C|                                                                     |        
   8 : C|== ENTREE                                                            |        
   9 : C|      XXE(3,3) COORDONEES DES 3 NOEUDS DE L ELEMENT                  |        
  10 : C|               RANGES X(1,2)=COORDONNEE X DU NOEUD 2                 |        
  11 : C|                      X(2,2)=COORDONNEE Y DU NOEUD 2                 |        
  12 : C|                      X(3,2)=COORDONNEE Z DU NOEUD 2                 |        
  13 : C|      UUE(18)  VECTEUR DEPLACEMENT DE L ELEMENT                      |        
  14 : C|                                                                     |        
  15 : C|== SORTIE                                                            |        
  16 : C|      GARDF(9) GARFLEXI AUX CENTRE DE GRAVITE                        |        
  17 : C|               RANGEE  1-9                                           |        
  18 : C|               WDXX   WDXY    0    0    WDYX   WDYY    0    0    0   |        
  19 : C|                                                                     |        
  20 : C|   CODE SUO X.Z.                                                     |        
  21 : C|=====================================================================|        
  22 :       IMPLICIT INTEGER(I-N)
  23 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
  24 :       DIMENSION GRADF(9),XXE(3,3),UUE(18)                                       
  25 :       DIMENSION TM(4),UE(18),DT(6),DF(9)                                        
  26 :       DIMENSION XX(3),YY(3),P(3,3),XE(3),YE(3),ZE(3)                            
  27 :       DIMENSION T(4,3),Q(3,9),SD(3)                                             
  28 :       DATA UNTIER,DETIER/.333333333333333D0,.6666666666666667D0/                
  29 :       DATA QUTIER,CISOIX/1.33333333333333D0,.0833333333333333D0/                
  30 :       DATA UNSIX/0.1666666666666667D0/                                          
  31 : C                                                                               
  32 : C                                                                               
  33 : C                                                                               
  34 :       DO 2 IP=1,18                                                              
  35 :     2 UE(IP)=UUE(IP)                                                            
  36 :       DO 4 IP=1,3                                                               
  37 :       XE(IP)=XXE(1,IP)                                                          
  38 :       YE(IP)=XXE(2,IP)                                                          
  39 :       ZE(IP)=XXE(3,IP)                                                          
  40 :     4 CONTINUE                                                                  
  40 :       CALL PASSA(XE,YE,ZE,P,X13,X23,Y13,Y23)                                    
  41 :       DO 10 IP=1,6                                                              
  42 :       IP1=3*(IP-1)                                                              
  43 :       DO 5 IQ=1,3                                                               
  44 :     5 XX(IQ)=UE(IQ+IP1)                                                         
  44 :       CALL MULMAT(YY,P,XX,3,1,3)                                                
  45 :       DO 7 IQ=1,3                                                               
  46 :     7 UE(IQ+IP1)=YY(IQ)                                                         
  47 :    10 CONTINUE                                                                  
  48 :       DO 8 IP=1,3                                                               
  49 :       IP1=IP-1                                                                  
  50 :       IP2=2*IP1                                                                 
  51 :       IP3=3*IP1                                                                 
  52 :       IP6=6*IP1                                                                 
  53 :       DO 9 IQ=1,2                                                               
  54 :     9 DT(IQ+IP2)=UE(IQ+IP6)                                                     
  55 :       DO 11 IQ=3,5                                                              
  56 :       IQ2=IQ-2                                                                  
  57 :    11 DF(IQ2+IP3)=UE(IQ+IP6)                                                    
  58 :     8 CONTINUE                                                                  
  59 : C ===                                                                           
  60 :       S=1./(X13*Y23-X23*Y13)                                                    
  61 :       A1=Y13                                                                    
  62 :       A2=-X13                                                                   
  63 :       A3=Y23                                                                    
  64 :       A4=-X23                                                                   
  65 : C === MATRICE T(4,3)                                                            
  66 :       T(1,1)=Y23*Y23                                                            
  67 :       T(1,2)=Y13*Y13                                                            
  68 :       T(1,3)=-2.0D0*Y13*Y23                                                     
  69 :       T(2,1)=-X23*Y23                                                           
  70 :       T(2,2)=-X13*Y13                                                           
  71 :       T(2,3)=(X13*Y23+X23*Y13)                                                  
  72 :       T(3,1)=-X23*Y23                                                           
  73 :       T(3,2)=-X13*Y13                                                           
  74 :       T(3,3)=(X13*Y23+X23*Y13)                                                  
  75 :       T(4,1)=X23*X23                                                            
  76 :       T(4,2)=X13*X13                                                            
  77 :       T(4,3)=-2.0D0*X13*X23                                                     
  78 : C=== MATRICE Q(3,9)                                                             
  79 :       Q(1,1)=DETIER                                                             
  80 :       Q(1,2)=UNTIER*(2.*A1+A3)                                                  
  81 :       Q(1,3)=UNTIER*(2.*A2+A4)                                                  
  82 :       Q(1,4)=-QUTIER                                                            
  83 :       Q(1,5)=UNTIER*(-A1+2.*A3)                                                 
  84 :       Q(1,6)=UNTIER*(-A2+2.*A4)                                                 
  85 :       Q(1,7)=DETIER                                                             
  86 :       Q(1,8)=-A1+UNTIER*A3                                                      
  87 :       Q(1,9)=-A2+UNTIER*A4                                                      
  88 :       Q(2,1)=-QUTIER                                                            
  89 :       Q(2,2)=UNTIER*(2.*A1-A3)                                                  
  90 :       Q(2,3)=UNTIER*(2.*A2-A4)                                                  
  91 :       Q(2,4)=DETIER                                                             
  92 :       Q(2,5)=UNTIER*(A1+2.*A3)                                                  
  93 :       Q(2,6)=UNTIER*(A2+2.*A4)                                                  
  94 :       Q(2,7)=DETIER                                                             
  95 :       Q(2,8)=-A3+UNTIER*A1                                                      
  96 :       Q(2,9)=-A4+UNTIER*A2                                                      
  97 :       Q(3,1)=-DETIER                                                            
  98 :       Q(3,2)=UNTIER*A1+0.5*A3                                                   
  99 :       Q(3,3)=UNTIER*A2+0.5*A4                                                   
 100 :       Q(3,4)=-DETIER                                                            
 101 :       Q(3,5)=0.5*A1+UNTIER*A3                                                   
 102 :       Q(3,6)=0.5*A2+UNTIER*A4                                                   
 103 :       Q(3,7)=QUTIER                                                             
 104 :       Q(3,8)=-UNSIX*(A1+A3)                                                     
 105 :       Q(3,9)=-UNSIX*(A2+A4)                                                     
 106 : C ===                                                                           
 106 :       CALL MULMAT(SD,Q,DF,3,1,9)                                                
 106 :       CALL MULMAT(TM,T,SD,4,1,3)                                                
 107 :       GRADF(1)=-S*S*TM(1)                                                       
 108 :       GRADF(2)=-S*S*TM(2)                                                       
 109 :       GRADF(3)=0.0D0                                                            
 110 :       GRADF(4)=-S*S*TM(3)                                                       
 111 :       GRADF(5)=-S*S*TM(4)                                                       
 112 :       GRADF(6)=0.0D0                                                            
 113 :       GRADF(7)=0.0D0                                                            
 114 :       GRADF(8)=0.0D0                                                            
 115 :       GRADF(9)=0.0D0                                                            
 116 :       RETURN                                                                    
 117 :       END                                                                       
 118 :  

© Cast3M 2003 - All rights reserved.
Disclaimer