Télécharger dsdx3d.eso

Retour à la liste

Numérotation des lignes :

  1. C DSDX3D SOURCE CHAT 07/10/22 21:15:46 5921
  2. SUBROUTINE DSDX3D(LOOP,B,U,DEPS,D,NBN)
  3. IMPLICIT REAL*8(A-H,O-Z)
  4. IMPLICIT INTEGER (I-N)
  5. *
  6. *----------------------------------------------------------------------
  7. *
  8. * CALCUL DES DERIVEES DUX/DX DVX/DY ETC.... H. BUNG FEV 83
  9. * (ELEMENTS CUB6 )
  10. *----------------------------------------------------------------------
  11. *
  12. * ENTREES :
  13. * B : MATRICE (B)
  14. * U : TABLEAU DES VALEURS NODALES
  15. * LOOP = 2 ON CALCULE LES DEFORMATIONS JUSQU'AU 2E ORDRE
  16. * SUR LA CONFIGURATION (N+1)
  17. *
  18. * SORTIES :
  19. * D : D(1)=DU1/DX1 ; D(2)=DU2/DX1 ; D(3)=DU3/DX1 ;
  20. * : D(4)=DU1/DX2 ; D(5)=DU2/DX2 ; D(6)=DU3/DX2 ;
  21. * : D(7)=DU1/DX3 ; D(8)=DU2/DX3 ; D(9)=DU3/DX3
  22. * DEPS : TENSEUR DE DEFORMATION ASSOCIE A <U>
  23. * DEPS(1)=D(1) ; DEPS(2)=D(5) ; DEPS(3)=D(9)
  24. * DEPS(4)=D(2)+D(4); DEPS(5)=D(6)+D(8); DEPS(6)=D(3)+D(7)
  25. *
  26. * AVEC EVENTUELLEMENT LES TERMES DU 2EME ORDRE
  27. *
  28. *
  29. * IMPLICIT NONE
  30. *
  31. * REAL *8 B(3,*),U(3,8),D(*),DEPS(*)
  32. * REAL *8 B1I,B2I,B3I,U1I,U2I,U3I
  33. * REAL *8 D1,D2,D3,D4,D5,D6,D7,D8,D9
  34. DIMENSION B(3,*),U(3,8),D(*),DEPS(*)
  35. *
  36. * INTEGER NBN,LOOP
  37. *
  38. * INTEGER I
  39. *
  40. **OP_SN
  41. *
  42. *
  43. DO I=1,9
  44. D(I) = 0D0
  45. END DO
  46. *
  47. D1 = 0.D0
  48. D2 = 0.D0
  49. D3 = 0.D0
  50. D4 = 0.D0
  51. D5 = 0.D0
  52. D6 = 0.D0
  53. D7 = 0.D0
  54. D8 = 0.D0
  55. D9 = 0.D0
  56. *
  57. DO I=1,NBN
  58. B1I = B(1,I)
  59. B2I = B(2,I)
  60. B3I = B(3,I)
  61. U1I = U(1,I)
  62. U2I = U(2,I)
  63. U3I = U(3,I)
  64. D1 = D1 + B1I*U1I
  65. D2 = D2 + B1I*U2I
  66. D3 = D3 + B1I*U3I
  67. D4 = D4 + B2I*U1I
  68. D5 = D5 + B2I*U2I
  69. D6 = D6 + B2I*U3I
  70. D7 = D7 + B3I*U1I
  71. D8 = D8 + B3I*U2I
  72. D9 = D9 + B3I*U3I
  73. END DO
  74. D(1) = D1
  75. D(2) = D2
  76. D(3) = D3
  77. D(4) = D4
  78. D(5) = D5
  79. D(6) = D6
  80. D(7) = D7
  81. D(8) = D8
  82. D(9) = D9
  83. *
  84. DEPS(1) = D1
  85. DEPS(2) = D5
  86. DEPS(3) = D9
  87. DEPS(4) = D2 + D4
  88. DEPS(5) = D6 + D8
  89. DEPS(6) = D3 + D7
  90. *
  91. IF(LOOP.EQ.2) THEN
  92. DEPS(1) = DEPS(1) - 0.5*(D1*D1 + D2*D2 + D3*D3)
  93. DEPS(2) = DEPS(2) - 0.5*(D4*D4 + D5*D5 + D6*D6)
  94. DEPS(3) = DEPS(3) - 0.5*(D7*D7 + D8*D8 + D9*D9)
  95. *
  96. DEPS(4) = DEPS(4) - D1*D4 - D2*D5 - D3*D6
  97. DEPS(5) = DEPS(5) - D4*D7 - D5*D8 - D6*D9
  98. DEPS(6) = DEPS(6) - D1*D7 - D2*D8 - D3*D9
  99. ENDIF
  100. *
  101. END
  102.  
  103.  
  104.  

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