Télécharger idvec2.eso

Retour à la liste

Numérotation des lignes :

idvec2
  1. C IDVEC2 SOURCE CB215821 24/04/12 21:16:24 11897
  2. SUBROUTINE IDVEC2(IPMODL,ICAS,NDIM,IF3,CMOT,IPNOMC,NBROBL,
  3. & NLIST,IER1)
  4. IMPLICIT INTEGER(I-N)
  5. IMPLICIT REAL*8(A-H,O-Z)
  6. *-----------------------------------------------------------------------*
  7. * Recherche des noms de composantes pour creer des vecteurs *
  8. * a partir de MCHAML (appele par vecte2 ou vecte3) *
  9. * ICAS = 1 : cas des contraintes principales *
  10. * ICAS = 2 : cas des fissures *
  11. *-----------------------------------------------------------------------*
  12. *
  13. -INC PPARAM
  14. -INC SMMODEL
  15. *
  16. DIMENSION IPNOMC(3)
  17. CHARACTER*4 CMOT
  18. *
  19. IMO = 0
  20. IF (CMOT.NE.' ') IMO = 1
  21. IER1 = 0
  22. IMODEL = IPMODL
  23. MELE = NEFMOD
  24. MFR = NUMMFR(MELE)
  25. *
  26. IF (ICAS.EQ.1) THEN
  27. * Contraintes principales
  28. IF (MFR.EQ.3.OR.MFR.EQ.5.OR.MFR.EQ.9) THEN
  29. IF (IMO.EQ.1) THEN
  30. IF (CMOT.NE.'SI11'.AND.CMOT.NE.'SI22') THEN
  31. IER1 = 2
  32. RETURN
  33. ENDIF
  34. ENDIF
  35. NLIST = 2
  36. NBROBL = 4
  37. NBRFAC = 0
  38. SEGINI NOMID
  39. LESOBL(1) = 'SI11'
  40. LESOBL(2) = 'COX1'
  41. LESOBL(3) = 'COY1'
  42. LESOBL(4) = 'COZ1'
  43. IPNOMC(1) = NOMID
  44. SEGDES NOMID
  45. NBROBL = 4
  46. NBRFAC = 0
  47. SEGINI NOMID
  48. LESOBL(1) = 'SI22'
  49. LESOBL(2) = 'COX2'
  50. LESOBL(3) = 'COY2'
  51. LESOBL(4) = 'COZ2'
  52. IPNOMC(2) = NOMID
  53. SEGDES NOMID
  54. ELSE IF (MFR.EQ.1) THEN
  55. IF (NDIM.EQ.2) THEN
  56. IF (IMO.EQ.1) THEN
  57. IF (CMOT.NE.'SI11'.AND.CMOT.NE.'SI22') THEN
  58. IER1 = 2
  59. RETURN
  60. ENDIF
  61. ENDIF
  62. NLIST = 2
  63. NBROBL = 4
  64. NBRFAC = 0
  65. SEGINI NOMID
  66. LESOBL(1) = 'SI11'
  67. LESOBL(2) = 'COX1'
  68. LESOBL(3) = 'COY1'
  69. LESOBL(4) = 'COZ1'
  70. IPNOMC(1) = NOMID
  71. SEGDES NOMID
  72. NBROBL = 4
  73. SEGINI NOMID
  74. NBRFAC = 0
  75. LESOBL(1) = 'SI22'
  76. LESOBL(2) = 'COX2'
  77. LESOBL(3) = 'COY2'
  78. LESOBL(4) = 'COZ2'
  79. IPNOMC(2) = NOMID
  80. SEGDES NOMID
  81. ELSE IF (NDIM.EQ.3) THEN
  82. IF (IMO.EQ.1) THEN
  83. IF (CMOT.NE.'SI11'.AND.CMOT.NE.'SI22'
  84. & .AND.CMOT.NE.'SI33') THEN
  85. IER1 = 2
  86. RETURN
  87. ENDIF
  88. ENDIF
  89. NLIST = 3
  90. NBROBL = 4
  91. NBRFAC = 0
  92. SEGINI NOMID
  93. LESOBL(1) = 'SI11'
  94. LESOBL(2) = 'COX1'
  95. LESOBL(3) = 'COY1'
  96. LESOBL(4) = 'COZ1'
  97. IPNOMC(1) = NOMID
  98. SEGDES NOMID
  99. NBROBL = 4
  100. NBRFAC = 0
  101. SEGINI NOMID
  102. LESOBL(1) = 'SI22'
  103. LESOBL(2) = 'COX2'
  104. LESOBL(3) = 'COY2'
  105. LESOBL(4) = 'COZ2'
  106. IPNOMC(2) = NOMID
  107. SEGDES NOMID
  108. NBROBL = 4
  109. NBRFAC = 0
  110. SEGINI NOMID
  111. LESOBL(1) = 'SI33'
  112. LESOBL(2) = 'COX3'
  113. LESOBL(3) = 'COY3'
  114. LESOBL(4) = 'COZ3'
  115. IPNOMC(3) = NOMID
  116. SEGDES NOMID
  117. ELSE
  118. IER1 = 1
  119. ENDIF
  120. ELSE
  121. IER1 = 1
  122. ENDIF
  123. ELSE IF (ICAS.EQ.2) THEN
  124. * Fissures
  125. IF (NDIM.EQ.2) THEN
  126. NLIST = 2
  127. *
  128. NBROBL = 2
  129. NBRFAC = 0
  130. SEGINI NOMID
  131. LESOBL(1) = 'VF1X'
  132. LESOBL(2) = 'VF1Y'
  133. IPNOMC(1) = NOMID
  134. SEGDES NOMID
  135. *
  136. NBROBL = 2
  137. NBRFAC = 0
  138. SEGINI NOMID
  139. LESOBL(1) = 'VF2X'
  140. LESOBL(2) = 'VF2Y'
  141. IPNOMC(2) = NOMID
  142. SEGDES NOMID
  143. *
  144. ELSE IF (NDIM.EQ.3) THEN
  145. * 3D / IF3=1 : coques / IF3=2 : massifs
  146. NLIST = 2
  147. IF (IF3.EQ.2) NLIST = 3
  148. *
  149. NBROBL = 2
  150. IF (IF3.EQ.2) NBROBL = 3
  151. NBRFAC = 0
  152. SEGINI NOMID
  153. LESOBL(1) = 'VF1X'
  154. LESOBL(2) = 'VF1Y'
  155. IF (IF3.EQ.2) LESOBL(3) = 'VF1Z'
  156. IPNOMC(1) = NOMID
  157. SEGDES NOMID
  158. *
  159. NBROBL = 2
  160. IF (IF3.EQ.2) NBROBL = 3
  161. NBRFAC = 0
  162. SEGINI NOMID
  163. LESOBL(1) = 'VF2X'
  164. LESOBL(2) = 'VF2Y'
  165. IF (IF3.EQ.2) LESOBL(3) = 'VF2Z'
  166. IPNOMC(2) = NOMID
  167. SEGDES NOMID
  168. *
  169. IF (IF3.EQ.2) THEN
  170. NBROBL = 3
  171. NBRFAC = 0
  172. SEGINI NOMID
  173. LESOBL(1) = 'VF3X'
  174. LESOBL(2) = 'VF3Y'
  175. LESOBL(3) = 'VF3Z'
  176. IPNOMC(3) = NOMID
  177. SEGDES NOMID
  178. ENDIF
  179. ENDIF
  180. ELSE
  181. IER1 = 1
  182. ENDIF
  183. *
  184. RETURN
  185. END
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  

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