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

How to form hydraulic jump at specified location with interFoam

Register Blogs Community New Posts Updated Threads Search

Like Tree4Likes
  • 1 Post By Santiago
  • 1 Post By Santiago
  • 1 Post By indy07cz
  • 1 Post By luccy

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   September 6, 2021, 03:55
Default How to form hydraulic jump at specified location with interFoam
  #1
Member
 
Join Date: Apr 2015
Posts: 33
Rep Power: 11
luccy is on a distinguished road
hello everyone,
I'm simulating a free hydraulic jump with InterFoam. In the laboratory model, the jump occurs at a distance of one meter from the gate, but in the simulation, despite changes in various parameters such as mesh and inlet velocity, boundary condition and etc, this does not happen and the jump occurs immediately after the gate. Can anyone help me?
I will appreciate that,
I attached the geometry of the laboratory model. In the geometry of the simulation, I've ignored the tank.
Attached Images
File Type: png Untitled.png (177.8 KB, 64 views)
luccy is offline   Reply With Quote

Old   September 7, 2021, 04:25
Default
  #2
Senior Member
 
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 15
Santiago is on a distinguished road
Quote:
Originally Posted by luccy View Post
hello everyone,
I'm simulating a free hydraulic jump with InterFoam. In the laboratory model, the jump occurs at a distance of one meter from the gate, but in the simulation, despite changes in various parameters such as mesh and inlet velocity, boundary condition and etc, this does not happen and the jump occurs immediately after the gate. Can anyone help me?
I will appreciate that,
I attached the geometry of the laboratory model. In the geometry of the simulation, I've ignored the tank.
A free hydraulic jump is only mediated by its boundary conditions, that is, the location of the jump depends on the impulse at the inlet minus the impulse at the outlet, plus the force difference due to pressure at both inlet/outlet, AND FRICTION. The problem is that the sequent height given by belangér's formula may not be exactly what the code can resolve (the sequent depth can be lower or higher, a bit), hence your jump might either drown or just not happen if you enforce Belanger's depth on the outlet.

A first suggestion is to put a weir at the downstream section, with the height necessary to produce the critical height above it. The calculation of the critical height is an exact measure (not its location, though) so you can use that as a reference on how good the simulation is running, in terms of turbulence/physics. From there, it's a matter of patience: you need to test turbulence models and different schemes for the divergence operator. Excessive dissipation will produce spurious recirculations on the bottom of the channel, below the roller. Be particularly mindful of using "Bouyancy aware" URANS models. Wall models also play an important role here, particularly with the location of the jump.

IMPORTANT NOTE: Inertial-scale processes happen on the cross normal direction of the jump, hence it is necessary to run 3D (or 2.5D) simulations. In 2D you'll see spurious behaviour and a Richardson Analysis will show instability. You can try it out...
Question: What version/flavor of OpenFOAM you're using?
luccy likes this.
Santiago is offline   Reply With Quote

Old   September 10, 2021, 07:39
Default
  #3
Senior Member
 
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 15
Santiago is on a distinguished road
Quote:
Originally Posted by luccy View Post
hello everyone,
I'm simulating a free hydraulic jump with InterFoam. In the laboratory model, the jump occurs at a distance of one meter from the gate, but in the simulation, despite changes in various parameters such as mesh and inlet velocity, boundary condition and etc, this does not happen and the jump occurs immediately after the gate. Can anyone help me?
I will appreciate that,
I attached the geometry of the laboratory model. In the geometry of the simulation, I've ignored the tank.

A URANS classic hydraulic jump at Fr = 8.5. On top an instantaneous snapshot, and on the bottom the mean fields.

https://imgur.com/NnsyGNt
Santiago is offline   Reply With Quote

Old   September 10, 2021, 09:27
Default
  #4
New Member
 
invadoria's Avatar
 
Ender Demirel
Join Date: Jun 2009
Location: Turkey
Posts: 20
Rep Power: 16
invadoria is on a distinguished road
This may be associated with outflow boundary conditions since higher tail water depth moves the hydraulic jump to the control structure.
invadoria is offline   Reply With Quote

Old   September 12, 2021, 03:22
Default
  #5
Member
 
Join Date: Apr 2015
Posts: 33
Rep Power: 11
luccy is on a distinguished road
[QUOTE=Santiago;811754]
thank you for replying, I am using OpenFOAM 8,
One suggestion for me was to use " Interisofoam" at OpenFoam 18.12 because the "interFoam" does not work well for hydraulic jumping and also to avoid bed roughness. Do you have an opinion on this?
luccy is offline   Reply With Quote

Old   September 13, 2021, 03:55
Default
  #6
Senior Member
 
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 15
Santiago is on a distinguished road
[QUOTE=luccy;812023]
Quote:
Originally Posted by Santiago View Post
thank you for replying, I am using OpenFOAM 8,
One suggestion for me was to use " Interisofoam" at OpenFoam 18.12 because the "interFoam" does not work well for hydraulic jumping and also to avoid bed roughness. Do you have an opinion on this?
Yes, it is a terrible suggestion. 99.9999% of the problems people experience with interFoam has nothing to do with the interface reconstruction scheme. The simulation I have shown above uses MULES; and verification is quite satisfactory.

MY SUGGESTION: Choose a "flavor" of OpenFOAM, and stick to it.
luccy likes this.
Santiago is offline   Reply With Quote

Old   September 13, 2021, 15:43
Default
  #7
Member
 
Honza Höll
Join Date: Mar 2016
Location: Brno, CZ
Posts: 34
Rep Power: 10
indy07cz is on a distinguished road
Also recommend you to choose right turbulent model. I performed this simulation with interFoam few moths ago and different turbulent model gives different results. For me most stable was kEpsilon. Also consider 2.5D and 3D approach. There are tons of articles around web.
luccy likes this.
indy07cz is offline   Reply With Quote

Old   October 10, 2021, 12:12
Default a question about the link you shared
  #8
Member
 
Join Date: Apr 2015
Posts: 33
Rep Power: 11
luccy is on a distinguished road
Quote:
Originally Posted by Santiago View Post
A URANS classic hydraulic jump at Fr = 8.5. On top an instantaneous snapshot, and on the bottom the mean fields.

https://imgur.com/NnsyGNt
Dear Santiago

https://imgur.com/NnsyGNt

Whose simulation was this? was it yours?
luccy is offline   Reply With Quote

Old   October 11, 2021, 07:40
Default
  #9
Senior Member
 
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 15
Santiago is on a distinguished road
Quote:
Originally Posted by luccy View Post
Dear Santiago

https://imgur.com/NnsyGNt

Whose simulation was this? was it yours?
Hahaha, yes, of course is mine. Done in OpenFOAM, I swear.
Santiago is offline   Reply With Quote

Old   October 11, 2021, 14:31
Default
  #10
Member
 
Join Date: Apr 2015
Posts: 33
Rep Power: 11
luccy is on a distinguished road
Quote:
Originally Posted by Santiago View Post
Hahaha, yes, of course is mine. Done in OpenFOAM, I swear.
Please don't take any offense. I wanted to know if it is possible for you to send me the boundary conditions of this simulation.
thank you
luccy is offline   Reply With Quote

Old   October 12, 2021, 03:08
Default
  #11
Senior Member
 
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 15
Santiago is on a distinguished road
Quote:
Originally Posted by luccy View Post
Please don't take any offense. I wanted to know if it is possible for you to send me the boundary conditions of this simulation.
thank you
None taken... I just found your incredulity a bit, ehm, refreshing.

Anyway, I assume you read my previous post where I talked about the importance of over-dissipation and the reason for the dremple. But if you think the problem is with your BCs, then of course I can show you mine.

U:

Code:
boundaryField
{
    atmosphere
    {
        type            pressureInletOutletVelocity;
        value           uniform (0 0 0);
    }
    inlet
    {
       // meaningless to you, just fixedValue
        type          powerLawVelocity;
	maxValue	4.3;
	n		(1 0 0);
	y		(0 1 0);
	delta		0.02;
        value         uniform (0 0 0);
    }
    outlet
    {
        type          inletOutlet;
	inletValue	uniform (0 0 0);
        value         uniform (0 0 0);
    }
    wallsBottom
    {
        type            noSlipWall;
        value           uniform (0 0 0);
    }
    wallsSides
    {
        type            noSlipWall;
        value           uniform (0 0 0);
    }
}
and pd:

Code:
boundaryField
{
    atmosphere
    {
        type            entrainmentPressure;
        rho             rho;
        psi              none;
        gamma       1;
        p0              uniform 0;
        value          uniform 0;
    }
    outlet
    {

	type           totalPressure;
        rho            rho;
        psi             none;
        gamma      1;
        p0             uniform 0;
	value         uniform 0;
    }
    wallsBottom
    {
        type            buoyantPressure;
    }
    wallsSides
    {
        type            buoyantPressure;
    }
    inlet
    {
        type            fixedFluxPressure;
    }
}
I use a blended k-e/k-omega model that I implemented, so the BCs for such will be useless for you. I can tell you, however, that I do use wall models for nut:

Code:
    wallsBottom
    {
        type            nutURoughWallFunction;
	roughnessHeight 	<value here>;
	roughnessConstant 0.5;
	roughnessFactor 	1;
        value           uniform 0;
    }
Santiago is offline   Reply With Quote

Old   October 15, 2021, 06:24
Default
  #12
Member
 
Join Date: Apr 2015
Posts: 33
Rep Power: 11
luccy is on a distinguished road
Quote:
Originally Posted by Santiago View Post
None taken... I just found your incredulity a bit, ehm, refreshing.

Anyway, I assume you read my previous post where I talked about the importance of over-dissipation and the reason for the dremple. But if you think the problem is with your BCs, then of course I can show you mine.

U:

Code:
boundaryField
{
    atmosphere
    {
        type            pressureInletOutletVelocity;
        value           uniform (0 0 0);
    }
    inlet
    {
       // meaningless to you, just fixedValue
        type          powerLawVelocity;
	maxValue	4.3;
	n		(1 0 0);
	y		(0 1 0);
	delta		0.02;
        value         uniform (0 0 0);
    }
    outlet
    {
        type          inletOutlet;
	inletValue	uniform (0 0 0);
        value         uniform (0 0 0);
    }
    wallsBottom
    {
        type            noSlipWall;
        value           uniform (0 0 0);
    }
    wallsSides
    {
        type            noSlipWall;
        value           uniform (0 0 0);
    }
}
and pd:

Code:
boundaryField
{
    atmosphere
    {
        type            entrainmentPressure;
        rho             rho;
        psi              none;
        gamma       1;
        p0              uniform 0;
        value          uniform 0;
    }
    outlet
    {

	type           totalPressure;
        rho            rho;
        psi             none;
        gamma      1;
        p0             uniform 0;
	value         uniform 0;
    }
    wallsBottom
    {
        type            buoyantPressure;
    }
    wallsSides
    {
        type            buoyantPressure;
    }
    inlet
    {
        type            fixedFluxPressure;
    }
}
I use a blended k-e/k-omega model that I implemented, so the BCs for such will be useless for you. I can tell you, however, that I do use wall models for nut:

Code:
    wallsBottom
    {
        type            nutURoughWallFunction;
	roughnessHeight 	<value here>;
	roughnessConstant 0.5;
	roughnessFactor 	1;
        value           uniform 0;
    }
No, I just wanted to know if that simulation is yours I can get the boundary condition code from you, anyway thank you.
I have another question about the inlet conditions. I want to set the boundary conditions as a velocity profile at the inlet, but I do not have access to the equation in three dimensions. Can you help with that? Also, in my open foam, there is no powerLawVelocity condition. Please pay attention to the attached photo.
Attached Images
File Type: jpg ljkhklk.jpg (27.3 KB, 11 views)
mahdi_izadi likes this.
luccy is offline   Reply With Quote

Old   October 17, 2021, 13:04
Default
  #13
Member
 
Join Date: Apr 2015
Posts: 33
Rep Power: 11
luccy is on a distinguished road
Quote:
Originally Posted by Santiago View Post
A free hydraulic jump is only mediated by its boundary conditions, that is, the location of the jump depends on the impulse at the inlet minus the impulse at the outlet, plus the force difference due to pressure at both inlet/outlet, AND FRICTION. The problem is that the sequent height given by belangér's formula may not be exactly what the code can resolve (the sequent depth can be lower or higher, a bit), hence your jump might either drown or just not happen if you enforce Belanger's depth on the outlet.

A first suggestion is to put a weir at the downstream section, with the height necessary to produce the critical height above it. The calculation of the critical height is an exact measure (not its location, though) so you can use that as a reference on how good the simulation is running, in terms of turbulence/physics. From there, it's a matter of patience: you need to test turbulence models and different schemes for the divergence operator. Excessive dissipation will produce spurious recirculations on the bottom of the channel, below the roller. Be particularly mindful of using "Bouyancy aware" URANS models. Wall models also play an important role here, particularly with the location of the jump.

IMPORTANT NOTE: Inertial-scale processes happen on the cross normal direction of the jump, hence it is necessary to run 3D (or 2.5D) simulations. In 2D you'll see spurious behaviour and a Richardson Analysis will show instability. You can try it out...
Question: What version/flavor of OpenFOAM you're using?
How did you get the required height for Weir? By trial and error?
luccy is offline   Reply With Quote

Old   October 18, 2021, 05:33
Default
  #14
Senior Member
 
Santiago Lopez Castano
Join Date: Nov 2012
Posts: 354
Rep Power: 15
Santiago is on a distinguished road
Quote:
Originally Posted by luccy View Post
How did you get the required height for Weir? By trial and error?
No. The weir is a hydraulic control, hence you can calculate by means of Bernoulli's theorem the height of the weir.
Santiago is offline   Reply With Quote

Old   October 19, 2021, 05:09
Default
  #15
Member
 
Join Date: Apr 2015
Posts: 33
Rep Power: 11
luccy is on a distinguished road
Quote:
Originally Posted by Santiago View Post
No. The weir is a hydraulic control, hence you can calculate by means of Bernoulli's theorem the height of the weir.
what about the above question?do you have any idea?
I have another question about the inlet conditions. I want to set the boundary conditions as a velocity profile at the inlet, but I do not have access to the equation in three dimensions. Can you help with that? Also, in my open foam, there is no powerLawVelocity condition. Please pay attention to the attached photo.
luccy is offline   Reply With Quote

Reply


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
What are strong and weak form of conservative form granzer Main CFD Forum 3 July 3, 2019 11:25
Having various problems simulating a multiphase channel flow mf3 OpenFOAM Running, Solving & CFD 13 November 15, 2016 06:57
Stationary hydraulic jump - interFoam Bessy OpenFOAM Running, Solving & CFD 0 September 6, 2015 12:40
How to form hydraulic jump at specified location mojtabaivi FLOW-3D 5 August 13, 2015 04:22
Internal hydraulic jump taraksahoo FLUENT 0 February 20, 2014 01:46


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