Download lump2.eso

Back to the list

   1 : C LUMP2     SOURCE    CHAT      05/01/13    01:26:58     5004           
   2 :       SUBROUTINE LUMP2(REL,LRE,RE,IFOUR)
   3 : c====================================================================
   4 : c
   5 : c     utilisé par l'opérateur LUMP
   6 : c
   7 : c     remplissage de RE à partir de 
   8 : c     rel (lre,lre) matrice de rigidite triangulaire
   9 : c     inferieure.
  10 : c
  11 : c     méthode HRZ 
  12 : c     on diagonalise la matrice en conservant le rapport 
  13 : c     des termes diagonaux de la matrice consistante
  14 : c     et en corrigeant pour assurer que la masse est conservée
  15 : c
  16 : c     on suppsoe que RE est initialisée à 0    
  17 : c
  18 : c====================================================================
  19 :       IMPLICIT INTEGER(I-N)
  20 :       IMPLICIT REAL*8(A-H,O-Z)
  21 :       DIMENSION REL(LRE,*),RE(LRE,*)
  22 : *     
  23 : *
  24 :       IF ( IFOUR .EQ. -3) LRE=LRE-3 
  25 : *
  26 : *  calcul de la masse de l'element
  27 : * 
  28 :       SUM1 = 0.D0
  29 :       SUM2 = 0.D0
  30 :       DO 200 IA=1,LRE
  31 :           DO 100 IB=1,LRE
  32 :               I = MAX(IA,IB)
  33 :               J = MIN(IA,IB)
  34 :               SUM1 = SUM1 + REL(I,J)   
  35 :  100      CONTINUE 
  36 :           SUM2 = SUM2 + REL(IA,IA)
  37 :  200  CONTINUE
  38 : *      
  39 : *     normalisation 
  40 :       RAP = SUM1 / SUM2 
  41 :       DO 300 I=1,LRE
  42 :          RE(I,I)=REL(I,I)*RAP
  43 :  300  CONTINUE
  44 : * 
  45 : *  cas des déformations planes généralisées 
  46 : *  la diagonalisation est différente pour les ddl transverses
  47 :       IF ( IFOUR .EQ. -3) THEN
  48 : *       inconnue RX
  49 :         RE(LRE+2,LRE+2)=(REL(LRE+2,LRE+2)+REL(LRE+3,LRE+3))/2.D0
  50 : *       inconue RY
  51 :         RE(LRE+3,LRE+3)=RE(LRE+2,LRE+2)
  52 : *       inconnue UZ
  53 :         RE(LRE+1,LRE+1)=REL(LRE+1,LRE+1)     
  54 :         LRE = LRE + 3
  55 :       ENDIF
  56 : *
  57 :       RETURN
  58 :       END
  59 :  
  60 :  

© Cast3M 2003 - All rights reserved.
Disclaimer