Télécharger t4ct2.eso

Retour à la liste

Numérotation des lignes :

t4ct2
  1. C T4CT2 SOURCE CB215821 26/08/24 21:18:28 12622
  2. SUBROUTINE T4CT2(A,B,CC,MT)
  3. C=======================================================================
  4. C
  5. C CALCUL TENSORIEL C = A : D
  6. C
  7. C - C TENSEUR D ORDRE 2 symetrique
  8. C - A TENSEUR D ORDRE 4
  9. C - D TENSEUR D ORDRE 2 symetrique
  10. C
  11. C Remarque : En entree le tenseur D est en notation de VOIGT
  12. C========================================================================
  13. C
  14. C CREATION : F.CORMERY
  15. C E.N.S.M.A - LMPM
  16. C DEC 1992
  17. C
  18. C========================================================================
  19. IMPLICIT INTEGER(I-N)
  20. IMPLICIT REAL*8 (A-H,O-Z)
  21. C************************************************************************
  22. C DIMENSION ET DATA
  23. C************************************************************************
  24. C N9 N18
  25. DIMENSION A(3,3,3,3),B(6),CC(6),D(3,3),C(3,3)
  26. C************************************************************************
  27. C PASSAGE DU TENSEUR B : tenseur d ordre 1 en tenseur d ordre 2
  28. C************************************************************************
  29. D(1,1)=B(1)
  30. D(2,2)=B(2)
  31. D(3,3)=B(3)
  32. D(2,3)=B(4)
  33. D(3,2)=B(4)
  34. D(1,3)=B(5)
  35. D(3,1)=B(5)
  36. D(1,2)=B(6)
  37. D(2,1)=B(6)
  38. C************************************************************************
  39. C CALCUL DU PRODUIT TENSORIEL : C = A : D
  40. C************************************************************************
  41. DO 1003 I=1,3
  42. DO 1002 J=1,3
  43. C(I,J)=0.D0
  44. DO 1001 K=1,3
  45. DO 10 L=1,3
  46. C(I,J)=C(I,J)+A(I,J,K,L)*D(K,L)
  47. 10 CONTINUE
  48. 1001 CONTINUE
  49. 1002 CONTINUE
  50. 1003 CONTINUE
  51. C------------------------------------------------------------------------
  52. C Verification
  53. C------------------------------------------------------------------------
  54. DO 1004 I=1,3
  55. DO 20 J=1,3
  56. IF(ABS(C(I,J)-C(J,I)).GT.1E-5)THEN
  57. WRITE(MT,1000)
  58. 1000 FORMAT(1X,'ERREUR DANS T4CT2C.FOR : TENSEUR A+ non symetrique')
  59. DO 21 M=1,3
  60. WRITE(MT,*)(C(M,N),N=1,3)
  61. 21 CONTINUE
  62. C STOP
  63. ENDIF
  64. 20 CONTINUE
  65. 1004 CONTINUE
  66. C************************************************************************
  67. C PASSAGE DU TENSEUR C EN NOTATION DE VOIGT
  68. C************************************************************************
  69. CC(1)=C(1,1)
  70. CC(2)=C(2,2)
  71. CC(3)=C(3,3)
  72. CC(4)=C(2,3)
  73. CC(5)=C(1,3)
  74. CC(6)=C(1,2)
  75. C------------------------------------------------------------------------
  76. DO 132 I=1,6
  77. IF(ABS(CC(I)).LE.1E-15)CC(I)=0.D0
  78. 132 CONTINUE
  79. C------------------------------------------------------------------------
  80. RETURN
  81. END
  82.  
  83.  
  84.  
  85.  

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