Télécharger cotrac.eso

Retour à la liste

Numérotation des lignes :

cotrac
  1. C COTRAC SOURCE PASCAL 21/05/06 21:15:08 10998
  2. SUBROUTINE COTRAC(WRK0,WRK2,NCOURB,KERRE)
  3. C-----------------------------------------------------------------------
  4. C
  5. C CETTE SUBROUTINE RENVOIE LA RELATION CONTRAINTE-DEFORMATION
  6. C DANS LE SEGMENT WRK2 A PARTIR DE LA COURBE D'ECROUISSAGE,
  7. C I.E. LA COURBE CONTRAINTE VS DEFORMATION PLASTIQUE.
  8. C
  9. C LE PREMIER POINT DE LA COURBE FOURNIT SIGY,
  10. C LA DEFORMATION PLASTIQUE ASSOCIEE EST NULLE.
  11. C
  12. C-----------------------------------------------------------------------
  13. IMPLICIT INTEGER(I-N)
  14. IMPLICIT REAL*8(A-H,O-Z)
  15. -INC SMEVOLL
  16. -INC SMLREEL
  17. -INC CCREEL
  18.  
  19. -INC PPARAM
  20. -INC CCOPTIO
  21. SEGMENT/WRK0/(XMAT(NCOMAT)*D)
  22. SEGMENT/WRK2/(TRAC(LTRAC)*D)
  23. DATA NCOMAX/130/
  24. KERRE=0
  25. MEVOLL=nint(XMAT(5))
  26.  
  27. IF(MEVOLL.EQ.0) THEN
  28. KERRE=37
  29. RETURN
  30. ENDIF
  31.  
  32. SEGACT MEVOLL
  33. KEVOLL=IEVOLL(1)
  34. SEGACT KEVOLL
  35. MLREEL=IPROGX
  36. MLREE1=IPROGY
  37.  
  38. SEGACT MLREEL,MLREE1
  39. NBPOIX=PROG(/1)
  40. NBPOIY=MLREE1.PROG(/1)
  41. IF(NBPOIX.GT.NCOMAX+1) KERRE=31
  42. IF(KERRE.NE.0) RETURN
  43. IF(NBPOIX.LT.2) THEN
  44. CALL ERREUR(1100)
  45. RETURN
  46. ENDIF
  47. C
  48. C VERIFICATION DU MODULE DE YOUNG
  49. C
  50. YUNG=XMAT(1)
  51. IF(YUNG.LE.0.D0) THEN
  52. REAERR(1)=YUNG
  53. CALL ERREUR(1090)
  54. KERRE=34
  55. RETURN
  56. ENDIF
  57. C
  58. C VERIF DE LA LIMITE ELASTIQUE NON NULLE
  59. C
  60. PSIG =MLREE1.PROG(1)
  61. IF(PSIG.LT.0.D0) THEN
  62. REAERR(1)=PSIG
  63. CALL ERREUR(1091)
  64. KERRE=30
  65. RETURN
  66. ENDIF
  67. PEPS=PROG(1)
  68. IF(ABS(PEPS).GT.XZPREC) THEN
  69. REAERR(1)=PEPS
  70. CALL ERREUR(1099)
  71. KERRE=35
  72. RETURN
  73. ENDIF
  74. C
  75. C VERIF DE LA PENTE
  76. C
  77. DO 100 I=2,NBPOIX
  78. I1=I-1
  79. DEPS=PROG(I)-PROG(I1)
  80. IF(DEPS.LE.0.D0) THEN
  81. CALL ERREUR(1101)
  82. KERRE=33
  83. RETURN
  84. ENDIF
  85. PENTE=(MLREE1.PROG(I)-MLREE1.PROG(I1))/DEPS
  86. IF(ABS(PENTE-YUNG).LT.(1.D-3*YUNG)) THEN
  87. * REAERR(1)=PENTE
  88. * REAERR(2)=YUNG
  89. CALL ERREUR(1102)
  90. KERRE=33
  91. RETURN
  92. ENDIF
  93. 100 CONTINUE
  94. C
  95. C DONNEE DE LA COURBE SOUS FORME D'UNE LISTE
  96. C
  97. NCOURB = 1
  98. TRAC(1)= MLREE1.PROG(1)
  99. TRAC(2)= 0.D0
  100. DO 695 I=2,NBPOIX
  101. PEPS = PROG(I)
  102. PSIG = MLREE1.PROG(I)
  103. NCOURB = NCOURB+1
  104. TRAC(2*NCOURB-1) = PSIG
  105. TRAC(2*NCOURB) = PEPS
  106. 695 CONTINUE
  107.  
  108. END
  109.  
  110.  
  111.  
  112.  
  113.  

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