Fluids

Fluids

UDF DEFINE_DPM_PROPERTY Heat Capacity Cp

    • mardott
      Subscriber

      Hello 🙂

      I want to assign a temperature dependent heat capacity to my DPM particles.
      I've therefore been trying with the following UDF:

      DEFINE_DPM_PROPERTY(DPMaterial_Cp, c, t, tp, T)
      {
      #if !RP_HOST

      real Cp; /* Heat Capacity - Cp J/(kgK) */

      if (NULLP(tp->pp) || NULLP(TP_CELL_THREAD(tp)))
      Cp = 320; /* J/(kgK) initial value for T = 1100 */

      else
      Cp = 450.60 - 116.10*pow(10.,-3.)*T - 166.79*pow(10.,5.)*pow(T,-2.);

      tp->enthalpy = Cp * (T - T_REF);

      return Cp;

      #endif
      }

      THe UDF compiles, and the DPM iterates for a few times, but then the simulation crashes (only when this UDF is implemented).

      What am I doing wrong?

    • Rob
      Ansys Employee

      Check the value of cp that's being returned for the temperature range in your model. Plot cp with T using the above relationship, how does it look? 

    • mardott
      Subscriber

      So, what I've noticed is that, for some reason, my DPM temperature becomes unphysically low in few points:

      This happens even if the flow temperature makes sense

      Leading to what it probably is the cause of the crash: a negative Cp (but for the range of T that I should have it would surely be positve)

      The question now is: how is it possible that my particles get such a low temperature in some sparse points?

    • Rob
      Ansys Employee

      Depending on the mass of the parcel and cell size if you evaporate quickly the DPM source terms can become high, and that can cause problems with the flow (cell) values.  How many parcels are you releasing, and how does the mass (and volume) fraction look? 

Viewing 3 reply threads
  • You must be logged in to reply to this topic.