Télécharger hookmu.eso

Retour à la liste

Numérotation des lignes :

  1. C HOOKMU SOURCE CHAT 05/01/13 00:25:47 5004
  2. SUBROUTINE HOOKMU(EPAIST,EXCEN,LHOOK,DDHOOK,DDHOMU)
  3. *=======================================================================
  4. *
  5. * ENTREES
  6. * EPAIST = EPAISSEUR
  7. * EXCEN = EXCEN POUR ELEMENT MULTI COUCHE
  8. * DDHOOK(LHOOK,LHOOK) = MATRICE DE HOOKE
  9. * LHOOK = TAILLE MATRICE DE HOOKE
  10. * SORTIES
  11. * DDHOMU(LHOOK,LHOOK)= 1 BLOC 3 3 * EPAIST
  12. * 2 3 BLOC 3 3 * EPAIST*EXCEN
  13. * 4 BLOC 3 3 * (EPAIST**3)/12+EPAIST*EXCEN*EXCEN
  14. * EBERSOLT MAI 86
  15. *
  16. *=======================================================================
  17. IMPLICIT INTEGER(I-N)
  18. IMPLICIT REAL*8(A-H,O-Z)
  19. PARAMETER (UNDOU = .83333 33333 33333D-1)
  20. PARAMETER (XMAX = 1.D-10)
  21. DIMENSION DDHOOK(LHOOK,*),DDHOMU(LHOOK,*)
  22. *
  23. * MISE A ZERO
  24. *
  25. CALL ZERO(DDHOMU,LHOOK,LHOOK)
  26. *
  27. EEAA = EPAIST*EXCEN
  28. EEEE = EEAA*EXCEN + EPAIST*EPAIST*EPAIST*UNDOU
  29. *
  30. * ON MULTIPLIE
  31. *
  32. IF (LHOOK.EQ.4) THEN
  33. DO 30 IC=1,2
  34. DO 30 ID=1,2
  35. DDHOMU(ID,IC ) = DDHOOK(ID,IC)*EPAIST
  36. DDHOMU(ID,IC+2) = DDHOOK(ID,IC)*EEAA
  37. DDHOMU(ID+2,IC ) = DDHOOK(ID,IC)*EEAA
  38. DDHOMU(ID+2,IC+2) = DDHOOK(ID+2,IC+2)*EEEE
  39. 30 CONTINUE
  40. ELSE IF (LHOOK.EQ.6.OR.LHOOK.EQ.8) THEN
  41. DO 40 IC=1,3
  42. DO 40 ID=1,3
  43. DDHOMU(ID,IC ) = DDHOOK(ID,IC )*EPAIST
  44. DDHOMU(ID,IC+3) = DDHOOK(ID,IC )*EEAA
  45. DDHOMU(ID+3,IC ) = DDHOOK(ID,IC )*EEAA
  46. DDHOMU(ID+3,IC+3) = DDHOOK(ID+3,IC+3)*EEEE
  47. 40 CONTINUE
  48. ENDIF
  49. *
  50. * CAS DES COQUES AVEC CISAILLEMENT TRANSVERSE
  51. *
  52. IF (LHOOK.EQ.8) THEN
  53. DO 50 IC=7,8
  54. DO 50 ID=7,8
  55. DDHOMU(ID,IC) = DDHOOK(ID,IC)*EPAIST
  56. 50 CONTINUE
  57. ENDIF
  58. *
  59. RETURN
  60. END
  61.  
  62.  

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