Announcement

Collapse
No announcement yet.

Help Needed in VUHARD subroutine

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Help Needed in VUHARD subroutine

    Hello, I am working on simulating the segmented chip formation of Ti-6Al-4V. I am trying to use the user subroutine VUHARD to define hardening part. I have set the PLASTIC part in material definition to USER and defined two parameters as hardening properties. I have set the path of the subroutine in the job defintion part too.

    I am running the subroutine from command line also and checking the values of different variables. Program is running completely without any error but showing the Mises Stress values to be completely zero. That is the main problem i am encountering. And one more surprising thing I have seen is plastic strain-rate "eqpsRate" is coming to be zero which is supposed to be very high. I am just trying to model JOHNSON-COOK model via subroutine. Can any one please suggest where the mistake can be ? I suppose it's a gross mistake i am making and is it also possible that ABAQUS itself is not giving correct input to the subroutine ??

    JOHNSON-COOK model looks like:

    stress = (PA + PB*Ep**pn)*(1 - ((T - Tref)/(Tm - Tref))**pm)*(1 + PC*Log(Epdot/Epdot0))

    My subroutine is following:

    C SUBROUTINE FOR JC HARDENING MODEL

    subroutine vuhard(
    C Read only -
    1 nblock, jElem, kIntPt, kLayer, kSecPt, lAnneal, stepTime,
    2 totalTime, dt, cmname, nstatev, nfieldv, nprops,props, tempOld,
    3 tempNew, fieldOld, fieldNew, stateOld, eqps, eqpsRate
    C
    C Write only -
    4 yield, dyieldDtemp, dyieldDeqps, stateNew )
    C
    include 'vaba_param.inc'
    C
    dimension props(nprops), tempOld(nblock), tempNew(nblock),
    1 fieldOld(nblock,nfieldv), fieldNew(nblock,nfieldv),
    2 stateOld(nblock,nstatev), eqps(nblock), eqpsRate(nblock),
    3 yield(nblock), dyieldDtemp(nblock), dyieldDeqps(nblock,2),
    4 stateNew(nblock,nstatev), jElem(nblock)
    C
    C dyieldDeqps(i,1) = derivative of yield stress w.r.t. the plastic equivalent strain
    C dyieldDeqps(i,2) = derivative of yield stress w.r.t. the plastic equivalent strain-rate
    C
    double precision :: Ep, Epdot,T, pn, pm
    C
    integer i
    C
    character*80 cmname
    C
    real, parameter :: PA= 782.7d0, PB= 498.4d0, PC= 0.028d0,
    1 Tm= 1600.d0, Tref= 20.d0, Epdot0=0.001d0, small = 0.00000001d0
    C
    pn = props(1)
    pm = props(2)
    C
    C PA , PB are in N/mm^2 and Epdot0 is in 1/msec
    C Tm , Tref are in C
    C PC, PD, pn, pm are dimensionless constant
    C
    do 100 i = 1, nblock
    C
    Ep = small + eqps(i)
    Epdot = small + eqpsRate(i)
    T = tempNew(i)
    C
    yield(i) = (PA + Ep**pn*PB)*(1 - ((T - Tref)/
    1 (Tm - Tref))**pm)*(1 + PC*Log(Epdot/Epdot0))
    C
    dyieldDeqps(i,1) = Ep**(-1 + pn)*PB*pn*(1 - ((T - Tref)/
    1 (Tm - Tref))**pm)*(1 + PC*Log(Epdot/Epdot0))
    C
    dyieldDeqps(i,2) = ((PA +Ep**pn*PB)*PC*
    1 (1 -((T - Tref)/(Tm - Tref))**pm))/Epdot
    C
    dyieldDtemp(i) = ((PA + Ep**pn*PB)*
    1 (1 + PC*Log(Epdot/Epdot0)))/(Tref-Tm)
    C
    100 continue
    C
    return
    end

  • #2
    I don't have much experience with vuhard subroutines. Perhaps someone else can provide more feedback.

    -Jorgen
    Jorgen Bergstrom, Ph.D. PolymerFEM Administrator

    Comment


    • #3
      Okay. But thanks for your concern sir

      Comment


      • #4
        Dear Jayanta,

        May I ask you please let me know how could solve this problem? Actually, I have the same problem to write my VUHARD for
        JOHNSON-COOK model.

        hope to hear from your side.

        Regards,
        Hassan

        Comment


        • #5
          Hi, May I know how you solved the problem?

          Comment

          Working...
          X