Télécharger compou.eso

Retour à la liste

Numérotation des lignes :

  1. C COMPOU SOURCE BP208322 17/03/01 21:16:27 9325
  2. *
  3. SUBROUTINE COMPOU(IB,MWRKXE,ililuc,iwrk53)
  4. *
  5. ****************************************************
  6. * ENTREES
  7. ****************************************************
  8. *
  9. * MFR : formulation de l'élément
  10. * MELE : numéro élément fini
  11. * NBNN : nombre de noeuds par élément (WRK4)
  12. * IB : numéro de l'élément
  13. * XEL : coordonnées des points de l'élément (MWRK2)
  14. *
  15. ****************************************************
  16. * SORTIES
  17. ****************************************************
  18. *
  19. ****************************************************
  20. IMPLICIT INTEGER(I-N)
  21. IMPLICIT REAL*8(A-H,O-Z)
  22. *
  23. -INC CCOPTIO
  24. *
  25. -INC SMCHAML
  26. * segment deroulant le mcheml
  27. -INC DECHE
  28. *
  29. SEGMENT MWRKXE
  30. REAL*8 XEL(3,NBNN)
  31. ENDSEGMENT
  32. c
  33. liluc = ililuc
  34. wrk53 = iwrk53
  35. C
  36. C XEL est rempli systematiquement dans le sous-programme appelant
  37. c
  38. c special poutres et tuyaux sauf timoschenko
  39. c
  40. IF ((MFR.EQ.7.OR.MFR.EQ.13).AND.MELE.NE.84) THEN
  41. C
  42. IF (IDIM.EQ.3) THEN
  43. C
  44. XL=SQRT ( (XEL(1,2)-XEL(1,1))**2 +
  45. & (XEL(2,2)-XEL(2,1))**2 +
  46. & (XEL(3,2)-XEL(3,1))**2 )
  47. pilnec = liluc(11,2)
  48. ******* segact pilnec*nomod
  49. mran = pilobl(/2)
  50. deche = pilobl(6,mran)
  51. ********* segact deche*nomod
  52. melval = ieldec
  53. DSIGP = VELCHE(1,IB) - VELCHE(2,IB)
  54. deche = pilobl(2,mran)
  55. ******** segact deche*nomod
  56. melval = ieldec
  57. ********* segact melval*mod
  58. VELCHE(1,IB)= DSIGP / XL
  59. VELCHE(2,IB)=VELCHE(1,IB)
  60. deche = pilobl(5,mran)
  61. *********** segact deche*nomod
  62. melval = ieldec
  63. DSIGP = VELCHE(2,IB) - VELCHE(1,IB)
  64. deche = pilobl(3,mran)
  65. *********** segact deche*nomod
  66. melval = ieldec
  67. ************ segact melval*mod
  68. VELCHE(1,IB)= DSIGP / XL
  69. VELCHE(2,IB)=VELCHE(1,IB)
  70. C
  71. ELSE
  72. C CAS 2D
  73. XL=SQRT ( (XEL(1,2)-XEL(1,1))**2 +
  74. & (XEL(2,2)-XEL(2,1))**2 )
  75. pilnec = liluc(11,2)
  76. *********** segact pilnec*nomod
  77. mran = pilobl(/2)
  78. deche = pilobl(3,mran)
  79. ************* segact deche*nomod
  80. melval = ieldec
  81. DSIGP = VELCHE(1,IB) - VELCHE(2,IB)
  82. *
  83. deche = pilobl(2,mran)
  84. ************ segact deche*nomod
  85. melval = ieldec
  86. *************** segact melval*mod
  87. VELCHE(1,IB)= DSIGP / XL
  88. VELCHE(2,IB)=VELCHE(1,IB)
  89. C
  90. ENDIF
  91. C
  92. ENDIF
  93. c
  94. RETURN
  95. END
  96.  
  97.  
  98.  
  99.  
  100.  

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