Download cisaf.eso

Back to the list

   1 : C CISAF     SOURCE    CHAT      05/01/12    22:03:15     5004           
   2 :       SUBROUTINE CISAF(XE,EXX,EYY,DDHOMU,AIR,ASS,AXX,AYY,                       
   3 :      1              BSS,BXX,BYY)                                                
   4 : C                                                                               
   5 : C******************* FONCTIONS DE CISAILLEMENT *****************                
   6 : C                                                                               
   7 : C          CE SOUS PROGRAMME CALCULE LES CONSTANTES as'(k),ax'(i)               
   8 : C          ay'(i),bs'(k),bx'(i),by'(i) ,ou i=1--->3     k=4---->6               
   9 : C                                                                               
  10 : C                        Y                                                      
  11 : C                        .     3                                                
  12 : C                        .     *                                                
  13 : C                        .5  *   *   4    (4,5,6,noueuds condenses)             
  14 : C                        . +        +                                           
  15 : C                        .*          *                                          
  16 : C                      1 + * * +  * *  + 2 . . . . . . .X                       
  17 : C                              6                                                
  18 : C*****************************************************************              
  19 : C                                                                               
  20 :       IMPLICIT INTEGER(I-N)
  21 :       IMPLICIT REAL*8 (A-H,O-Z)                                                 
  22 :       DIMENSION XE(3,*),EXX(*),EYY(*),DDHOMU(8,*),ASS(*),BSS(*)                 
  23 :       DIMENSION AXX(*),AYY(*),BXX(*),BYY(*)                                     
  24 :       DIMENSION VV2(3,3),DFON(6,3),VV3(3,3)                                     
  25 :       DIMENSION AAX(6),AAY(6),BBX(6),BBY(6)                                     
  26 : *                                                                               
  26 :       CALL ZERO(DFON,6,3)                                                       
  27 :       DFON(1,1)=4.D0                                                            
  28 :       DFON(1,2)=4.D0                                                            
  29 :       DFON(1,3)=4.D0                                                            
  30 :       DFON(2,1)=4.D0                                                            
  31 :       DFON(3,2)=4.D0                                                            
  32 :       DFON(4,3)=4.D0                                                            
  33 :       DFON(5,2)=-8.D0                                                           
  34 :       DFON(6,3)=-4.D0                                                           
  35 :       DFON(5,3)=-4.D0                                                           
  36 :       DFON(6,1)=-8.D0                                                           
  37 :       DPSIX=(XE(2,3)-XE(2,1))/(2.D0*AIR)                                        
  38 :       DPSIY=-(XE(1,3)-XE(1,1))/(2.D0*AIR)                                       
  39 :       DETAX=(XE(2,1)-XE(2,2))/(2.D0*AIR)                                        
  40 :       DETAY=-(XE(1,1)-XE(1,2))/(2.D0*AIR)                                       
  41 : *                                                                               
  41 :       CALL ZERO(VV3,3,3)                                                        
  42 : C     calcul de la matrice jacobienne du second ordre                           
  43 :       VV3(1,1)=DPSIX*DPSIX                                                      
  44 :       VV3(1,2)=DETAX*DETAX                                                      
  45 :       VV3(2,1)=DPSIY*DPSIY                                                      
  46 :       VV3(2,2)=DETAY*DETAY                                                      
  47 :       VV3(1,3)=2.D0*DPSIX*DETAX                                                 
  48 :       VV3(2,3)=2.D0*DPSIY*DETAY                                                 
  49 :       VV3(3,2)=DETAX*DETAY                                                      
  50 :       VV3(3,1)=DPSIY*DPSIX                                                      
  51 :       VV3(3,3)=DPSIY*DETAX+DETAY*DPSIX                                          
  52 : *                                                                               
  53 :       RAF=DDHOMU(4,4)                                                           
  54 :       RAC1=DDHOMU(7,7)                                                           
  55 :       RAC2=DDHOMU(8,8)                                                           
  56 :       RAFC1= RAF/RAC1                                                             
  57 :       RAFC2= RAF/RAC2                                                             
  58 :       PXY=DDHOMU(4,5)/DDHOMU(4,4)                                               
  59 :       RAPU=DDHOMU(6,6)/DDHOMU(4,4)                                                      
  60 :       RAFF=DDHOMU(5,5)/DDHOMU(4,4)                                                      
  60 :       CALL ZERO(AAX,6,1)                                                        
  60 :       CALL ZERO(BBX,6,1)                                                        
  60 :       CALL ZERO(AAY,6,1)                                                        
  60 :       CALL ZERO(BBY,6,1)                                                        
  61 :       DO 30 I=1,6                                                               
  62 :       AAX(I)=VV3(1,1)*DFON(I,1)+VV3(1,2)*DFON(I,2)+VV3(1,3)*DFON(I,3)           
  63 :      $+RAPU*(VV3(2,1)*DFON(I,1)+VV3(2,2)*DFON(I,2)+VV3(2,3)*DFON(I,3))
  64 :       AAY(I)=(VV3(3,1)*DFON(I,1)+VV3(3,2)*DFON(I,2)+VV3(3,3)*DFON(I,3))         
  65 :      $*PXY
  66 :      $+RAPU*(VV3(3,1)*DFON(I,1)+VV3(3,2)*DFON(I,2)+VV3(3,3)*DFON(I,3))
  67 :       BBX(I)=(VV3(3,1)*DFON(I,1)+VV3(3,2)*DFON(I,2)+VV3(3,3)*DFON(I,3))         
  68 :      $*PXY
  69 :      $+RAPU*(VV3(3,1)*DFON(I,1)+VV3(3,2)*DFON(I,2)+VV3(3,3)*DFON(I,3))
  70 :       BBY(I)=(VV3(2,1)*DFON(I,1)+VV3(2,2)*DFON(I,2)+VV3(2,3)*DFON(I,3))
  71 :      $*RAFF
  72 :      $+RAPU*(VV3(1,1)*DFON(I,1)+VV3(1,2)*DFON(I,2)+VV3(1,3)*DFON(I,3))
  73 :        AAX(I)=RAFC1*AAX(I)                                                       
  74 :        AAY(I)=RAFC1*AAY(I)                                                       
  75 :        BBX(I)=RAFC2*BBX(I)                                                       
  76 :        BBY(I)=RAFC2*BBY(I)                                                       
  77 :   30   CONTINUE                                                                 
  78 : *                                                                               
  78 :        CALL ZERO(ASS,6,1)                                                       
  78 :        CALL ZERO(BSS,6,1)                                                       
  79 :        ASS(4)=AAX(4)*EXX(1)+AAY(4)*EYY(1)                                       
  80 :        ASS(5)=AAX(5)*EXX(2)+AAY(5)*EYY(2)                                       
  81 :        ASS(6)=AAX(6)*EXX(3)+AAY(6)*EYY(3)                                       
  82 :        BSS(4)=BBX(4)*EXX(1)+BBY(4)*EYY(1)                                       
  83 :        BSS(5)=BBX(5)*EXX(2)+BBY(5)*EYY(2)                                       
  84 :        BSS(6)=BBX(6)*EXX(3)+BBY(6)*EYY(3)                                       
  84 :        CALL ZERO(AXX,3,1)                                                       
  84 :        CALL ZERO(AYY,3,1)                                                       
  84 :        CALL ZERO(BYY,3,1)                                                       
  84 :        CALL ZERO(BXX,3,1)                                                       
  85 :        AXX(1)=AAX(1)+0.5D0*EYY(2)*(AAX(5)*EYY(2)-AAY(5)*EXX(2))                 
  86 :      $+0.5D0*EYY(3)*(AAX(6)*EYY(3)-AAY(6)*EXX(3))
  87 :        AXX(2)=AAX(2)+0.5D0*EYY(1)*(AAX(4)*EYY(1)-AAY(4)*EXX(1))                 
  88 :      $+0.5D0*EYY(3)*(AAX(6)*EYY(3)-AAY(6)*EXX(3))
  89 :        AXX(3)=AAX(3)+0.5D0*EYY(1)*(AAX(4)*EYY(1)-AAY(4)*EXX(1))                 
  90 :      $+0.5D0*EYY(2)*(AAX(5)*EYY(2)-AAY(5)*EXX(2))
  91 :        AYY(1)=AAY(1)-0.5D0*EXX(2)*(AAX(5)*EYY(2)-AAY(5)*EXX(2))                 
  92 :      $-0.5D0*EXX(3)*(AAX(6)*EYY(3)-AAY(6)*EXX(3))
  93 :        AYY(2)=AAY(2)-0.5D0*EXX(1)*(AAX(4)*EYY(1)-AAY(4)*EXX(1))                 
  94 :      $-0.5D0*EXX(3)*(AAX(6)*EYY(3)-AAY(6)*EXX(3))
  95 :        AYY(3)=AAY(3)-0.5D0*EXX(1)*(AAX(4)*EYY(1)-AAY(4)*EXX(1))                 
  96 :      $-0.5D0*EXX(2)*(AAX(5)*EYY(2)-AAY(5)*EXX(2))
  97 :        BXX(1)=BBX(1)+0.5D0*EYY(2)*(BBX(5)*EYY(2)-BBY(5)*EXX(2))                 
  98 :      $+0.5D0*EYY(3)*(BBX(6)*EYY(3)-BBY(6)*EXX(3))
  99 :        BXX(2)=BBX(2)+0.5D0*EYY(1)*(BBX(4)*EYY(1)-BBY(4)*EXX(1))                 
 100 :      $+0.5D0*EYY(3)*(BBX(6)*EYY(3)-BBY(6)*EXX(3))
 101 :        BXX(3)=BBX(3)+0.5D0*EYY(1)*(BBX(4)*EYY(1)-BBY(4)*EXX(1))                 
 102 :      $+0.5D0*EYY(2)*(BBX(5)*EYY(2)-BBY(5)*EXX(2))
 103 :        BYY(1)=BBY(1)-0.5D0*EXX(2)*(BBX(5)*EYY(2)-BBY(5)*EXX(2))                 
 104 :      $-0.5D0*EXX(3)*(BBX(6)*EYY(3)-BBY(6)*EXX(3))
 105 :        BYY(2)=BBY(2)-0.5D0*EXX(1)*(BBX(4)*EYY(1)-BBY(4)*EXX(1))                 
 106 :      $-0.5D00*EXX(3)*(BBX(6)*EYY(3)-BBY(6)*EXX(3))
 107 :        BYY(3)=BBY(3)-0.5D0*EXX(1)*(BBX(4)*EYY(1)-BBY(4)*EXX(1))                 
 108 :      $-0.5D0*EXX(2)*(BBX(5)*EYY(2)-BBY(5)*EXX(2))
 109 : *                                                                               
 110 :        RETURN                                                                   
 111 :        END                                                                      
 112 :  

© Cast3M 2003 - All rights reserved.
Disclaimer