Download kam101.eso

Back to the list

   1 : C KAM101    SOURCE    CHAT      05/01/13    00:51:04     5004           
   2 :       SUBROUTINE KAM101(NELA,NEL,NP,IES,LE,AM,XCOOR,IPADL,IKAS,
   3 :      & IAXI,NES,NPG,FN,GR,HR,PG,PGSQ,RPG)
   4 : C************************************************************************       
   5 : C   CALCUL DE LA MATRICE M ( P*DIV(U) )  --> AM(NP,IES,NEL)                     
   6 : C                                                                               
   7 : C   IKAS=1  V NORMALE IMPOSEE
   8 : C   IKAS=-1 V TANGENTE IMPOSEE
   9 : C
  10 : C************************************************************************       
  11 :       IMPLICIT INTEGER(I-N)
  12 :       IMPLICIT REAL*8 (A-H,O-Z)                                                 
  13 :                                                                                 
  14 : C***                                                                            
  15 :       DIMENSION LE(NP,NEL),IPADL(*)
  16 :       DIMENSION AM(NELA,IES),XCOOR(*),P3(3,3)
  17 :       DIMENSION XYZ(3,9)
  18 :       DIMENSION FN(NP,NPG),GR(NES,NP,NPG),HR(IES,NP,NPG)
  19 :       DIMENSION PG(NPG),PGSQ(NPG),RPG(NPG)
  20 : C***                                                                            
  21 : 
  22 :       IF(NP.LE.2.AND.IES.EQ.3)THEN
  23 :       WRITE(6,*)' Operateur VNSIMP ou VTSIMP (kam101) :'
  24 :       WRITE(6,*)' On ne sait pas traiter ce type d element'
  25 :       RETURN
  26 :       ENDIF
  27 : 
  28 : C     write(6,*)' IPADL'
  29 : C     write(6,1001)(IPADL(II),ii=1,100)
  30 : 
  31 :       DO 2 K=1,NEL
  32 :       DO 3 I=1,NP
  33 :       NU=LE(I,K)
  34 : 
  35 :       XYZ(1,I)=XCOOR((NU-1)*(IES+1)    +1)
  36 :       XYZ(2,I)=XCOOR((NU-1)*(IES+1)    +2)
  37 :       IF(IES.EQ.3)XYZ(3,I)=XCOOR((NU-1)*(IES+1)    +3)
  38 :  3    CONTINUE
  39 : C     write(6,*)' XYZ='
  40 : C     write(6,1002) XYZ
  41 : 
  42 : 
  43 :                                                                                 
  44 :       IF(IES.EQ.2)THEN                                                          
  45 : 
  46 :       TX=XYZ(1,2)-XYZ(1,1)                                                      
  47 :       TY=XYZ(2,2)-XYZ(2,1)                                                      
  48 :       TT=TX*TX+TY*TY
  49 :       TT=SQRT(TT)
  50 : C      TX=TX/TT
  51 : C      TY=TY/TT
  52 :       AX=-TY
  53 :       AY=TX                                                                     
  54 :       IF(IKAS.EQ.-1)THEN
  55 :       AX=TX
  56 :       AY=TY
  57 :       ENDIF
  58 :       DO 21 J=1,NP
  59 :       NU=IPADL(LE(J,K))
  60 :       AM(NU,1)=AM(NU,1)+AX
  61 :       AM(NU,2)=AM(NU,2)+AY
  62 : C      write(6,*)' le,nu=',LE(J,K),NU,' Ax,Ay=',AX,AY
  63 : C      write(6,1002)AM(NU,1),AM(NU,2)
  64 : 
  65 :  21   CONTINUE
  66 :                                                                                 
  67 :       ELSEIF(IES.EQ.3)THEN                                                      
  68 :       IIAXI=0
  68 :       CALL CALJBC(FN,GR,PG,XYZ,HR,PGSQ,RPG,NES,IES,NP,NPG,IIAXI,AIRE)
  68 :       CALL CALJQB(XYZ,P3,IES,NP)
  69 :       DO 31 J=1,NP
  70 :       NU=IPADL(LE(J,K))
  71 :       AM(NU,1)=AM(NU,1)+P3(3,1)*AIRE
  72 :       AM(NU,2)=AM(NU,2)+P3(3,2)*AIRE
  73 :       AM(NU,3)=AM(NU,3)+P3(3,3)*AIRE
  74 : C      write(6,*)' le,nu=',LE(J,K),NU,' Aire=',AIRE
  75 : C      write(6,1002)AM(NU,1),AM(NU,2),AM(NU,3)
  76 :  31   CONTINUE
  77 : C     write(6,*)' P3= AORE=',AIRE
  78 : C     write(6,1002)P3
  79 :       ENDIF                                                                     
  80 :  2    CONTINUE
  81 : C     write(6,*)' Sub kam101 FIN : AM='
  82 : C     DO 2101 k=1,nela
  83 : C     DO 2101 k=1,10
  84 : C     write(6,*)' k=',k
  85 : C     write(6,1002)(AM(k,i),i=1,ies)
  86 : C2101 CONTINUE
  87 : 
  88 :       RETURN                                                                    
  89 :  1001 FORMAT(20(1X,I5))                                                         
  90 :  1002 FORMAT(10(1X,1PE11.4))                                                    
  91 :       END                                                                       
  92 :  

© Cast3M 2003 - All rights reserved.
Disclaimer