Télécharger advan2.eso

Retour à la liste

Numérotation des lignes :

advan2
  1. C ADVAN2 SOURCE CHAT 05/01/12 21:18:46 5004
  2. C ADVAN2 SOURCE PCP 90/01/12 11:07:40
  3. C----------------------------------------------------------------
  4. SUBROUTINE ADVAN2(TAU,SIG,EPSV,VAR,SIG1,EPSV1,VAR1,
  5. & SIGPT,EPSVPT,VARPT,XMAT,
  6. & NSTRS,NVARI,IFOUR,INPLAS,NCOMAT )
  7. C -----------------------------------------------------------------
  8. IMPLICIT INTEGER(I-N)
  9. IMPLICIT REAL*8(A-H,O-Z)
  10. DIMENSION SIG(*),EPSV(*),VAR(*),SIG1(*),EPSV1(*),VAR1(*)
  11. DIMENSION SIGPT(*),EPSVPT(*),VARPT(*),XMAT(*)
  12. C----------------------------------------------------------------
  13. C THIS ROUTINE CALCULATES THE LATEST VALUES OF SIG,EPSV,VAR,
  14. C FROM THE INITIAL VALUES OF SIG,EPSV,VAR AND DERIVATIVES :
  15. C SIGPT,EPSVPT,VARPT
  16. C----------------------------------------------------------------
  17. T1 = XMAT(1)/(1.0-XMAT(2)*XMAT(2))
  18. T2 = T1 * XMAT(2)
  19. T3 = XMAT(1)/(1.0+XMAT(2))
  20. NS = NSTRS/2
  21. C________________________________________________________________
  22. C STRESS COMPONENTS
  23. C________________________________________________________________
  24. IF(NS.EQ.2) THEN
  25. SIG1(1) = SIG(1) + TAU*(SIGPT(1)- T1*EPSVPT(1)-T2*EPSVPT(2))
  26. SIG1(2) = SIG(2) + TAU*(SIGPT(2)- T1*EPSVPT(2)-T2*EPSVPT(1))
  27. SIG1(3) = SIG(3) + TAU*(SIGPT(3)- T1*EPSVPT(3)-T2*EPSVPT(4))
  28. SIG1(4) = SIG(4) + TAU*(SIGPT(4)- T1*EPSVPT(4)-T2*EPSVPT(3))
  29. IF(IFOUR.EQ.-2) THEN
  30. SIG1(2)=0.0D0
  31. SIG1(4)=0.0D0
  32. ENDIF
  33. ELSE
  34. SIG1(1) = SIG(1) + TAU*(SIGPT(1)- T1*EPSVPT(1)-T2*EPSVPT(2))
  35. SIG1(2) = SIG(2) + TAU*(SIGPT(2)- T1*EPSVPT(2)-T2*EPSVPT(1))
  36. SIG1(3) = SIG(3) + TAU*(SIGPT(3)- T3*EPSVPT(3))
  37. SIG1(4) = SIG(4) + TAU*(SIGPT(4)- T1*EPSVPT(4)-T2*EPSVPT(5))
  38. SIG1(5) = SIG(5) + TAU*(SIGPT(5)- T1*EPSVPT(5)-T2*EPSVPT(4))
  39. SIG1(6) = SIG(6) + TAU*(SIGPT(6)- T3*EPSVPT(6))
  40. IF(IFOUR.EQ.-2) THEN
  41. SIG1(2)=0.0D0
  42. SIG1(5)=0.0D0
  43. ENDIF
  44. ENDIF
  45. C
  46. C________________________________________________________________
  47. C STRAIN COMPONENTS
  48. C________________________________________________________________
  49. DO 20 I =1,NSTRS
  50. EPSV1(I) = EPSV(I) + TAU*EPSVPT(I)
  51. 20 CONTINUE
  52. C
  53. C________________________________________________________________
  54. C INTERNAL VARIABLES
  55. C________________________________________________________________
  56. IF((INPLAS.GE.19.AND.INPLAS.LE.23).OR.INPLAS.EQ.61) THEN
  57. DO 30 I=1,2*NSTRS+3
  58. VAR1(I)=VARPT(I)
  59. 30 CONTINUE
  60. DO 40 I=2*NSTRS+4,NVARI
  61. VAR1(I)=VAR(I)+TAU*VARPT(I)
  62. 40 CONTINUE
  63. ELSE IF(INPLAS.EQ.24.OR.INPLAS.EQ.25.OR.INPLAS.EQ.53
  64. . .OR.INPLAS.EQ.76.OR.INPLAS.EQ.77) THEN
  65. DO 50 I=1,NVARI
  66. VAR1(I)=VAR(I)+TAU*VARPT(I)
  67. 50 CONTINUE
  68. ENDIF
  69. RETURN
  70. END
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  

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