Download coq4ri.eso

Back to the list

   1 : C COQ4RI    SOURCE    CHAT      05/01/12    22:21:41     5004           
   2 :       SUBROUTINE COQ4RI (IGAU,BGENE,DJAC,EXCENT,NOPLAN,DHOOK,REL)               
   3 : ************************************************************************        
   4 : *                                                                               
   5 : *                             C O Q 4 R I                                       
   6 : *                             -----------                                       
   7 : *                                                                               
   8 : * FONCTION:                                                                     
   9 : * ---------                                                                     
  10 : *                                                                               
  11 : *     Calcul du produit Bt.D.B en 1 point de Gauss, pour le COQ4.               
  12 : *                                                                               
  13 : * PARAMETRES:   (E)=ENTREE   (S)=SORTIE   (+ = CONTENU DANS UN COMMUN)          
  14 : * -----------                                                                   
  15 : *                                                                               
  16 : *     IGAU    (E)  Num{ro du point de Gauss.                                    
  17 : *     BGENE   (E)  Matrice "B".                                                 
  18 : *     DJAC    (E)  Jacobien.                                                    
  19 : *     EXCENT  (E)  Excentrement.                                                
  20 : *     NOPLAN  (E)  = 1 si {l{ment non plan,                                     
  21 : *                  = 0 sinon.                                                   
  22 : *     DHOOK   (E)  Matrice de Hooke int{gr{e dans l'{paisseur.                  
  23 : *                  S{paration par blocs:                                        
  24 : *                  membrane, puis flexion, puis cisaillement transverse.        
  25 : *             (S)  Contenu modifie.                                             
  26 : *     REL     (E)  Matrice de Raideur.                                          
  27 : *             (S)  Complet{e par la contribution du point de Gauss              
  28 : *                  courant.                                                     
  29 : *                                                                               
  30 :       IMPLICIT INTEGER(I-N)
  31 :       PARAMETER (NSTRS=8, LRE=24)                                               
  32 :       REAL*8 DJAC,EXCENT                                                        
  33 :       REAL*8 DHOOK(NSTRS,NSTRS),REL(LRE,LRE),BGENE(NSTRS,LRE)                   
  34 : *                                                                               
  35 : * VARIABLES:                                                                    
  36 : * ----------                                                                    
  37 : *                                                                               
  38 :       REAL*8 DB(NSTRS,LRE)                                                      
  39 : *                                                                               
  40 : * MODE DE FONCTIONNEMENT:                                                       
  41 : * -----------------------                                                       
  42 : *                                                                               
  43 : *     Utilisation de la valeur de "Bm" au point central pour toute ou           
  44 : *     partie de la raideur de membrane:                                         
  45 : *     - tout si {l{ment non plan,                                               
  46 : *     - cisaillement sinon.                                                     
  47 : *                                                                               
  48 : *     Utilisation de la valeur de "Bf" au point central pour la raideur         
  49 : *     de couplage membrane/flexion due @ l'excentrement dans les memes          
  50 : *     conditions que pour la membrane.                                          
  51 : *                                                                               
  52 : * AUTEUR, DATE DE CREATION:                                                     
  53 : * -------------------------                                                     
  54 : *                                                                               
  55 : *     Pascal MANIGOT     27 Mars 1991                                           
  56 : *                                                                               
  57 : ************************************************************************        
  58 : *                                                                               
  59 :       DO 100 J=1,NSTRS                                                          
  60 :          DO 100 I=1,NSTRS                                                       
  61 :             DHOOK(I,J) = DJAC * DHOOK(I,J)                                      
  62 :  100        CONTINUE                                                            
  63 : *        END DO                                                                 
  64 : *     END DO                                                                    
  65 : *                                                                               
  65 :       CALL ZERO (DB,NSTRS,LRE)                                                  
  66 :       IF (ABS(EXCENT) .GT. 1.D-30) THEN                                         
  67 :          INCMAX = 5                                                             
  68 :       ELSE                                                                      
  69 :          INCMAX = 2                                                             
  70 :       END IF                                                                    
  71 : *                                                                               
  72 :       DO 110 NOEUD=1,4                                                          
  73 :          N6 = 6 * (NOEUD - 1)                                                   
  74 : *                                                                               
  75 : *                                                eD.Bm | eD.h.Bf                
  76 :          DO 120 J=1,INCMAX                                                      
  77 :             DO 120 I=1,3                                                        
  78 :                DO 120 K=1,3                                                     
  79 :                   DB(I,J+N6) = DB(I,J+N6) + DHOOK(I,K)*BGENE(K,J+N6)            
  80 :  120              CONTINUE                                                      
  81 : *              END DO                                                           
  82 : *           END DO                                                              
  83 : *        END DO                                                                 
  84 : *                                                                               
  85 :          IF (IGAU .LE. 4) THEN                                                  
  86 :             DO 160 J=3,5                                                        
  87 : *                                                e3/12.D.Bf                     
  88 :                DO 140 I=4,6                                                     
  89 :                   DO 140 K=4,6                                                  
  90 :                      DB(I,J+N6) = DB(I,J+N6) + DHOOK(I,K)*BGENE(K,J+N6)         
  91 :  140                 CONTINUE                                                   
  92 : *                 END DO                                                        
  93 : *              END DO                                                           
  94 : *                                                5/6.eG.Bc                      
  95 :                DB(7,J+N6) = DB(7,J+N6) + DHOOK(7,7)*BGENE(7,J+N6)               
  96 :                DB(8,J+N6) = DB(8,J+N6) + DHOOK(8,8)*BGENE(8,J+N6)               
  97 :  160           CONTINUE                                                         
  98 : *           END DO                                                              
  99 :          END IF                                                                 
 100 : *                                                                               
 101 :   110    CONTINUE                                                               
 102 : *     END DO                                                                    
 103 : *                                                                               
 104 :       IF (IGAU .LE. 4) THEN                                                     
 105 : *        Int{gration exacte.                                                    
 106 : *                                                                               
 107 : *        Rigidit{ de Flexion et Cisaillement transverse.                        
 108 :          DO 200 M=3,5                                                           
 109 :             DO 200 L=3,5                                                        
 110 :                DO 200 NOEUD = 1,4                                               
 111 :                   L6 = 6 * (NOEUD - 1)                                          
 112 :                   DO 200 NOEUD2 = 1,4                                           
 113 :                      M6 = 6 * (NOEUD2 - 1)                                      
 114 :                      DO 200 I=4,8                                               
 115 :                         REL(L+L6,M+M6)                                          
 116 :      &                  = REL(L+L6,M+M6) + BGENE(I,L+L6)*DB(I,M+M6)             
 117 :  200                    CONTINUE                                                
 118 : *                    END DO                                                     
 119 : *                 END DO                                                        
 120 : *              END DO                                                           
 121 : *           END DO                                                              
 122 : *        END DO                                                                 
 123 : *                                                                               
 124 :          IF (NOPLAN .EQ. 0) THEN                                                
 125 : *           Int{gration exacte raideur de membrane et de couplage               
 126 : *           membrane/flexion, sauf cisaillement:                                
 127 :             DO 220 M=1,INCMAX                                                   
 128 :                DO 220 L=1,INCMAX                                                
 129 :                   DO 220 NOEUD = 1,4                                            
 130 :                      L6 = 6 * (NOEUD - 1)                                       
 131 :                      DO 220 NOEUD2 = 1,4                                        
 132 :                         M6 = 6 * (NOEUD2 - 1)                                   
 133 :                         REL(L+L6,M+M6) = REL(L+L6,M+M6)                         
 134 :      &                                 + BGENE(1,L+L6)*DB(1,M+M6)               
 135 :      &                                 + BGENE(2,L+L6)*DB(2,M+M6)               
 136 :  220                    CONTINUE                                                
 137 : *                    END DO                                                     
 138 : *                 END DO                                                        
 139 : *              END DO                                                           
 140 : *           END DO                                                              
 141 :          END IF                                                                 
 142 : *                                                                               
 143 :       ELSE IF (IGAU .EQ. 5) THEN                                                
 144 : *                                                                               
 145 : *        Int{gration r{duite raideur de membrane et de couplage                 
 146 : *        membrane/flexion:                                                      
 147 :          IF (NOPLAN .EQ. 1) THEN                                                
 148 :             I1 = 1                                                              
 149 :          ELSE                                                                   
 150 :             I1 = 3                                                              
 151 :          END IF                                                                 
 152 :          DO 240 M=1,INCMAX                                                      
 153 :             DO 240 L=1,INCMAX                                                   
 154 :                DO 240 NOEUD = 1,4                                               
 155 :                   L6 = 6 * (NOEUD - 1)                                          
 156 :                   DO 240 NOEUD2 = 1,4                                           
 157 :                      M6 = 6 * (NOEUD2 - 1)                                      
 158 :                      DO 240 I=I1,3                                              
 159 :                         REL(L+L6,M+M6)                                          
 160 :      &                  = REL(L+L6,M+M6) + BGENE(I,L+L6)*DB(I,M+M6)             
 161 :  240                    CONTINUE                                                
 162 : *                    END DO                                                     
 163 : *                 END DO                                                        
 164 : *              END DO                                                           
 165 : *           END DO                                                              
 166 : *        END DO                                                                 
 167 : *                                                                               
 168 :       END IF                                                                    
 169 : *                                                                               
 170 :       END                                                                       
 171 :  

© Cast3M 2003 - All rights reserved.
Disclaimer