Homogeneous reactions do not occur in CGP simulation

Hello Everyone!

I am still using MFiX for simulation on ammonia combustion. Recently, I conducted CGP simulation using a chemical reaction model containing 32 elementary reactions (set as 64 reactions in MFiX).
However, only the following three reactions occurred during the simulation process (which is known by monitoring the maximum chemical reaction rate in the domain):

O2→2O
NH3→NH2+H
N2+NH3→NNH+NH2

Except for these three initial reactions, the maximum values of all other reaction rates in the domain remain at 0, which prevents ammonia from igniting during the simulation process.

I made the following attempts:
a. Using chemical models containing 196 or 4 reactions
b. Changing the multiphase flow model to PIC
c. Adjusting mesh size and CGP statistical weights
However, none of these operations have solved this problem, and most of the homogeneous reactions have still not occurred.

It is strange that if the particles are removed and only the single-phase flow of the premixed gas is calculated, all reactions could proceed and the simulation could show the ignition of ammonia.

So why homogeneous reactions do not occurr? I have attached my case file. I sincerely hope to receive advice on this issue, thank you very much!
Ammonia_3D.mfx (43.5 KB)
usr_properties.f (43.9 KB)
usr_rates.f (25.7 KB)

I didn’t try running it, but looking at your inputs, is the temperature high enough for the reactions? You are bringing in NH3 with sand at 473.15K how hot is the gas getting to?

I have been playing with NH3 combustion with cantera, and I can’t get NH3 to combust in a IdealGasConstPressureReactor at 473K with GRI mech. I have to increase the temperature to 1000K.

Thank you for your reply!

In fact, I have tried to modify the inlet temperature to 1173.15K (as the initial temperature in the bed), but it did not work…

We’re looking into this issue. One thing that would help is to have a simplified version with the minimum possible number of reactions.

I also noticed a bug while loading the file:

Loading Ammonia_3D.mfx from /tmp/test
Model: MFiX-CGP
usr_mug
mu_g_model = ‘mu_g_usr’
Warning: unknown viscosity model mu_g_usr, setting SUTHERLAND
mu_g_model = ‘SUTHERLAND’

The strikethrough on usr_mug means the key is being unset. The keywords for viscosity have changed, and the code that loads the project is trying to migrate to the new keys. The old key was usr_mug and the new key is mu_g_model. Then the check in the GUI incorrectly detected an invalid setting and set it to the default SUTHERLAND. I will fix this for the next release.
We will follow up separately on why the reaction does not proceed, I don’t think it’s related to this bug.

– Charles

Thank you for your reply!

I tried a case that only contained four reactions:

NH3+O2→NO+H2O+0.5H2

NH3+NO→N2+H2O+0.5H2

NH3→0.5N2+1.5H2

H2+0.5O2→H2O

However, when I monitor the reaction rate, only the first and third reaction occur, and the rates of the second and fourth reaction are both 0. This is the file:

Only_four_reactions.tar (12.0 KB)

I will also try to continue to solve this problem. Thank you very much again!

Note, that’s a RAR file not tar as the name indicates. I was able to extract it anyhow but in future please use zip format if possible.

OK, I got it. Thank you.

Hi. I tried running the simplified case with 4 reactions.
I set up 4 monitors, for MAX reaction rate across the entire domain.

I see that all 4 reactions are proceeding, as this plot shows:

Note that this simulation runs extremely slowly. I see that you are using 120 core DMP, I ran this locally on my test machine with 8 cores and it took almost 10 minutes of realtime to reach 3ms of simulation time


I’m not sure why the simulation is so slow, perhaps you could try a coarser grid or loosen some of the convergence criteria.

Here’s the modified .mfx file I used:
Ammonia_3D.mfx (21.2 KB)

Thank you for your help, and I think maybe viscosity affects the reaction and makes the reaction not occur.

I update the MFiX to 24.1.1 (I used 23.4 before), and I set the viscosity to the default SUTHERLAND. I tried the case of 4 reactions and 32 reactions, and they all proceed normally, so I will do more works on the viscosity.

By the way, regarding the bug you mentioned earlier about viscosity udf, is this bug caused by opening a lower version mfx file in a higher version of MFiX? If I want to introduce viscosity UDF in 24.1.1, does it mean that I have to set the mfx file in 24.1.1 and cannot directly copy the lower version of the mfx file?

Thank you for you help again!

The keywords for specifying viscosity UDF changed, and MFiX 24 tries to migrate the older setting to the newer one. The old way was to set keyword usr_mug to True, the new way is to set mu_g_model=MU_G_USR.
However there is a small bug in this conversion code. Look for the messages in the MFiX message window while loading, you will see the changes applied to the keywords.

This will be fixed in the next release, in the meanwhile you can either make sure the viscosity setting is correct after loading the file (reset viscosity in Fluid properties panel), or if you want to fix 24.1.1 in place, you can apply the following patch:
patch.txt (1.6 KB)

Sorry for the inconvenience.

OK, I got it. Thank you for your reply!