1 : C TRIHR2 SOURCE CHAT 05/01/13 03:47:25 5004 2 : SUBROUTINE TRIHR2(XGENE,DJAC,VKL1,VKL2,LRE,NST,NBNO,IFOU,REL) 3 : C======================================================================= 4 : C 5 : C INTEGRE LE PRODUIT NT KL N 6 : C POUR LES ELEMENTS HOMOGENEISES TRIH ET TRH6 7 : C 8 : C ROUTINE FORTRAN PUR 9 : C 10 : C======================================================================= 11 : C NBDL = NOMBRE DE DDL PAR NOEUD 12 : C INPUT 13 : C XGENE(NBNO,NST)=MATRICE N 14 : C DJAC =JACOBIEN 15 : C VKL1=(COEFPR**2)/(RHO*C**2)*SFLU/SCEL 16 : C VKL2= EI/((EPS**2)*SCEL) 17 : C LRE=TAILLE DE LA MATRICE DE RIGIDITE 18 : C NST=NOMBRE DE COLONNES DE LA MATRICE XGENE 19 : C NBNO=NOMBRE DE NOEUDS DE L ELEMENT CONSIDERE 20 : C IFOU=IFOUR DE CCOPTIO 21 : C OUTPUT 22 : C REL=MATRICE DE RIGIDITE 23 : C======================================================================= 24 : IMPLICIT INTEGER(I-N) 25 : IMPLICIT REAL*8 (A-H,O-Z) 26 : DIMENSION REL(LRE,*),XGENE(NBNO,*) 27 : NBDL=LRE/NBNO 28 : C 29 : C TERMES EN P*P 30 : C 31 : IX1=0 32 : IY1=0 33 : DO 300 IX=1,LRE ,NBDL 34 : IX1=IX1 + 1 35 : DO 400 IY=1,IX ,NBDL 36 : IY1=IY1 + 1 37 : REL(IX,IY) = REL(IX,IY) + DJAC*VKL1*XGENE(IX1,1)*XGENE(IY1,1) 38 : REL(IY,IX) = REL(IX,IY) 39 : 400 CONTINUE 40 : IY1=0 41 : 300 CONTINUE 42 : C 43 : C CAS PLAN ( NST = 1 ) 44 : C 45 : IF(NST.EQ.1) THEN 46 : C 47 : C TERMES EN (UX,UY)*(UX,UY) 48 : C 49 : IX1=0 50 : IY1=0 51 : DO 301 IX=3,LRE ,NBDL 52 : IX1=IX1 + 1 53 : DO 401 IY=3,IX ,NBDL 54 : IY1=IY1 + 1 55 : REL(IX,IY) = REL(IX,IY) + DJAC*VKL2*XGENE(IX1,1)*XGENE(IY1,1) 56 : REL(IY,IX) = REL(IX,IY) 57 : REL(IX+1,IY+1) = REL(IX,IY) 58 : REL(IY+1,IX+1) = REL(IX,IY) 59 : 401 CONTINUE 60 : IY1=0 61 : 301 CONTINUE 62 : C 63 : ELSE 64 : C 65 : C CAS AXISYMETRIQUE OU FOURIER ( NST = 3 ) 66 : C 67 : C TERMES EN (UR,RT )*(UR,RT ) 68 : C 69 : IX1=0 70 : IY1=0 71 : DO 302 IX=3,LRE ,NBDL 72 : IX1=IX1 + 1 73 : DO 402 IY=3,IX ,NBDL 74 : IY1=IY1 + 1 75 : REL(IX,IY) = REL(IX,IY) + DJAC*VKL2*XGENE(IX1,2)*XGENE(IY1,2) 76 : REL(IX+1,IY) = REL(IX+1,IY) + DJAC*VKL2*XGENE(IX1,3)*XGENE(IY1,2) 77 : REL(IX,IY+1) = REL(IX,IY+1) + DJAC*VKL2*XGENE(IX1,2)*XGENE(IY1,3) 78 : REL(IX+1,IY+1) = REL(IX+1,IY+1) + DJAC*VKL2*XGENE(IX1,3)* 79 : #XGENE(IY1,3) 80 : REL(IY,IX) = REL(IX,IY) 81 : REL(IY,IX+1) = REL(IX+1,IY) 82 : REL(IY+1,IX) = REL(IX,IY+1) 83 : REL(IY+1,IX+1) = REL(IX+1,IY+1) 84 : 402 CONTINUE 85 : IY1=0 86 : 302 CONTINUE 87 : C 88 : IF(IFOU.EQ.1) THEN 89 : C 90 : C TERMES EN (UT,RR )*(UT,RR ) 91 : C NON NULS QUE DANS LE CAS FOURIER 92 : C 93 : DO 303 IX=5,LRE ,NBDL 94 : DO 403 IY=5,LRE ,NBDL 95 : REL(IX,IY) = REL(IX-2,IY-2) 96 : REL(IX+1,IY) = REL(IX-1,IY-2) 97 : REL(IX,IY+1) = REL(IX-2,IY-1) 98 : REL(IX+1,IY+1) = REL(IX-1,IY-1) 99 : 403 CONTINUE 100 : 303 CONTINUE 101 : ENDIF 102 : ENDIF 103 : RETURN 104 : END 105 : 106 :
© Cast3M 2003 - All rights reserved.
Disclaimer