Télécharger calc3.eso

Retour à la liste

Numérotation des lignes :

calc3
  1. C CALC3 SOURCE CHAT 05/01/12 21:45:39 5004
  2. C CALC3.eso SOURCE bald MAR 28/03/95 00:00:00
  3. SUBROUTINE CALC3(KNN,KNT,KTN,KTT,SIG0,DU1,DU2,DV,NSTRS,
  4. $ DELTA,RI0,DCON)
  5. C
  6. C-------------------------------------------------------------
  7. C
  8. C ENTREES
  9. C
  10. C KNN,KNT,KTN,KTT = RAIDEURS DU JOINT 2D EQUIVALENT
  11. C SIG0(NSTRS) = CONTRAINTES INITIALES (AU PAS PRECEDENT)
  12. C DU1 = INCREMENT DE LA U1
  13. C DU2 = INCREMENT DE LA U2
  14. C DV = INCREMENT DE LA V
  15. C NSTRS = NOMBRE DE COMPOSANTES DE CONTRAINTES
  16. C
  17. C SORTIES
  18. C
  19. C DELTA = INCREMENT DE LA U EQUIVALENTE
  20. C RI0(NSTRS,NSTRS) = MATRICE DE RIGIDITE DU JOINT
  21. C DCON(NSTRS) = VECTEUR DES INCREMENTS DE CONTRAINTE
  22. C
  23. C-------------------------------------------------------------
  24. C
  25. c
  26. IMPLICIT INTEGER(I-N)
  27. IMPLICIT REAL*8(A-H,O-Z)
  28. DIMENSION SIG0(NSTRS), RI0(NSTRS,NSTRS), DCON(NSTRS)
  29. REAL*8 KNN, KNT, KTN, KTT
  30. c
  31. TOL1=1.D-20
  32. TOL2=1.D-8
  33. c
  34. c calcul de la matrice Dt reale (3D)
  35. c
  36. IF((ABS(SIG0(1)).LE.TOL1).AND.(ABS(SIG0(2)).LE.TOL1))THEN
  37. c
  38. c les deux tau sont nulles
  39. c
  40. IF((ABS(DU1).LE.TOL2).AND.(ABS(DU2).LE.TOL2))THEN
  41. c
  42. c les deux incréments de déformation sont nuls
  43. c
  44. DELTA=0.D0
  45. c
  46. RI0(1,1)=0.D0
  47. RI0(1,2)=0.D0
  48. RI0(1,3)=0.D0
  49. c
  50. RI0(2,1)=0.D0
  51. RI0(2,2)=0.D0
  52. RI0(2,3)=0.D0
  53. c
  54. RI0(3,1)=0.D0
  55. RI0(3,2)=0.D0
  56. RI0(3,3)=KNN
  57. c
  58. ELSE
  59. c
  60. DELTA=SQRT(DU1**2+DU2**2)
  61. c
  62. RI0(1,1)=KTT
  63. RI0(1,2)=0.D0
  64. RI0(1,3)=KTN*(DU1/SQRT(DU1**2+DU2**2))
  65. c
  66. RI0(2,1)=0.D0
  67. RI0(2,2)=KTT
  68. RI0(2,3)=KTN*(DU2/SQRT(DU1**2+DU2**2))
  69. c
  70. RI0(3,1)=KNT*(DU1/SQRT(DU1**2+DU2**2))
  71. RI0(3,2)=KNT*(DU2/SQRT(DU1**2+DU2**2))
  72. RI0(3,3)=KNN
  73. c
  74. END IF
  75. c
  76. ELSE
  77. c
  78. DELTA=(SIG0(1)*DU1+SIG0(2)*DU2)/SQRT(SIG0(1)**2+SIG0(2)**2)
  79. c
  80. RI0(1,1)=KTT*(1.D0+(SIG0(2)**2)/(SIG0(1)**2+SIG0(2)**2))
  81. RI0(1,2)=-KTT*(SIG0(1)*SIG0(2))/(SIG0(1)**2+SIG0(2)**2)
  82. RI0(1,3)=KTN*SIG0(1)/SQRT(SIG0(1)**2+SIG0(2)**2)
  83. c
  84. RI0(2,1)=-KTT*(SIG0(2)*SIG0(1))/(SIG0(1)**2+SIG0(2)**2)
  85. RI0(2,2)=KTT*(1.D0+(SIG0(1)**2)/(SIG0(1)**2+SIG0(2)**2))
  86. RI0(2,3)=KTN*SIG0(2)/SQRT(SIG0(1)**2+SIG0(2)**2)
  87. c
  88. RI0(3,1)=KNT*SIG0(1)/SQRT(SIG0(1)**2+SIG0(2)**2)
  89. RI0(3,2)=KNT*SIG0(2)/SQRT(SIG0(1)**2+SIG0(2)**2)
  90. RI0(3,3)=KNN
  91. c
  92. END IF
  93. c
  94. DCON(1)=RI0(1,1)*DU1+RI0(1,2)*DU2+RI0(1,3)*DV
  95. DCON(2)=RI0(2,1)*DU1+RI0(2,2)*DU2+RI0(2,3)*DV
  96. DCON(3)=RI0(3,1)*DU1+RI0(3,2)*DU2+RI0(3,3)*DV
  97. c
  98. RETURN
  99. c
  100. END
  101.  
  102.  

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