Download xyzdia.eso

Back to the list

   1 : C XYZDIA    SOURCE    CHAT      05/01/13    04:16:02     5004           
   2 :       SUBROUTINE XYZDIA(DSIGP,SIGEL,W1,W2,A,B,C,D,ITYP,VECPRO)                  
   3 :       IMPLICIT INTEGER(I-N)
   4 :       IMPLICIT REAL*8(A-H,O-Z)                                                  
   5 :       DIMENSION DSIGP(*),SIGEL(*),W1(*),W2(*),VECPRO(*)                         
   6 : C          DIAGONALISATION DE 2 TENSEURS CONTRAINTES                            
   7 :       GO TO (60,61,61,63,64,65,66,66,68,69,70,71,65),ITYP                       
   8 :   71  CONTINUE                                                                  
   9 : C     TUYAUX                                                                    
  10 :       GO TO 640                                                                 
  11 :   70  CONTINUE                                                                  
  12 : C     POUTRES                                                                   
  13 :       GO TO 640                                                                 
  14 :    69 CONTINUE                                                                  
  15 :       GO TO 640                                                                 
  16 :    68 CONTINUE                                                                  
  17 :       GO TO 640                                                                 
  18 :    66 CONTINUE                                                                  
  19 : C           COQUE OU MEMBRANE A NU =0                                           
  20 : C            OU EN CONT PLANES                                                  
  21 :       GO TO 640                                                                 
  22 :    65 CONTINUE                                                                  
  23 : C         CONTRAINTES   PLANES                                                  
  24 :       GO TO 615                                                                 
  25 :    64 CONTINUE                                                                  
  26 : C          MATER QUELCONQUE                                                     
  27 : C          DIAGONALISATION                                                      
  28 :       DO 6403 IB=1,3                                                            
  29 :       W1(IB)=0.                                                                 
  30 :       W2(IB)=0.                                                                 
  31 :       DO 6404 IC=1,3                                                            
  32 :       IP=3*(IB-1)+IC                                                            
  33 :       W1(IB)=W1(IB)+VECPRO(IP)*SIGEL(IC)                                        
  34 :  6404 W2(IB)=W2(IB)+VECPRO(IP)*DSIGP(IC)                                        
  35 :  6403 CONTINUE                                                                  
  36 :       DO 6405 IB=1,3                                                            
  37 :       SIGEL(IB)=W1(IB)                                                          
  38 :  6405 DSIGP(IB)=W2(IB)                                                          
  39 :       GO TO 640                                                                 
  40 :    61 CONTINUE                                                                  
  41 :   615 CONTINUE                                                                  
  42 :       B1=B                                                                      
  43 :       B2=B                                                                      
  44 :       IBO=2                                                                     
  45 :       IF(ITYP.EQ.3.OR.ITYP.EQ.6) IBO=1                                          
  46 :       DO 613 IK=1,IBO                                                           
  47 :       IP=(IK-1)*3                                                               
  48 :       W1(1)=SIGEL(IP+1)                                                         
  49 :       W2(1)=DSIGP(IP+1)                                                         
  50 :       SIGEL(IP+1)= B1*W1(1)+B2*SIGEL(IP+2)                                      
  51 :       SIGEL(IP+2)=-B2*W1(1)+B1*SIGEL(IP+2)                                      
  52 :       DSIGP(IP+1)= B1*W2(1)+B2*DSIGP(IP+2)                                      
  53 :       DSIGP(IP+2)=-B2*W2(1)+B1*DSIGP(IP+2)                                      
  54 :   613 CONTINUE                                                                  
  55 :       GO TO 640                                                                 
  56 :    63 CONTINUE                                                                  
  57 :       GO TO 640                                                                 
  58 :    60 CONTINUE                                                                  
  59 :       X=0.                                                                      
  60 :       Y=0.                                                                      
  61 :       DO 8 IB=1,3                                                               
  62 :       X=X+SIGEL(IB)                                                             
  63 :       Y=Y+DSIGP(IB)                                                             
  64 :       W1(IB)=SIGEL(IB)                                                          
  65 :  8    W2(IB)=DSIGP(IB)                                                          
  66 :       SIGEL(1)=A*X                                                              
  67 :       DSIGP(1)=A*Y                                                              
  68 :       SIGEL(2)=B*(W1(1)-W1(2))                                                  
  69 :       DSIGP(2)=B*(W2(1)-W2(2))                                                  
  70 :       SIGEL(3)=C*(W1(1)+W1(2))+D*W1(3)                                          
  71 :       DSIGP(3)=C*(W2(1)+W2(2))+D*W2(3)                                          
  72 :   640 CONTINUE                                                                  
  73 :       RETURN                                                                    
  74 :       END                                                                       
  75 :  

© Cast3M 2003 - All rights reserved.
Disclaimer