Télécharger btuyo.eso

Retour à la liste

Numérotation des lignes :

  1. C BTUYO SOURCE CHAT 05/01/12 21:44:30 5004
  2. SUBROUTINE BTUYO(IGAU,MINTE,WRK1,WRK2,WRK3,XL,DJAC,KERRE)
  3. *-----------------------------------------------------------------------
  4. *
  5. * CALCUL DE B POUR L'ELEMENT TUYO
  6. *
  7. *-----------------------------------------------------------------------
  8. IMPLICIT INTEGER(I-N)
  9. IMPLICIT REAL*8 (A-H,O-Z)
  10. -INC CCOPTIO
  11. -INC SMINTE
  12. *
  13. SEGMENT WRK1
  14. REAL*8 DDHOOK(NSTRS,NSTRS) ,DDHOMU(NSTRS,NSTRS)
  15. REAL*8 REL(LRE,LRE) , XE(3,NBBB)
  16. ENDSEGMENT
  17. *
  18. SEGMENT WRK2
  19. REAL*8 SHPWRK(6,NBNO) ,BGENE(NSTRS,LRE)
  20. ENDSEGMENT
  21. *
  22. SEGMENT WRK3
  23. REAL*8 WORK(LW)
  24. ENDSEGMENT
  25. *
  26. * INITIALISATIONS
  27. *
  28. KERRE=0
  29. NSTRS=DDHOOK(/1)
  30. LRE =REL(/1)
  31. CALL ZERO(BGENE,NSTRS,LRE)
  32. SL=1.D0/XL
  33. SL2 = 2.D0*SL
  34. SL4 = SL2*SL2
  35. *
  36. T=ETAGAU(IGAU)
  37. ST=SIN(T)
  38. CT=COS(T)
  39. S2T=SIN(2.D0*T)
  40. C2T=COS(2.D0*T)
  41. S4T=SIN(4.D0*T)
  42. C4T=COS(4.D0*T)
  43. *
  44. EP=WORK(1)
  45. R =WORK(2)-EP*0.5D0
  46. R2=R*R
  47. GR=WORK(3)
  48. UNSUR=0.D0
  49. IF(GR.NE.0.D0) UNSUR=1.D0/GR
  50. DJAC=XL*0.5D0*R
  51. *
  52. * CERTAINS TERMES SONT MIS EN SOMMEIL
  53. *
  54. * LES MEMBRANES
  55. *
  56. * EPS TET-TET
  57. *
  58. BGENE(1, 7)=SHPTOT(1,1,IGAU)/R
  59. BGENE(1,22)=SHPTOT(1,2,IGAU)/R
  60. *
  61. * EPS PHI-PHI
  62. *
  63. BGENE(2, 1)=SHPTOT(2,1,IGAU)*SL2
  64. BGENE(2,16)=SHPTOT(2,2,IGAU)*SL2
  65. *
  66. BGENE(2, 3)=-SHPTOT(5,3,IGAU)*SL4*R*CT
  67. BGENE(2, 5)= SHPTOT(5,4,IGAU)*SL4*R*CT*XL
  68. BGENE(2,18)=-SHPTOT(5,5,IGAU)*SL4*R*CT
  69. BGENE(2,20)= SHPTOT(5,6,IGAU)*SL4*R*CT*XL
  70. *
  71. BGENE(2, 2)=-SHPTOT(5,3,IGAU)*SL4*R*ST
  72. BGENE(2, 6)=-SHPTOT(5,4,IGAU)*SL4*R*ST*XL
  73. BGENE(2,17)=-SHPTOT(5,5,IGAU)*SL4*R*ST
  74. BGENE(2,21)=-SHPTOT(5,6,IGAU)*SL4*R*ST*XL
  75. *
  76. BGENE(2, 8)=SHPTOT(2,1,IGAU)*SL2*C2T
  77. BGENE(2,23)=SHPTOT(2,2,IGAU)*SL2*C2T
  78. BGENE(2, 9)=SHPTOT(2,1,IGAU)*SL2*C4T
  79. BGENE(2,24)=SHPTOT(2,2,IGAU)*SL2*C4T
  80. BGENE(2,10)=SHPTOT(2,1,IGAU)*SL2*S2T
  81. BGENE(2,25)=SHPTOT(2,2,IGAU)*SL2*S2T
  82. BGENE(2,11)=SHPTOT(2,1,IGAU)*SL2*S4T
  83. BGENE(2,26)=SHPTOT(2,2,IGAU)*SL2*S4T
  84. *
  85. * BGENE(2, 3)=BGENE(2, 3)+SHPTOT(1,3,IGAU)*UNSUR
  86. * BGENE(2, 5)=BGENE(2, 5)-SHPTOT(1,4,IGAU)*UNSUR*XL
  87. * BGENE(2,18)=BGENE(2,18)+SHPTOT(1,5,IGAU)*UNSUR
  88. * BGENE(2,20)=BGENE(2,20)-SHPTOT(1,6,IGAU)*UNSUR*XL
  89. *
  90. BGENE(2,7) =SHPTOT(1,1,IGAU)*CT*UNSUR
  91. BGENE(2,22)=SHPTOT(1,2,IGAU)*CT*UNSUR
  92. *
  93. BGENE(2,12)=SHPTOT(1,1,IGAU)*UNSUR*(CT*C2T+ST*S2T/2.D0)
  94. BGENE(2,27)=SHPTOT(1,2,IGAU)*UNSUR*(CT*C2T+ST*S2T/2.D0)
  95. BGENE(2,13)=SHPTOT(1,1,IGAU)*UNSUR*(CT*C4T+ST*S4T/4.D0)
  96. BGENE(2,28)=SHPTOT(1,2,IGAU)*UNSUR*(CT*C4T+ST*S4T/4.D0)
  97. BGENE(2,14)=SHPTOT(1,1,IGAU)*UNSUR*(CT*S2T-ST*C2T/2.D0)
  98. BGENE(2,29)=SHPTOT(1,2,IGAU)*UNSUR*(CT*S2T-ST*C2T/2.D0)
  99. BGENE(2,15)=SHPTOT(1,1,IGAU)*UNSUR*(CT*S4T-ST*C4T/4.D0)
  100. BGENE(2,30)=SHPTOT(1,2,IGAU)*UNSUR*(CT*S4T-ST*C4T/4.D0)
  101. *
  102. * BGENE(2, 4)=SHPTOT(1,1,IGAU)*R*ST*UNSUR
  103. * BGENE(2,19)=SHPTOT(1,2,IGAU)*R*ST*UNSUR
  104. *
  105. * GAM TET-PHI
  106. *
  107. BGENE(3, 8)=SHPTOT(1,1,IGAU)*(ST*C2T*UNSUR-2.D0*S2T/R)
  108. BGENE(3,23)=SHPTOT(1,2,IGAU)*(ST*C2T*UNSUR-2.D0*S2T/R)
  109. BGENE(3, 9)=SHPTOT(1,1,IGAU)*(ST*C4T*UNSUR-4.D0*S4T/R)
  110. BGENE(3,24)=SHPTOT(1,2,IGAU)*(ST*C4T*UNSUR-4.D0*S4T/R)
  111. BGENE(3,10)=SHPTOT(1,1,IGAU)*(ST*S2T*UNSUR+2.D0*C2T/R)
  112. BGENE(3,25)=SHPTOT(1,2,IGAU)*(ST*S2T*UNSUR+2.D0*C2T/R)
  113. BGENE(3,11)=SHPTOT(1,1,IGAU)*(ST*S4T*UNSUR+4.D0*C4T/R)
  114. BGENE(3,26)=SHPTOT(1,2,IGAU)*(ST*S4T*UNSUR+4.D0*C4T/R)
  115. *
  116. BGENE(3, 4)=-SHPTOT(2,1,IGAU)*SL2*R
  117. BGENE(3,19)=-SHPTOT(2,2,IGAU)*SL2*R
  118. *
  119. * BGENE(3, 1)=SHPTOT(1,1,IGAU)*ST*UNSUR
  120. * BGENE(3,16)=SHPTOT(1,2,IGAU)*ST*UNSUR
  121. *
  122. * BGENE(3, 3)=-SHPTOT(2,3,IGAU)*SL2*R*UNSUR*ST*CT
  123. * BGENE(3, 5)= SHPTOT(2,4,IGAU)*SL2*R*UNSUR*ST*CT*XL
  124. * BGENE(3,18)=-SHPTOT(2,5,IGAU)*SL2*R*UNSUR*ST*CT
  125. * BGENE(3,20)= SHPTOT(2,6,IGAU)*SL2*R*UNSUR*ST*CT*XL
  126. *
  127. * BGENE(3, 2)=-SHPTOT(2,3,IGAU)*SL2*R*UNSUR*ST*ST
  128. * BGENE(3, 6)=-SHPTOT(2,4,IGAU)*SL2*R*UNSUR*ST*ST*XL
  129. * BGENE(3,17)=-SHPTOT(2,5,IGAU)*SL2*R*UNSUR*ST*ST
  130. * BGENE(3,21)=-SHPTOT(2,6,IGAU)*SL2*R*UNSUR*ST*ST*XL
  131. *
  132. BGENE(3,12)=-SHPTOT(2,1,IGAU)*SL2*S2T/2.D0
  133. BGENE(3,27)=-SHPTOT(2,2,IGAU)*SL2*S2T/2.D0
  134. BGENE(3,13)=-SHPTOT(2,1,IGAU)*SL2*S4T/4.D0
  135. BGENE(3,28)=-SHPTOT(2,2,IGAU)*SL2*S4T/4.D0
  136. BGENE(3,14)= SHPTOT(2,1,IGAU)*SL2*C2T/2.D0
  137. BGENE(3,29)= SHPTOT(2,2,IGAU)*SL2*C2T/2.D0
  138. BGENE(3,15)= SHPTOT(2,1,IGAU)*SL2*C4T/4.D0
  139. BGENE(3,30)= SHPTOT(2,2,IGAU)*SL2*C4T/4.D0
  140. *
  141. * LES FLEXIONS
  142. *
  143. * QUI TET-TET
  144. *
  145. BGENE(4,12)=SHPTOT(1,1,IGAU)*3.D0*C2T/R2
  146. BGENE(4,27)=SHPTOT(1,2,IGAU)*3.D0*C2T/R2
  147. BGENE(4,13)=SHPTOT(1,1,IGAU)*15.D0*C4T/R2
  148. BGENE(4,28)=SHPTOT(1,2,IGAU)*15.D0*C4T/R2
  149. BGENE(4,14)=SHPTOT(1,1,IGAU)*3.D0*S2T/R2
  150. BGENE(4,29)=SHPTOT(1,2,IGAU)*3.D0*S2T/R2
  151. BGENE(4,15)=SHPTOT(1,1,IGAU)*15.D0*S4T/R2
  152. BGENE(4,30)=SHPTOT(1,2,IGAU)*15.D0*S4T/R2
  153. *
  154. * 0. POUR LES 2 AUTRES
  155. *
  156. RETURN
  157. END
  158.  
  159.  

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