Fluids

Fluids

Implementing local chemical equilibrium in transient reactive flows (Fluent)

    • MarkusP
      Subscriber

      Dear community members,  


      I am currently trying to implement the local chemical equilibrium approach in a reactive transient Fluent simulation. Target is that both species transport equations and chemical equilibrium condition are fulfilled at the end of each time step, i.e. the species should be in local chemical equilibrium at any time.  


      My approaches up to now were the following:  


      1. Introduction of a very high linear relaxation source term into the species transport equations (using DEFINE_SOURCE), realized by the following steps:



      • Calculate equilibrium concentrations c_eq from current concentrations c.


      • Set the source terms in the species transport equations to k*(c_eq – c), where k is a rate constant (set to a very large value), c is the concentration and c_eq is the equilibrium concentration of the species being solved for.



      The idea was that the source term drives the concentrations to chemical equilibrium from one iteration to the next. However, chemical equilibrium was not fulfilled at the end of a time step, as c_eq is also a function of concentrations other than the one the respective source term applies to.


      2. Adjusting concentrations to their equilibrium values within each iteration (using DEFINE_ADJUST), realized by the following steps:



      • Calculate equilibrium concentrations c_eq from current concentrations c.


      • Set all concentrations c to their equilibrium values c_eq within each iteration (using DEFINE_ADJUST).



      My hope was to converge to values that fulfil both transport equations and equilibrium condition more and more with every iteration. However, this approach did not work either, as the values set in one iteration by DEFINE_ADJUST where not transferred to the next iteration.


      As my previous attempts unfortunately failed, I would have the following questions:  



      • Where do the problems with the approaches above result from?


      • Are there any other ways to implement local chemical equilibrium in a transient reactive Fluent simulation?



      Many thanks in advance for any help!  


      Best regards,
      Markus

    • DrAmine
      Ansys Employee

      Is the relax to chemical equilibrium feature not an option for you? You would require setting the equilibrium constraint which depends on the temperature gas constant and standard gibbs enthalpy at each iteration within a transient. Perhaps similar approach as in Fluent.? Good luck.

    • MarkusP
      Subscriber

      Amine, thank you for your reply!


      I am not sure if the "Relax to Chemical Equilibrium" feature ensures chemical equlibrium at the end of each time step (or just ensures that equlibrium is reached after enough time steps) - as far as I understand this option (from user guide), it does basically the same as my first approach.


      Furthermore, I would like to use this local equilibrium approach also for UDS transport equations (instead of species transport), where the "Relax to Chemical Equilibrium" feature is not available.


      Any other suggestions out there?


      Thanks,
      Markus

    • DrAmine
      Ansys Employee
      It is a relax and not set equal.
      That is why the first approach is the one which is usually used. For the second approach check if on demand use set what you want to set. Just a test.
Viewing 3 reply threads
  • You must be logged in to reply to this topic.