View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0002236||OpenFOAM||Bug||public||2016-09-06 07:28||2016-09-07 15:21|
|Summary||0002236: Compute crash when z coordinate is higher in interFoam|
|Description||I have two identical models, one has min. elevation of bottom at coordinate z = 0, another at z = 100. Water should flow from inflow to outflow, inflow has water level 0,4 m higher than outflow. I would like to have a fixed water levels and evaluate U and flowrate of water, the behavior of air is not important for me so I divided inflow and outflow faces to two which one is patch, second wall. Top is atmosphere. So I have a boundary conditions:|
alpha - fixedValue, value uniform 1
p_rgh - fixedValue, value uniform rho(water)*g*zcoord_of_waterlevel_at_inlet
U - outletInlet, outletValue uniform (0 0 0) (I don't expect back flow)
alpha - inletOutlet, inletValue uniform 1
p_rgh - fixedValue, value uniform rho(water)*g*zcoord_of_waterlevel_at_outlet
U - zeroGradient (if there could be back flow)
alpha - inletOutlet, inletValue uniform 0
p_rgh - totalPressure, p0 rho(air)*g*zcoord_of_patch
U - pressureInletOutletVelocity
other faces are walls.
The model with bottom situated at z=0 run well. The model with bottom at z=100 crashes but at pathes are the prediscribe conditions. Inside of model appears a locations with high negative pressure and than compute crash or not convergate. I also tried to add a pRefValue and pRefPoint do PIMPLE in fvSolution but with no success.
|Steps To Reproduce||blockMesh|
TESTINTERFOAM.7z (1,379,647 bytes)
I tried to do the same with tutorial weirOverflow and also there occur a problem with model with baseplane higher (y = 100 in my example). At inlet patch a higher water level appears then in internal it drop to normal. Model with baseline near 0 run correct.
I would like to use interFoam to compute flux at high structures (up to just 100 m), so I'm affraid about precision. I hope that I make somewhere mistake but where...
weirOverflow100.7z (88,287 bytes)
The weirOverflow tutorial is currently setup for the lowerWall to be at y=0, to run it at a different height you will need to use the fixedFluxPressure BC for p_rgh:
I will update the tutorial in 4.x and dev to avoid this confusion in the future.
The inlet perturbation relates to the upperBound set in the alpha.water file, if you set it to 1:
value uniform 0;
the inlet behavior is better. I will test the standard tutorial setup and if it runs OK with 1 for upperBound I will make that the default.
||One more thing, in order to get the same results with an off-set on height of 100m you need to use a tighter tolerance when solving for p_rgh due to the loss of precision from the rho*g*h off-set.|
Excuse me, do you mean solver tolerance or relTol?
At first sight I guess it could be the relTol...default set is 0,05 for p_rgh so is it mean that for 100m off-set and water is 100*9,81*1000*0,05 = 49050 Pa so it is 5 m of water column tolerance?
The tolerance is default 1e-7, it means absolute tolerance with 0,0000001 precision? When the solver use relTol and tolerance?
||I reduced both the tolerance and the relTol in my tests to check that I then get the same results with and without the 100m offset. I did not check if both changes are required, I would expect that a reduction in tolerance only should be sufficient.|
I make a test and in my test is relTol limiting.
Also upperBound 1 in variableHeightFlowRate is better.
Resolved in OpenFOAM-dev by commit 7b971a9ebf1e53483f1cfa88470e88978f917d3d
Resolved in OpenFOAM-4.x by commit 8efaef8c300a575ba01943cffba45172df279eea
|2016-09-06 07:28||TomasR||New Issue|
|2016-09-06 07:28||TomasR||File Added: TESTINTERFOAM.7z|
|2016-09-06 07:28||TomasR||Tag Attached: interFoam|
|2016-09-07 13:09||TomasR||File Added: weirOverflow100.7z|
|2016-09-07 13:09||TomasR||Note Added: 0006840|
|2016-09-07 13:38||henry||Note Added: 0006841|
|2016-09-07 13:46||henry||Note Added: 0006842|
|2016-09-07 13:53||henry||Note Added: 0006843|
|2016-09-07 14:29||TomasR||Note Added: 0006844|
|2016-09-07 14:37||henry||Note Added: 0006845|
|2016-09-07 15:00||TomasR||Note Added: 0006846|
|2016-09-07 15:21||henry||Assigned To||=> henry|
|2016-09-07 15:21||henry||Status||new => resolved|
|2016-09-07 15:21||henry||Resolution||open => fixed|
|2016-09-07 15:21||henry||Fixed in Version||=> 4.x|
|2016-09-07 15:21||henry||Note Added: 0006847|