Télécharger bnpor2.eso

Retour à la liste

Numérotation des lignes :

bnpor2
  1. C BNPOR2 SOURCE CHAT 05/01/12 21:41:44 5004
  2. SUBROUTINE BNPOR2 (YGENE,NCOT,IELE)
  3. *______________________________________________________________________
  4. *
  5. * POUR PENALISATION (MILIEUX POREUX) APPELE PAR RIGI2
  6. *______________________________________________________________________
  7. *
  8. IMPLICIT INTEGER(I-N)
  9. IMPLICIT REAL*8(A-H,O-Z)
  10. *
  11.  
  12. -INC PPARAM
  13. -INC CCOPTIO
  14. *
  15. DIMENSION YGENE(NCOT,*)
  16. *
  17. * CONSTRUCTION DU TABLEAU SELON LES ELEMENTS
  18. * LES SOMMETS SONT RANGES AVANT LES MILIEUX
  19. *
  20. * T6
  21. *
  22. IF(IELE.EQ.6) THEN
  23. YGENE(1,1) = 1.D0
  24. YGENE(1,2) = 1.D0
  25. YGENE(1,4) =-2.D0
  26. YGENE(2,2) = 1.D0
  27. YGENE(2,3) = 1.D0
  28. YGENE(2,5) =-2.D0
  29. YGENE(3,3) = 1.D0
  30. YGENE(3,1) = 1.D0
  31. YGENE(3,6) =-2.D0
  32. *
  33. * Q8
  34. *
  35. ELSE IF(IELE.EQ.10) THEN
  36. YGENE(1,1) = 1.D0
  37. YGENE(1,2) = 1.D0
  38. YGENE(1,5) =-2.D0
  39. YGENE(2,2) = 1.D0
  40. YGENE(2,3) = 1.D0
  41. YGENE(2,6) =-2.D0
  42. YGENE(3,3) = 1.D0
  43. YGENE(3,4) = 1.D0
  44. YGENE(3,7) =-2.D0
  45. YGENE(4,4) = 1.D0
  46. YGENE(4,1) = 1.D0
  47. YGENE(4,8) =-2.D0
  48. *
  49. * C20
  50. *
  51. ELSE IF(IELE.EQ.15) THEN
  52. YGENE(1,1) = 1.D0
  53. YGENE(1,2) = 1.D0
  54. YGENE(1,9) =-2.D0
  55. YGENE(2,2) = 1.D0
  56. YGENE(2,3) = 1.D0
  57. YGENE(2,10) =-2.D0
  58. YGENE(3,3) = 1.D0
  59. YGENE(3,4) = 1.D0
  60. YGENE(3,11) =-2.D0
  61. YGENE(4,4) = 1.D0
  62. YGENE(4,1) = 1.D0
  63. YGENE(4,12) =-2.D0
  64. YGENE(5,5) = 1.D0
  65. YGENE(5,6) = 1.D0
  66. YGENE(5,17) =-2.D0
  67. YGENE(6,6) = 1.D0
  68. YGENE(6,7) = 1.D0
  69. YGENE(6,18) =-2.D0
  70. YGENE(7,7) = 1.D0
  71. YGENE(7,8) = 1.D0
  72. YGENE(7,19) =-2.D0
  73. YGENE(8,8) = 1.D0
  74. YGENE(8,5) = 1.D0
  75. YGENE(8,20) =-2.D0
  76. YGENE(9,1) = 1.D0
  77. YGENE(9,5) = 1.D0
  78. YGENE(9,13) =-2.D0
  79. YGENE(10,2) = 1.D0
  80. YGENE(10,6) = 1.D0
  81. YGENE(10,14)=-2.D0
  82. YGENE(11,3) = 1.D0
  83. YGENE(11,7) = 1.D0
  84. YGENE(11,15)=-2.D0
  85. YGENE(12,4) = 1.D0
  86. YGENE(12,8) = 1.D0
  87. YGENE(12,16)=-2.D0
  88. *
  89. * P15
  90. *
  91. ELSE IF(IELE.EQ.17) THEN
  92. YGENE(1,1) = 1.D0
  93. YGENE(1,2) = 1.D0
  94. YGENE(1,7) =-2.D0
  95. YGENE(2,2) = 1.D0
  96. YGENE(2,3) = 1.D0
  97. YGENE(2,8) =-2.D0
  98. YGENE(3,3) = 1.D0
  99. YGENE(3,1) = 1.D0
  100. YGENE(3,9) =-2.D0
  101. YGENE(4,4) = 1.D0
  102. YGENE(4,5) = 1.D0
  103. YGENE(4,13)=-2.D0
  104. YGENE(5,5) = 1.D0
  105. YGENE(5,6) = 1.D0
  106. YGENE(5,14)=-2.D0
  107. YGENE(6,6) = 1.D0
  108. YGENE(6,4) = 1.D0
  109. YGENE(6,15)=-2.D0
  110. YGENE(7,1) = 1.D0
  111. YGENE(7,4) = 1.D0
  112. YGENE(7,10)=-2.D0
  113. YGENE(8,2) = 1.D0
  114. YGENE(8,5) = 1.D0
  115. YGENE(8,11)=-2.D0
  116. YGENE(9,3) = 1.D0
  117. YGENE(9,6) = 1.D0
  118. YGENE(9,12)=-2.D0
  119. *
  120. * T10
  121. *
  122. ELSE IF(IELE.EQ.24) THEN
  123. YGENE(1,1) = 1.D0
  124. YGENE(1,2) = 1.D0
  125. YGENE(1,5) =-2.D0
  126. YGENE(2,2) = 1.D0
  127. YGENE(2,3) = 1.D0
  128. YGENE(2,6) =-2.D0
  129. YGENE(3,3) = 1.D0
  130. YGENE(3,1) = 1.D0
  131. YGENE(3,7) =-2.D0
  132. YGENE(4,1) = 1.D0
  133. YGENE(4,4) = 1.D0
  134. YGENE(4,8) =-2.D0
  135. YGENE(5,2) = 1.D0
  136. YGENE(5,4) = 1.D0
  137. YGENE(5,9) =-2.D0
  138. YGENE(6,3) = 1.D0
  139. YGENE(6,4) = 1.D0
  140. YGENE(6,10)=-2.D0
  141. *
  142. * RP3
  143. *
  144. ELSE IF(IELE.EQ.29) THEN
  145. YGENE(1,1) = 1.D0
  146. YGENE(1,2) = 1.D0
  147. YGENE(1,7) =-2.D0
  148. YGENE(2,3) = 1.D0
  149. YGENE(2,4) = 1.D0
  150. YGENE(2,8) =-2.D0
  151. *
  152. * LP6
  153. *
  154. ELSE IF(IELE.EQ.30) THEN
  155. YGENE(1,1) = 1.D0
  156. YGENE(1,2) = 1.D0
  157. YGENE(1,10)=-2.D0
  158. YGENE(2,2) = 1.D0
  159. YGENE(2,3) = 1.D0
  160. YGENE(2,11)=-2.D0
  161. YGENE(3,3) = 1.D0
  162. YGENE(3,1) = 1.D0
  163. YGENE(3,12)=-2.D0
  164. YGENE(4,4) = 1.D0
  165. YGENE(4,5) = 1.D0
  166. YGENE(4,13)=-2.D0
  167. YGENE(5,5) = 1.D0
  168. YGENE(5,6) = 1.D0
  169. YGENE(5,14)=-2.D0
  170. YGENE(6,6) = 1.D0
  171. YGENE(6,4) = 1.D0
  172. YGENE(6,15)=-2.D0
  173. *
  174. * LP8
  175. *
  176. ELSE IF(IELE.EQ.31) THEN
  177. YGENE(1,1) = 1.D0
  178. YGENE(1,2) = 1.D0
  179. YGENE(1,13)=-2.D0
  180. YGENE(2,2) = 1.D0
  181. YGENE(2,3) = 1.D0
  182. YGENE(2,14)=-2.D0
  183. YGENE(3,3) = 1.D0
  184. YGENE(3,4) = 1.D0
  185. YGENE(3,15)=-2.D0
  186. YGENE(4,4) = 1.D0
  187. YGENE(4,1) = 1.D0
  188. YGENE(4,16)=-2.D0
  189. YGENE(5,5) = 1.D0
  190. YGENE(5,6) = 1.D0
  191. YGENE(5,17)=-2.D0
  192. YGENE(6,6) = 1.D0
  193. YGENE(6,7) = 1.D0
  194. YGENE(6,18)=-2.D0
  195. YGENE(7,7) = 1.D0
  196. YGENE(7,8) = 1.D0
  197. YGENE(7,19)=-2.D0
  198. YGENE(8,8) = 1.D0
  199. YGENE(8,5) = 1.D0
  200. YGENE(8,20)=-2.D0
  201. *
  202. ELSE
  203. CALL ERREUR(5)
  204. ENDIF
  205. RETURN
  206. END
  207.  
  208.  
  209.  
  210.  

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