Télécharger trihm1.eso

Retour à la liste

Numérotation des lignes :

trihm1
  1. C TRIHM1 SOURCE CHAT 05/01/13 03:47:06 5004
  2. SUBROUTINE TRIHM1(IGAU,ITEL,MFR,NBNO,XEL,SHPTOT,SHP,IFOU,NHARM,
  3. # B11,B22,SFLU,POIGAU,VKL22,LRE,REL,IRET)
  4. C=======================================================================
  5. C
  6. C CALCULE LES TERMES EN PI * PI DE LA MATRICE DE
  7. C MASSE DANS LE CAS AXISYMETRIQUE OU FOURIER POUR
  8. C LA FORMULATION (37) HOMOGENE
  9. C=======================================================================
  10. C INPUT
  11. C IGAU=NUMERO DU POINT DE GAUSS
  12. C ITEL=NUMERO DE L ELEMENT DANS NOMTP
  13. C MFR =NUMERO DE LA FORMULATION
  14. C NBNO=NOMBRE DE NOEUDS
  15. C XEL =COORDONNEES DE L ELEMENT
  16. C IFOU=IFOUR DE CCOPTIO
  17. C NHARM=NUMERO DU MODE DE FOURIER
  18. C B11,B22 = PERMEABILITE ACOUSTIQUE DU MILIEU
  19. C SFLU = SURFACE FLUIDE DANS LA CELLULE ELEMENTAIRE
  20. C POIGAU=MINTE.POIGAU(IGAU)
  21. C VKL22=-(COEFPI**2)/(RHOF*SCEL)
  22. C LRE =NOMBRE DE D.D.L DE LA MATRICE DE RIGIDITE
  23. C SHPTOT(6,NBNO,NBGAU)=FONCTIONS DE FORMES ET DERIVEES
  24. C ZONE DE TRAVAIL
  25. C SHP(6,NBNO)=TABLEAU DE TRAVAIL
  26. C OUTPUT
  27. C REL=MATRICE DE MASSE
  28. C IRET : INDICATEUR = 1 : SUCCES
  29. C = 0 : ECHEC (ELEMENT MELE INCOMPATIBLE
  30. C AVEC LA FORMULATION )
  31. C = 2 : ECHEC (JACOBIEN NUL )
  32. C = 3 : ECHEC (ROUTINE N EST VALABLE QU EN
  33. C FOURIER OU AXISYMETRIQUE )
  34. C = 4 : ECHEC (RAYON NUL )
  35. C=======================================================================
  36. IMPLICIT INTEGER(I-N)
  37. IMPLICIT REAL*8(A-H,O-Z)
  38. DIMENSION XEL(3,*),SHP(6,*),SHPTOT(6,NBNO,*),REL(LRE,*)
  39. IF (ITEL.EQ.92) GOTO 10
  40. C
  41. C ERREUR : TYPE D' ELEMENT INCOMPATIBLE AVEC LA FORMULATION
  42. C
  43. IRET = 0
  44. GOTO 666
  45. 10 CONTINUE
  46. IF (IFOU.EQ.0.OR.IFOU.EQ.1) GOTO 11
  47. C
  48. C MESSAGE D ERREUR : ROUTINE N EST VALABLE QU EN FOURIER
  49. C OU EN AXISYMETRIQUE
  50. C
  51. IRET = 3
  52. GOTO 666
  53. 11 CONTINUE
  54. C
  55. C ELEMENTS HOMOGENEISES TRIH EN AXISYMETRIE OU EN FOURIER
  56. C NBDL = LRE/NBNO NOMBRE DE D.D.L PAR NOEUD
  57. C
  58. B33 = SFLU
  59. NBDL = LRE/NBNO
  60. C
  61. C SHP(1,I) : FONCTION DE FORME
  62. C SHP(2,I) : DERIVEE % R DE LA FONCTION DE FORME
  63. C SHP(3,I) : DERIVEE % Z DE LA FONCTION DE FORME
  64. C
  65. DO 101 NP=1,NBNO
  66. SHP(1,NP)=SHPTOT(1,NP,IGAU)
  67. SHP(2,NP)=SHPTOT(2,NP,IGAU)
  68. SHP(3,NP)=SHPTOT(3,NP,IGAU)
  69. 101 CONTINUE
  70. CALL DEVOLU(XEL,SHP,MFR,NBNO,IFOU,NHARM,2,1.D0,RR,DJAC)
  71. IF (DJAC.EQ.0.) GOTO 667
  72. IF ( IFOU.EQ.0) THEN
  73. C
  74. C CAS AXISYMETRIQUE
  75. C
  76. DJAC = ABS(DJAC)*POIGAU
  77. IX1=0
  78. IY1=0
  79. DO 102 IX=2,LRE ,NBDL
  80. IX1=IX1 + 1
  81. DO 103 IY=2,IX ,NBDL
  82. IY1=IY1 + 1
  83. REL(IY,IX) = REL(IY,IX) + VKL22*DJAC*(0.5D0*(B11+B22)*SHP(2,IX1)*
  84. #SHP(2,IY1) + B33*SHP(3,IX1)*SHP(3,IY1))
  85. REL(IX,IY) = REL(IY,IX)
  86. 103 CONTINUE
  87. IY1=0
  88. 102 CONTINUE
  89. IRET = 1
  90. ELSE
  91. C
  92. C CAS ANALYSE EN FOURIER
  93. C
  94. IF (RR.EQ.0.) GOTO 668
  95. DJAC = ABS(DJAC)
  96. DJAC1 = DJAC*POIGAU
  97. DJAC2 = DJAC*POIGAU/(RR**2)
  98. IX1=0
  99. IY1=0
  100. DO 104 IX=2,LRE ,NBDL
  101. IX1=IX1 + 1
  102. DO 105 IY=2,IX ,NBDL
  103. IY1=IY1 + 1
  104. REL(IY,IX)=REL(IY,IX)+VKL22*(DJAC1*(0.5D0*(B11+B22)*SHP(2,IX1)*
  105. #SHP(2,IY1)+B33*SHP(3,IX1)*SHP(3,IY1))+0.5D0*NHARM*NHARM*DJAC2*
  106. #(B11+B22)*SHP(1,IY1)*SHP(1,IX1))
  107. REL(IX,IY) = REL(IY,IX)
  108. 105 CONTINUE
  109. IY1=0
  110. 104 CONTINUE
  111. IRET = 1
  112. ENDIF
  113. GOTO 666
  114. C
  115. C MESSAGE D ERREUR : ELEMENT A SURFACE NULLE
  116. C
  117. 667 CONTINUE
  118. IRET = 2
  119. GOTO 666
  120. C
  121. C MESSAGE D ERREUR : LE RAYON EST NUL (IL FAUT AUGMENTER LE NOMBRE
  122. C DE POINTS D INTEGRATION DANS ICLEM(17) )
  123. C
  124. 668 CONTINUE
  125. IRET = 4
  126. GOTO 666
  127. C
  128. 666 CONTINUE
  129. RETURN
  130. END
  131.  
  132.  
  133.  
  134.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales