Télécharger tcond5.eso

Retour à la liste

Numérotation des lignes :

tcond5
  1. C TCOND5 SOURCE CHAT 05/01/13 03:34:19 5004
  2.  
  3. C=======================================================================
  4. C= T C O N D 5 =
  5. C= ----------- =
  6. C= =
  7. C= Fonction : =
  8. C= ---------- =
  9. C= Calcul, au point de Gauss (iGau) considere, du jacobien (DJAC), =
  10. C= des fonctions de forme et de leurs derivees (SHP), de la matrice =
  11. C= gradient des fonctions de forme (derivation par rapport aux coor- =
  12. C= donnees reelles x,y,z ou r,theta,z) =
  13. C= =
  14. C= Parametres : (E)=Entree (S)=Sortie =
  15. C= ------------ =
  16. C= iGau (E) Numero du point de Gauss considere =
  17. C= NBNN (E) Nombre de NOEUDS de l'element =
  18. C= NDIM (E) Nombre de lignes de la matrice GRADIENT =
  19. C= XE (E) COORDONNEES des noeuds de l'element (repere GLOBAL) =
  20. C= SHPTOT (E) Fonctions de FORME et leurs DERIVEES par rapport aux =
  21. C= coordonnees de REFERENCE (Qsi,Eta,Dzeta) =
  22. C= SHP (S) Fonctions de FORME et leurs DERIVEES par rapport aux =
  23. C= coordonnees REELLES (X,Y,Z) =
  24. C= GRAD (S) Matrice GRADIENT par rapport aux coordonnees REELLES =
  25. C= DJAC (S) JACOBIEN au point de Gauss considere =
  26. C= =
  27. C= Denis ROBERT, le 7 janvier 1988. =
  28. C=======================================================================
  29.  
  30. SUBROUTINE TCOND5 (iGau,NBNN,NDIM,XE,SHPTOT,SHP,GRAD,DJAC)
  31.  
  32. IMPLICIT INTEGER(I-N)
  33. IMPLICIT REAL*8 (A-H,O-Z)
  34.  
  35.  
  36. -INC PPARAM
  37. -INC CCOPTIO
  38. -INC CCREEL
  39.  
  40. C= Quelques constantes (2.Pi et 4.Pi)
  41. PARAMETER (X2Pi=6.283185307179586476925286766559D0)
  42. PARAMETER (X4Pi=12.566370614359172953850573533118D0)
  43.  
  44. REAL*8 XE(3,*),SHPTOT(6,NBNN,*),SHP(6,*),GRAD(NDIM,*)
  45.  
  46. C ====================
  47. C 1 - Initialisation
  48. C ====================
  49. C*OF CALL ZERO(GRAD,NDIM,NBNN)
  50.  
  51. C ============================================
  52. C 2 - Cas des elements MASSIFS 2D PLAN ou 3D
  53. C ============================================
  54. IF (IFOMOD.EQ.-1.OR.IFOMOD.EQ.2) THEN
  55. iFin=IDIM+1
  56. DO j=1,NBNN
  57. DO i=1,iFin
  58. SHP(i,j)=SHPTOT(i,j,iGau)
  59. ENDDO
  60. ENDDO
  61. CALL JACOBI(XE,SHP,IDIM,NBNN,DJAC)
  62. DO j=1,NBNN
  63. DO i=1,NDIM
  64. GRAD(i,j)=SHP(i+1,j)
  65. ENDDO
  66. ENDDO
  67. C ================================================
  68. C 3 - Cas des elements MASSIFS 2D AXISYMETRIQUES
  69. C ================================================
  70. ELSE IF (IFOMOD.EQ.0) THEN
  71. DO j=1,NBNN
  72. SHP(1,j)=SHPTOT(1,j,iGau)
  73. SHP(2,j)=SHPTOT(2,j,iGau)
  74. SHP(3,j)=SHPTOT(3,j,iGau)
  75. ENDDO
  76. CALL JACOBI(XE,SHP,IDIM,NBNN,DJAC)
  77. CALL DISTRR(XE,SHP,NBNN,RR)
  78. DJAC=X2Pi*DJAC*RR
  79. DO j=1,NBNN
  80. GRAD(1,j)=SHP(2,j)
  81. GRAD(2,j)=SHP(3,j)
  82. ENDDO
  83. C ==============================================
  84. C 4 - Cas des elements MASSIFS en mode FOURIER
  85. C ==============================================
  86. ELSE IF (IFOMOD.EQ.1) THEN
  87. DO j=1,NBNN
  88. SHP(1,j)=SHPTOT(1,j,iGau)
  89. SHP(2,j)=SHPTOT(2,j,iGau)
  90. SHP(3,j)=SHPTOT(3,j,iGau)
  91. ENDDO
  92. CALL JACOBI(XE,SHP,IDIM,NBNN,DJAC)
  93. CALL DISTRR(XE,SHP,NBNN,RR)
  94. IF (NIFOUR.EQ.0) THEN
  95. DJAC=X2Pi*DJAC*RR
  96. ELSE
  97. DJAC=XPi*DJAC*RR
  98. ENDIF
  99. DNN=NIFOUR/RR
  100. DO j=1,NBNN
  101. GRAD(1,j)=SHP(2,j)
  102. GRAD(2,j)=DNN*SHP(1,j)
  103. GRAD(3,j)=SHP(3,j)
  104. ENDDO
  105. C =================================
  106. C 5 - Cas des elements MASSIFS 1D
  107. C =================================
  108. ELSE IF (IFOMOD.EQ.3.OR.IFOMOD.EQ.4.OR.IFOMOD.EQ.5) THEN
  109. DO j=1,NBNN
  110. SHP(1,j)=SHPTOT(1,j,iGau)
  111. SHP(2,j)=SHPTOT(2,j,iGau)
  112. ENDDO
  113. CALL JACOBI(XE,SHP,IDIM,NBNN,DJAC)
  114. C= Traitement des modes axisymetriques et spherique 1D
  115. IF (IFOMOD.EQ.4) THEN
  116. CALL DISTRR(XE,SHP,NBNN,RR)
  117. DJAC=X2Pi*DJAC*RR
  118. ELSE IF (IFOMOD.EQ.5) THEN
  119. CALL DISTRR(XE,SHP,NBNN,RR)
  120. DJAC=X4Pi*DJAC*RR*RR
  121. ENDIF
  122. DO j=1,NBNN
  123. GRAD(1,j)=SHP(2,j)
  124. ENDDO
  125. ENDIF
  126.  
  127. RETURN
  128. END
  129.  
  130.  
  131.  
  132.  

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