Download bdbsta.eso

Back to the list

   1 : C BDBSTA    SOURCE    CHAT      05/01/12    21:37:54     5004           
   2 :       SUBROUTINE BDBSTA(BGENE,DJAC,DHOOK,LRE,NSTRS,REL)                          
   3 : C=======================================================================        
   4 : C                                                                               
   5 : C      INTEGRE LE PRODUIT BDB POUR UNE MATRICE ANTISYMETRIQUE                                                   
   6 : C      VERSION JANVIER 2004 - COMBESCURE                                     
   7 : C      ROUTINE FORTRAN PUR                                                      
   8 : C                                                                               
   9 : C=======================================================================        
  10 : C     BGENE(NSTRS,LRE)=MATRICE B                                                
  11 : C     DJAC =JACOBIEN                                                            
  12 : C     DHOOK(NSTRS,NSTRS)=MATRICE DE HOOKE                                       
  13 : C     LRE=TAILLE DE LA MATRICE DE RIGIDITE                                      
  14 : C     REL=MATRICE DE RIGIDITE                                                   
  15 : C           LES KIJ SONT AJOUTES SUR REL                                        
  16 : C=======================================================================        
  17 :       IMPLICIT INTEGER(I-N)
  18 :       IMPLICIT REAL*8 (A-H,O-Z)                                                 
  19 :       DIMENSION DHOOK(NSTRS,1),REL(LRE,1)                                       
  20 :       DIMENSION WORK1(10),WORK2(10),BGENE(NSTRS,1)                              
  21 :       DO   300 IX=1,LRE                                                         
  22 : C                                                                               
  23 : C     BOUCLE SUR LES DDL                                                        
  24 : C                                                                               
  25 :       DO   400 INA=1,NSTRS                                                      
  26 : C                                                                               
  27 : C     CALCUL DE JACOBIAN*POIDS*B   POUR LE DDL IX                               
  28 : C                                                                               
  29 :       WORK1(INA)=DJAC*BGENE(INA,IX)                                             
  30 :   400 CONTINUE                                                                  
  31 :       DO   500 INB=1,NSTRS                                                      
  32 :       CC=0.D0                                                                   
  33 :       DO   600 INC=1,NSTRS                                                      
  34 :       CC=CC+WORK1(INC)*DHOOK(INB,INC)                                           
  35 :   600 CONTINUE                                                                  
  36 :       WORK2(INB)=CC                                                             
  37 :   500 CONTINUE                                                                  
  38 :       DO   700 IY=1,IX                                                          
  39 : C                                                                               
  40 : C     CALCUL DE BDB POUR LES DDL IX ET IY                                       
  41 : C                                                                               
  42 :       CC=0.D0                                                                   
  43 :       DO   800 IND=1,NSTRS                                                      
  44 :       CC=CC+BGENE(IND,IY)*WORK2(IND)                                            
  45 :   800 CONTINUE                                                                  
  46 :       REL(IY,IX)=REL(IY,IX)+CC                                                  
  47 :       REL(IX,IY)=(-1.D0)*REL(IY,IX)                                                     
  48 :   700 CONTINUE                                                                  
  49 :   300 CONTINUE                                                                  
  50 :       RETURN                                                                    
  51 :       END                                                                       
  52 :  
  53 :  
  54 :  

© Cast3M 2003 - All rights reserved.
Disclaimer