Download mfdkt2.eso

Back to the list

   1 : C MFDKT2    SOURCE    PV        07/11/23    21:17:52     5978           
   2 :       SUBROUTINE MFDKT2 (X,Y,XEL,HDXY)                                          
   3 : ************************************************************************        
   4 : *                                                                               
   5 : *                             M F D K T 2                                       
   6 : *                             -----------                                       
   7 : *                                                                               
   8 : * FONCTION:                                                                     
   9 : * ---------                                                                     
  10 : *                                                                               
  11 : *     CALCUL EN 1 POINT DE L'ELEMENT "DKT" DES DERIVEES SELON "X" ET "Y"        
  12 : *     DE LA FONCTION DE FORME DE LA DEFLEXION.                                  
  13 : *     (UTILE EN CAS D'EXCENTREMENT DE L'ELEMENT, POUR LE CALCUL DE LA           
  14 : *     MATRICE-MASSE DUE A LA FLEXION)                                           
  15 : *                                                                               
  16 : * PARAMETRES:   (E)=ENTREE   (S)=SORTIE   (+ = CONTENU DANS UN COMMUN)          
  17 : * -----------                                                                   
  18 : *                                                                               
  19 : *     X, Y    (E)  COORDONNEES REDUITES DU POINT DE L'ELEMENT.                  
  20 : *     XEL     (E)  COORDONNEES LOCALES DES NOEUDS DE L'ELEMENT                  
  21 : *                  (1 NOEUD PAR COLONNE).                                       
  22 : *     HDXY    (S)  DERIVEES DE LA FONCTION DE FORME DE LA DEFLEXION             
  23 : *                  (RANGEMENT "Z1", "TETAX1", "TETAY1", "Z2", ...).             
  24 : *                  HDXY(1..9) = DERIVEE PAR RAPPORT A "X",                      
  25 : *                  HDXY(10..18) = DERIVEE PAR RAPPORT A "Y".                    
  26 : *                                                                               
  27 :       IMPLICIT INTEGER(I-N)
  28 :       IMPLICIT REAL *8 (a-h,o-z)
  29 :       REAL*8 X,Y,XEL(3,3),HDXY(18)                                              
  30 : *                                                                               
  31 : * VARIABLES:                                                                    
  32 : * ----------                                                                    
  33 : *                                                                               
  34 :       REAL*8 Z,A,C                                                              
  35 : *                                                                               
  36 : * CONSTANTES:                                                                   
  37 : * -----------                                                                   
  38 : *                                                                               
  39 :       REAL*8 O1,O2,O3,O6                                                        
  40 :       PARAMETER (O1=1.D0, O2=2.D0, O3=3.D0, O6=6.D0)                            
  41 : *                                                                               
  42 : * AUTEUR, DATE DE CREATION:                                                     
  43 : * -------------------------                                                     
  44 : *                                                                               
  45 : *     PASCAL MANIGOT     11 JUIN 1987                                           
  46 : *     P.M. 14/02/90: RECTIFICATION ET REMISE EN FORME DU PASSAGE DANS           
  47 : *                    LE REPERE GEOMETRIQUE LOCAL X-Y.                           
  48 : *                                                                               
  49 : * LANGAGE:                                                                      
  50 : * --------                                                                      
  51 : *                                                                               
  52 : *     FORTRAN77 + EXTENSION: DECLARATION "REAL*8".                              
  53 : *                                                                               
  54 : ************************************************************************        
  55 : *                                                                               
  56 :       Z = O1-X-Y                                                                
  57 : *                                                                               
  58 : *     DERIVEES PAR RAPPORT A "X":                                               
  59 : *                                                                               
  60 :       A = Y*(Z-X)                                                               
  61 :       HDXY(1) = O6*Z*(Z-O1) + O2*A                                              
  62 :       HDXY(2) = Z*(Z-O2*X) + A/O2                                               
  63 :       HDXY(3) = -O2*Z*Y + A/O2                                                  
  64 :       HDXY(4) = O6*X*(O1-X) + O2*A                                              
  65 :       HDXY(5) = O3*(X**2) - O2*X - A                                            
  66 :       HDXY(6) = O2*X*Y + A/O2                                                   
  67 :       HDXY(7) = O2*A                                                            
  68 :       HDXY(8) = Y**2 + A/O2                                                     
  69 :       HDXY(9) = -A                                                              
  70 : *                                                                               
  71 : *     DERIVEES PAR RAPPORT A "Y":                                               
  72 : *                                                                               
  73 :       A = X*(Z-Y)                                                               
  74 :       HDXY(10) = O6*Z*(Z-O1) + O2*A                                             
  75 :       HDXY(11) = -O2*Z*X + A/O2                                                 
  76 :       HDXY(12) = Z*(Z-O2*Y) + A/O2                                              
  77 :       HDXY(13) = O2*A                                                           
  78 :       HDXY(14) = - A                                                            
  79 :       HDXY(15) = X**2 + A/O2                                                    
  80 :       HDXY(16) = O6*Y*(O1-Y) + O2*A                                             
  81 :       HDXY(17) = O2*X*Y + A/O2                                                  
  82 :       HDXY(18) = O3*(Y**2) - O2*Y - A                                           
  83 : *                                                                               
  84 : *     PASSAGE DANS LE REPERE X,Y (DIRECTION "X" = COTE 1-2).                    
  85 : *                                                                               
  86 :       X21=XEL(1,2)-XEL(1,1)                                                     
  87 :       X31=XEL(1,3)-XEL(1,1)                                                     
  88 :       Y31=XEL(2,3)-XEL(2,1)                                                     
  89 :       X31Y31 = X31 / Y31                                                        
  90 :       X31X21 = X31 / X21                                                        
  91 :       X21Y31 = X21 / Y31                                                        
  92 : *                                                                               
  93 :       DO 100 IDX=0,6,3                                                          
  94 :          IDY = 9 + IDX                                                          
  95 :          HDXY(IDY+1) = HDXY(IDY+1)/Y31 - HDXY(IDX+1)*X31Y31/X21                 
  96 :          HDXY(IDX+1) = HDXY(IDX+1)/X21                                          
  97 :          C = HDXY(IDX+2)*X31Y31 + HDXY(IDX+3)*X31X21*X31Y31                     
  98 :      &     - HDXY(IDY+2)*X21Y31 - HDXY(IDY+3)*X31Y31                            
  99 :          HDXY(IDY+2) = HDXY(IDY+3) - HDXY(IDX+3)*X31X21                         
 100 :          HDXY(IDY+3) = C                                                        
 101 :          C = HDXY(IDX+3)/X21Y31                                                 
 102 :          HDXY(IDX+3) = - HDXY(IDX+2) - HDXY(IDX+3)*X31X21                       
 103 :          HDXY(IDX+2) = C                                                        
 104 :   100    CONTINUE                                                               
 105 : *     END DO                                                                    
 106 : *                                                                               
 107 :       END                                                                       
 108 :  
 109 :  

© Cast3M 2003 - All rights reserved.
Disclaimer