Télécharger hill.eso

Retour à la liste

Numérotation des lignes :

hill
  1. C HILL SOURCE KK2000 05/05/25 21:15:17 5088
  2. c Sous-Programme du module MISTRAL0
  3. C --------------------------------------------------------------------------
  4. SUBROUTINE HILL (TT,PSI,S, ID, PCOHI, NP, SEQ,DSESDS,
  5. & DSEDTT,DSDPSI)
  6. C --------------------------------------------------------------------------
  7. C Calcul de :
  8. C - la contrainte equivalente SEQ,
  9. C - ses derivees partielles DSESDS(IJ) par rapport aux S(IJ),
  10. C puis, si ID = 1, DSEDTT et DSDPSI par rapport a TT et PSI,
  11. C en fonction :
  12. C - de la temperature TT,
  13. C - de la variable de durcissement du a l'irradiation PSI,
  14. C - des contraintes S(IJ),
  15. C - des parametres transmis dans PCOHI,
  16. C NP (incremente dans COHILL) etant en entree le nombre
  17. C de ceux correspondant aux deformations de natures IDPP < IDP.
  18. C --------------------------------------------------------------------------
  19. IMPLICIT INTEGER(I-N)
  20. IMPLICIT REAL*8 (A-H, O-Z)
  21. DIMENSION S(1:*)
  22. DIMENSION PCOHI(1:*)
  23. DIMENSION H(1:6),DHDTT(1:6),DHDPSI(1:6)
  24. DIMENSION ISU(1:3)
  25. DIMENSION DSESDS(1:*)
  26. C ------------------------------------------------------------------
  27. CALL COHILL (TT,PSI, ID, PCOHI, NP, H,DHDTT,DHDPSI)
  28. SEQ = SQRT(
  29. & H(1)*(S(2)-S(3))**2+H(2)*(S(3)-S(1))**2+H(3)*(S(1)-S(2))**2
  30. & +2.*H(4)*S(4)**2+2.*H(5)*S(5)**2+2.*H(6)*S(6)**2 )
  31. IF (SEQ.NE.0.) THEN
  32. CALL PROMAH (H,S, DSESDS)
  33. DO I = 1,6
  34. DSESDS(I) = DSESDS(I)/SEQ
  35. END DO
  36. END IF
  37. C ------------------------------------------------------------------
  38. IF (ID.EQ.1) THEN
  39. ISU(1) = 2
  40. ISU(2) = 3
  41. ISU(3) = 1
  42. DSEDTT = 0.
  43. DSDPSI = 0.
  44. DO I = 1,6
  45. IF ((DHDTT(I).NE.0.D0).OR.(DHDPSI(I).NE.0.D0)) THEN
  46. IF (I.LE.3) THEN
  47. J = ISU(I)
  48. K = ISU(J)
  49. SS2 = (S(J)-S(K))**2
  50. ELSE
  51. SS2 = 2.*S(I)**2
  52. END IF
  53. DSEDTT = DSEDTT+SS2*DHDTT(I)
  54. DSDPSI = DSDPSI+SS2*DHDPSI(I)
  55. END IF
  56. END DO
  57. DSEDTT = DSEDTT/2./SEQ
  58. DSDPSI = DSDPSI/2./SEQ
  59. END IF
  60. C ------------------------------------------------------------------
  61. RETURN
  62. END
  63.  
  64.  
  65.  
  66.  

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