CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

Laval Nozzle sonicFoam inlet and outlet bc

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree5Likes
  • 1 Post By BernhardGrieser
  • 1 Post By pg22
  • 1 Post By statesman
  • 2 Post By pg22

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   June 18, 2010, 11:46
Default Laval Nozzle sonicFoam inlet and outlet bc
  #1
Member
 
Bernhard Grieser
Join Date: Mar 2010
Location: Zurich, Switzerland
Posts: 30
Rep Power: 16
BernhardGrieser is on a distinguished road
I've been trying to run a Laval nozzle in OpenFOAM with bc settings displayed below. The nozzle is designed such that an incoming subsonic flow of inlet conditions (indexed with "1") is being accelerated to M2=1.3 (exit Mach number) without experiencing any shocks in the diverging part.
T1=420 K
p1=1,0976 Pa (static pressure)
u1=246.4 m/s
kappa=1.4 (isentropic coefficient of air)
M1=0.6 (Mach number)

Unfortunately the inlet velocity is decreasing after a few time steps with sonicFoam, so I cannot guarantee the imposed Mach number of 0.6 at the entry. Velocity quickly falls down to Mach 0.4 where it keeps its level. Apart from that the solution looks quite well, with the flow being choked at the smallest area.

Can someone please have a quick look at my bc settings, so I can solve this issue? I am new to OpenFOAM, and this issue imposes quite a challenge.

I've shortened the following bc's down to just inlet and outlet patches (in case someone wonders where the walls have gone to):

Pressure:

internalField uniform 109000;

boundaryField

outlet
{
type waveTransmissive;
field p;
phi phi;
rho rho;
psi psi;
gamma 1.4;
fieldInf 100.0;
lInf 1;
value uniform 10000;
}

inlet
{
type totalPressure;
p0 uniform 140000; <- Is that the total pressure?
U U;
phi phi;
rho none;
psi none;
gamma 1.4;
value uniform 109760; <- Is this static pressure?
}
}

Temperature:

internalField uniform 400;

boundaryField
{
inlet
{
type fixedValue;
value uniform 419.776;
}

outlet
{
type zeroGradient;
}
}

Velocity:

internalField uniform (246.4138 0 0);

boundaryField
{
inlet
{
type pressureInletOutletVelocity;
phi phi;
value uniform (246.4138 0 0);
}

outlet
{
type zeroGradient;
}
}

Thank you very much,
Bernie
BernhardGrieser is offline   Reply With Quote

Old   June 24, 2010, 12:39
Default
  #2
New Member
 
Paul Garlick
Join Date: Mar 2009
Location: Bournemouth, UK
Posts: 27
Rep Power: 17
pg22 is on a distinguished road
One thought; the waveTransmissive boundary condition on the outlet overspecifies the case. The imposed pressure will have the effect of reducing the outlet Mach number.

If the flow is genuinely supersonic then the pressure should be extrapolated at the outlet. This can be achieved by setting the outlet pressure BC to zeroGradient.

Paul.
pg22 is offline   Reply With Quote

Old   June 25, 2010, 03:24
Default
  #3
Member
 
Bernhard Grieser
Join Date: Mar 2010
Location: Zurich, Switzerland
Posts: 30
Rep Power: 16
BernhardGrieser is on a distinguished road
Thank you Paul! I will try it out and post my results.
Bernie
BernhardGrieser is offline   Reply With Quote

Old   June 25, 2010, 06:49
Default
  #4
Member
 
Bernhard Grieser
Join Date: Mar 2010
Location: Zurich, Switzerland
Posts: 30
Rep Power: 16
BernhardGrieser is on a distinguished road
Now that I've changed the pressure outlet bc from waveTransmissive to zeroGradient, the flow doesn't choke any more. Since it's also not reaching the desired Mach number of 0.6 at the inlet, I probably have to change my inlet conditions as well. Shortly after starting the calculation the converging part of the nozzle seems to slow down the upstream flow from Mach 0.6 to 0.4. Do you have an idea how I can keep the initial flow field at the inlet constant? FYI:The inlet section of my flow field is of the same cross section area as the inlet of the nozzle.

Thank you for helping me out,
Bernie
BernhardGrieser is offline   Reply With Quote

Old   June 25, 2010, 08:53
Default
  #5
New Member
 
Paul Garlick
Join Date: Mar 2009
Location: Bournemouth, UK
Posts: 27
Rep Power: 17
pg22 is on a distinguished road
You mentioned above that static pressure and velocity are known at the inlet, so you can use these values directly. There is no need to use the totalPressure BC; instead use fixedValue;

inlet
{
type fixedValue;
value uniform 10976;
}

Also, for velocity;

inlet
{
type fixedValue;
value uniform (246.4 0 0);
}

This will fix the inlet Mach number. The downstream conditions will then be determined by the geometry of the nozzle.

Paul.
pg22 is offline   Reply With Quote

Old   July 12, 2010, 04:19
Default
  #6
Member
 
Bernhard Grieser
Join Date: Mar 2010
Location: Zurich, Switzerland
Posts: 30
Rep Power: 16
BernhardGrieser is on a distinguished road
Thanks again, Paul! Changing the inlet bcs to fixedValue and keeping the outlet bcs zeroGradient results in the following:

Right after starting the calculation Mach Number is reached in the smallest area. Unfortunately also the velocity in the very inlet part increases infinitely. Obviously the kinetic energy of the incoming fluid doesn't get transferred downstream into the Laval nozzle (with settings as described above). Instead also pressure builds up heavily in that very first inlet region (only there!).

Do you know why?

__________________________________________________ ____________________
(I'll be out of office for the next ten days, so I won't be able to reply to new posts right away)
jbliu2015 likes this.
BernhardGrieser is offline   Reply With Quote

Old   July 12, 2010, 06:07
Default
  #7
New Member
 
Paul Garlick
Join Date: Mar 2009
Location: Bournemouth, UK
Posts: 27
Rep Power: 17
pg22 is on a distinguished road
Two ideas:

i) check the maximum Courant number for the flow. This should be no higher than approx. 0.5 but may need to be as low as 0.05 in the early stages of the calculation. Adjust deltaT if necessary.

ii) swap solvers; rhoCentralFoam is good for high velocity flows. The Ladenburg60psi tutorial is a good place to start.

Paul.
jbliu2015 likes this.
pg22 is offline   Reply With Quote

Old   August 2, 2010, 21:47
Default
  #8
New Member
 
Join Date: Jun 2009
Posts: 8
Rep Power: 16
statesman is on a distinguished road
Dear Paul ,
I ve been using rhoCentralFoam for quite a long time and am quite satisfied with it . I am trying to simulate a free underexpnaded jet like the one in Ladenberg test case.
The only difference is that my domain includes both nozzle geomentry and the expansion chamber [ as opposed to the Ladenberg case which only includes the latter] .

So now case I am having trouble with inlet boundary conditions to represent the subsonic reservoir conditions . The inlet is maintained at atmospheric conditions , while outlet is 2500 Pa. According to Anderson's CFD text for subsonic inlets P and T is to be specified and U is allowed to float.

If I specify internalField = outlet Pressure my solution crashes. The code runs stable for an internalField value > 15000 Pa only . But the solution is not accurate . Could you suggest me the ideal set of BC's and internalField to represent conditions adequately . Ill post p , T U files here.

P
Code:
internalField   uniform 15000;

boundaryField
{
    outlet
    {
        type            nonReflective;
        fieldInf        uniform 2533.33;
        linf            1;
        gamma           1.4;
        phi             phi;
        psi             psi;
        refGradient     uniform 0;
        value           uniform 2533.33;
    }
    wall
    {
        type            slip;
    }
    inlet
    {
        type            totalPressure;
        U               U;
        phi             phi;
        rho             none;
        psi             none;
        gamma           1.4;
        p0              uniform 101325;
        value           uniform 101325;
    }
T
Code:
internalField   uniform 298;

boundaryField
{
    outlet
    {
        type            zeroGradient;
    }
    wall
    {
        type            slip;
    }
    inlet
    {
           type            fixedValue;
        value           uniform 298;
        
    }
U
Code:
internalField   uniform (5 0 0);

boundaryField
{
    outlet
    {
        type            zeroGradient;
	value uniform (5 0 0 );
    }
    wall
    {
        type            slip;
    }
    inlet
    {
        type            zeroGradient;
value uniform (5 0 0 );

    }
Thank you very much
jbliu2015 likes this.
statesman is offline   Reply With Quote

Old   August 6, 2010, 09:40
Default
  #9
New Member
 
Paul Garlick
Join Date: Mar 2009
Location: Bournemouth, UK
Posts: 27
Rep Power: 17
pg22 is on a distinguished road
Dear Statesman,
The boundary conditions are reasonable, although I don't recognise the nonReflective boundary type (which version of OF are you using?). One minor point is that the type 'zeroGradient' does not require a value, so for U the 'value uniform (5 0 0)' line should be deleted.

However, there could be problems with the extreme operating condition. Certainly there will be very rapid transients inside the nozzle if the initial internal pressure is set to the very low external pressure. To capture this start-up period would require very small time steps, perhaps a max. Courant number in the region of 0.02.

One idea that would help is to set the initial pressure inside the nozzle to equal the inlet pressure. The internal flow would then remain subsonic during the start-up period.

Also, check the Knudsen number for this flow (should be << 1). Very rapid flows at very low pressures approach the limit of the continuum hypothesis (on which CFD is based). It may be that the flow is 'rarified' and the conservation laws are not applicable.

Paul.
v199ah and jbliu2015 like this.
pg22 is offline   Reply With Quote

Old   August 14, 2010, 22:35
Default
  #10
New Member
 
Join Date: Jun 2009
Posts: 8
Rep Power: 16
statesman is on a distinguished road
Paul ,

Thank you very much for your reply , Sorry for replying a little late . Your post has been very helpful . I am running cases by lowering the Courant Number to ensure stability. Another tool that I m trying is to initializing the solution by the internal field obtained by a stable steady state solution of a lower pressure ratio .

nonReflective BC are almost the same as waveTransmissive. Both are based on a paper by Poinsot , Lele.

Its interesting that you would mention the Knudsen number for the gas, as in the future ill be studying flow of Micron-sized particles in rarefied gas; the flow of whom lies in the raredied regime . I did run cases for such a low pressure in a domain representing only the expansion chamber i.e. sans the nozzle. That solution did converge successfully. So maybe its the nozzle geometry that complicates things.
However I shall update you with my experience .
statesman is offline   Reply With Quote

Old   February 16, 2017, 08:45
Default
  #11
New Member
 
Marvin
Join Date: Dec 2016
Posts: 3
Rep Power: 9
Flukato is on a distinguished road
I had the same Problems before with the solver crashing.
Solved that one with the setFields Option, where I set the pressure until the nozzle to the Inlet pressure and behind to the Outlet pressure.
Flukato is offline   Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Stability Problem with sonicFoam for Nozzle Flow Julian K. OpenFOAM 3 July 11, 2016 09:14
ATTENTION! Reliability problems in CFX 5.7 Joseph CFX 14 April 20, 2010 16:45
VOF Outlet boundary condition in cfd - ace JM Main CFD Forum 0 December 15, 2006 09:07
compressible flow in a counterflow nozzle d.vamsidhar FLUENT 0 November 24, 2005 02:45
what the result is negatif pressure at inlet chong chee nan FLUENT 0 December 29, 2001 06:13


All times are GMT -4. The time now is 04:50.