CFD Online Discussion Forums

CFD Online Discussion Forums (
-   FLUENT (
-   -   how to trigger combustion instability in fluent (

zhongzhiyuan February 26, 2012 03:49

how to trigger combustion instability in fluent
Hi all,

Now I am doing combustion in a rijke tube and I follow the work of
C.-C. HANTSCHK AND D. VORTMEYER (NUMERICAL SIMULATION OF SELF-EXCITED THERMOACOUSTIC INSTABILITIES IN A RIJKE TUBE, 1999). In their work, they mentioned that a pressure disturbance needs to be imposed to find the combustion instability ( the limit cylce). However, I cannot find the limit cycle even if I added this initial disturbance.

I wonder if anyone knows how to trigger the combustion instability in a rijke tube and could give me some suggestions to find the limit cycle.

Thanks for many suggestions

best regards,
Zhong Zhiyuan

rajk April 4, 2012 12:49

how to trigger combustion instability in fluent Reply to Thread
Hi zhongzhiyuan,

I am also following the same work as you mentioned. I am also not getting the limit cycle. I am doing a complete transient simulation starting with P(inlet)=0.5 pa and P(outlet)=0 pa and reach upto a steady state. Then I apply the initial disturbance by changing P(inlet)=30 pa and running it for a small time. Then I change the P(inlet) to 0.5 pa. But I am not getting any oscillations.

Kindly tell me what is your approach?


zhongzhiyuan April 4, 2012 22:34

1 Attachment(s)
Hi rajk:

I am still working on that. Since I have a different gemotry, I do not know if I can find the limit-cycle or not. If you simulate the same geometry (straight rijke tube), I think you should follow their settings and simulation procedure. Besides, according to other paper, the second order method for both spacial and time discretization should be used and the time step size should be small enough (less than 5e-5) with enough time step (let's say 2e5, 10s, or longer) because sometimes the onset of the osccillation takes some time.

Besides, I have repeated their work ( the 3 mm long rijke tube) by adding a sine pressure flucuation at the outlet. With it, I can find the limit-cycle easily with a time step size 1e-4 ( see the pic). Now I am doing different geometry and I am trying to find the self-excited osccillation ( without artificial perturbation). I will give it a long time to run to see what happen.

I hope this can help you and tell me if you have any finding.

Best regards,
Zhong Zhi Yuan

zhongzhiyuan April 4, 2012 22:38

besides, PISO velocity-pressure coupling should be used

rajk April 5, 2012 10:32

how to trigger combustion instability in fluent
Hello Zhong Zhi Yuan,

Your above reply was really helpful. Thanks for that. I have a query on your horizontal rijke tube with artificial perturbation.

However, I am not getting the pressure fluctuations as seen in your image even with giving sinusoidal pressure fluctuation(p=30 pa) at outlet. Even the residuals dont converge after some time. I really dont understand when the vortmeyer paper says "If a small pressure disturbance (p=30 Pa) is imposed on the obtained steady state solution the system becomes unstable and self-excited thermoacoustic oscillations evolve".

Could you please tell me what are your magnitude for the pressure fluctuation(perturbation) at outlet and its time period. For how long you give this perturbation? I hope you have written a udf for this.

As for the self excited oscillations, I am also working on one of them but that includes gravity(vertical rijke tube).


zhongzhiyuan April 5, 2012 23:09

Hi Raj:

For the articial perturbation, I think you should first compute the steady state and use it as the initial condition for unsteady, this will make the onset of osicillation faster. If you start with transient computation directly, it may take longer time and I have no experience about that. For the convergence, when you start the transient, sometimes it cannot converge within the set up iterations for each time step(20 iterations by default). However, I do not think its a problem because the residuals are almost satisfied the criteria. The magnitude of the perturbation I also use 30 pa at the outlet. The geometry I set is axissymmetry. I only apply the perturbation to 3 m long tube and I don't try the 1 m tube.

I think you are right with the initial perturbation mentioned in the paper and it is just the 30 pa at the outlet for some time and 0 pa after that.

Best regards,
Zhong Zhi Yuan

rajk April 7, 2012 05:29

how to trigger combustion instability in fluent Reply to Thread
1 Attachment(s)
Hello Zhong Zhi Yuan,

I am doing the horizontal rijke tube simulation of 3m. But the pressure oscillations seems to be decreasing in amplitude(see image attached). I haven't ran the simulation for long enough but I doubt that the pressure fluctuations will die out. Was this kind of thing happening in your simulation?


zhongzhiyuan April 8, 2012 03:04

Hi Raj:

I think you dont add a continuous sinusoidal pressure wave at outlet. Otherwise, you will have a continuous perturbation. You should use the UDF to add a gauge pressure like 30sin(2*pi*f*t) at the outlet and by this way I am sure you can have the limit-cycle except it is not the self-excited one.

And I have already successfully find the self-excited oscillation even in a different geometry by using the method I mentioned to you. Since I am working on a paper, it is not convenient for me to show you the results. But as I mentioned, the time step size and the running time is important. I use high performance computer (32 processors) to run 30 hours to see the onset of oscillations and another 10 other to saturated to the limit. Initially the perturbation added to the outlet (self-excited) does decrease and after long time starts onset.

So use more processors and parallel computing for your simulation and give some patience. I have been working on it for 5 month to get the expected results.

good luck

xebid November 29, 2012 00:24

Help with the UDF
Dear Users,
I am very new to Fluent, I know how to add a UDF but have no experience on how to write one in C. Could you please post your codes for the UDF to give sinusoidal pressure at the outlet. And also how long should I wait before I change the outlet pressure back to 0 . I am doing a steady calculation first and after completion switched to transient and do I start with with outlet pressure as the one in UDF ? And after how long I switch back to outlet pressure of 0.
And I will be very very thankful if one of you could post the UDF code. Please help me out.

zhongzhiyuan December 1, 2012 23:27

hi xebid:

here is an example for you:
/************************************************** ********************/
/* unsteady.c */
/* UDF for specifying a transient velocity profile boundary condition */
/************************************************** ********************/

#include "udf.h"

DEFINE_PROFILE(unsteady_velocity, thread, position)
face_t f;

begin_f_loop(f, thread)
real t = RP_Get_Real("flow-time");
F_PROFILE(f, thread, position) = 0.36 + 0.01*sin(477.*t);
end_f_loop(f, thread)

in fact, there are many example and tutorial online for you to learn how to use udf. you just need to write in text file and save it as c file. to change the outlet pressure, you only need to do it in fluent( change outlet gauge pressure to 0 after you running for a while.) if you want to learn more, we can have a look at my short paper about the fluent simulation following this link:


xebid December 2, 2012 00:18

Hi Zhong ,
Thank you for the code but I have the same geometry and ran steady first and then transient and then used all second order and PISO scheme . I did put step size to 1e-5 and upto 2e5 steps ran with sinusoidal Pout till like 8000 steps and swtiched to zero and I donot get instability. BUt my nesh is coarse can you give me tips please I have been running to a long long time but no onset of stability.

Kaixin December 2, 2012 23:06

Hello,everyone!I want to ask a question:how to compile a udf about Convection heat exchange between gas and solid ,Radiation heat exchange between wall and solid.I use fluent software to simulate a two-dimesion rotary kiln.I want to ask for help.Thank you for your reply.

zhongzhiyuan December 4, 2012 02:12

Hi Kaixin,

I do not have experience in using udf for this. However, we can set the coupled wall for heat exchange between fluid and gas in fluent. Radian can also be set in fluent boundary condition. this is much a easy way. Otherwise, if you use udf, you have to write the code correctly to loop our boundary elements for these purposes.

zhongzhiyuan December 4, 2012 02:18

Hi Xebid,

in my short paper, I have already given how I trigger the instability. if it is still not clear to you, you can find the reference paper to read in my paper. basically the idea is to introduce an initial disturbance (either velocity or pressure will do), and then let the fluent runs for the self-excited stability. of course, it should run for a while. just for your information, I will High Performance Computer to run this. meanwhile, we can check your boundary condition set and scheme you use.

All times are GMT -4. The time now is 07:09.