CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Courant Number become bigger and bigger!!! (http://www.cfd-online.com/Forums/openfoam-solving/62994-courant-number-become-bigger-bigger.html)

flying March 25, 2009 07:38

Courant Number become bigger and bigger!!!
 
I just begin to compute my case with icoFoam.

But the Courant Number becomes bigger and bigger even I use very small time step such as 1.0e-7. And I also assigned the maxCo with only 0.1. But it doesn't work. I really don't know the reason. If anyone has some experience, please share me with it. Or if you have some good advice, please inform me.

Thanks!!

chris_sev March 25, 2009 08:33

Hi,

in order to use adpative timestep with icoFoam you need to follow this thread:
http://www.cfd-online.com/Forums/ope...co-number.html

and concerning instability of your simulation, from my experience this might be some mesh issue or messed boundaries.
you should plot here your boundaries settings.
and do checkMesh.

Basicaly there's no general answer for your question, you must clear it out a bit.

Regards,
Chris

mihir1310 March 25, 2009 09:47

i had same situation with rhoSonicFoam .. I did follow the thread chris posted .... i included the "setDelta.H " "readTimeControls.H" files. This hasnt solved the problem entirely , even though the solution runs for quite a long time.. Maybe Initial timestep is a key .. As im new to both CFD & Openfoam [taking a class in CFD this sem] , thats what i guess
@ flying .... keep posting about your progress .im sure we can share info

flying April 18, 2009 05:36

In fact, I also try it to fixed it as Problems with adjustable timestep control and maxCo Number, but it doesn't work, and I really don't know how to do it. Then I change my dt is very small about 1e -6. Then it works. In fact, maxCo is only 0.03. So it is still not well. Do you have some other way to solve this problem?

Thanks and I would like to share information with you!

jhoepken April 22, 2009 03:19

Hi,

as chris_sev already mentioned: the problems of your small timestep maybe related to either mesh issues or messed up boundary conditions (or both). Run a checkMesh and post the output. Some information on your BC wouldn't be so bad either ;)

so long

joern April 22, 2009 06:06

as i posted in my thread:

1. check your boundary conditions. fixedValue for U and p at the inlet lets the firtst cells "explode" (U=4e25 after some iterations)

2. try to use bounded discretisations. rhoSonicFoam needs bounded schemes for div, like upwind or limitedLinear.

mihir1310 April 22, 2009 09:05

/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: http://www.openfoam.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/

Exec : checkMesh . .
Date : Apr 22 2009
Time : 09:04:16
Host : bonito
PID : 24378
Root : /home/msamel/OpenFOAM/OpenFOAM-1.4.1/tutorials/rhoSonicFoam/more_fine
Case : .
Nprocs : 1
Create time

Create polyMesh for time = constant

Time = constant

Mesh stats
points: 15328
edges: 37947
faces: 30140
internal faces: 14813
cells: 7520
boundary patches: 7
point zones: 0
face zones: 0
cell zones: 0

Number of cells of each type:
hexahedra: 7353
prisms: 167
wedges: 0
pyramids: 0
tet wedges: 0
tetrahedra: 0
polyhedra: 0

Checking topology...
Boundary definition OK.
Point usage OK.
Upper triangular ordering OK.
Topological cell zip-up check OK.
Face vertices OK.
Face-face connectivity OK.
Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces ...
Patch Faces Points Surface
inlet 10 21 ok (not multiply connected)
wall 217 436 ok (not multiply connected)
outlet2 60 121 ok (not multiply connected)
axis 0 0 ok (empty)
frontAndBackPlanes 0 0 ok (empty)
front 7520 7748 ok (not multiply connected)
back 7520 7748 ok (not multiply connected)

Checking geometry...
Domain bounding box: (0 0 -0.763521) (150 35 0.763521)
Boundary openness (-5.74591e-19 6.68058e-16 8.53495e-16) OK.
Max cell openness = 1.8787e-16 OK.
Max aspect ratio = 82.5128 OK.
Minumum face area = 0.0054537. Maximum face area = 1.37128. Face area magni tudes OK.
Min volume = 0.00489197. Max volume = 0.815718. Total volume = 2830.48. Ce ll volumes OK.
Mesh non-orthogonality Max: 8.53774e-07 average: 0
Non-orthogonality check OK.
Face pyramids OK.
Max skewness = 0.332699 OK.
Min/max edge length = 0.0218148 1.52704 OK.
All angles in faces OK.
Face flatness (1 = flat, 0 = butterfly) : average = 1 min = 1
All face flatness OK.

Mesh OK.

End
^^^^ my checkMech ... btw this is an axisymetric mesh ... prepared using fluentmeshToFoam & makeAxialmesh

mihir1310 April 22, 2009 09:14

p
internalField uniform 50000;

boundaryField
{
inlet
{
type zeroGradient;

}

outlet2
{
type fixedValue;
value uniform 1e5;
}

front
{
type wedge;
}


back
{
type wedge;
}

wall
{
type zeroGradient;
}

defaultFaces
{
type empty;
}
}

U
internalField uniform (280 0 0);

boundaryField
{
inlet
{
type fixedValue;
value uniform (360 0 0);
}

outlet2
{
type zeroGradient;
}

front
{
type wedge;
}

back
{
type wedge;
}

wall
{
type fixedValue;
value uniform (0 0 0);
}

mihir1310 April 22, 2009 09:18

please let me know if you neeed any more info ..

thanx a lot

flying April 23, 2009 14:01

Create time

Create polyMesh for time = constant

Time = constant

Mesh stats
points: 56392
faces: 163161
internal faces: 157599
cells: 53460
boundary patches: 6
point zones: 0
face zones: 1
cell zones: 1

Number of cells of each type:
hexahedra: 53460
prisms: 0
wedges: 0
pyramids: 0
tet wedges: 0
tetrahedra: 0
polyhedra: 0

Checking topology...
Boundary definition OK.
Point usage OK.
Upper triangular ordering OK.
Topological cell zip-up check OK.
Face vertices OK.
Face-face connectivity OK.
Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces ...
Patch Faces Points Surface
WALL1 864 900 ok (not multiply connected)
WALL2 1188 1224 ok (not multiply connected)
WALL3 1548 1584 ok (not multiply connected)
WALL4 1152 1188 ok (not multiply connected)
INLET 405 424 ok (not multiply connected)
OUTLET 405 424 ok (not multiply connected)

Checking geometry...
Domain bounding box: (-0.088514 -0.164031 -0.0121122) (0 0.0210195 0.0121122)
Boundary openness (-5.56024e-16 -6.2903e-17 -1.37923e-16) OK.
Max cell openness = 2.94802e-15 OK.
Max aspect ratio = 79.7319 OK.
Minumum face area = 1.15377e-08. Maximum face area = 9.02275e-06. Face area magnitudes OK.
Min volume = 2.20732e-11. Max volume = 1.19129e-08. Total volume = 4.45843e-05. Cell volumes OK.
Mesh non-orthogonality Max: 56.8885 average: 11.598
Non-orthogonality check OK.
Face pyramids OK.
Max skewness = 1.04553 OK.
All angles in faces OK.
Face flatness (1 = flat, 0 = butterfly) : average = 0.999978 min = 0.991932
All face flatness OK.

Mesh OK.

End

mihir1310 April 23, 2009 14:05

did you check your boundary types ???/ that is also an issue

In the forwardstep tutorial , the top wall of the domain is designated as symmetryPlane , & not as a patch . I had been designating the upper wall of my axisymmetric nozzle as 'patch' . i changed it to symmetryPlane & now its working fine ....

habe to see the final solution though

flying April 23, 2009 14:10

I really don't think it will be work:

The problem is that we can't set the Maxco. And the function for setting doesn't work well.

Although the Courant number has relation with the boundary condition and mesh quantity, it should be set the maximum value.

It is very pity for me to know few how it implement this function in the openfoam.



mihir1310 April 23, 2009 14:13

implemeting maxCo is a easy thing ... you just have to add a few lines to your code & compile it ...
just like how its explained in the thread ..

flying April 23, 2009 14:14

I think there is no problem about my boundary condition and with small time step, I have got some result about my case, and it seems reasonable. If there is some problem about the boundary, it should not be reasonable

flying April 23, 2009 14:17

If I didn't misremember it, there are lines that introduced in the thread. But it doesn't work, maybe I need to try again and compile it again. I will try again as the thread. Thanks for your reply.

mihir1310 April 23, 2009 14:19

check your PM !!!

flying April 23, 2009 14:21

I am sorry I don't know the meaning of "PM". Thanks!

mihir1310 April 23, 2009 14:22

check you personal inbox of this forum .... ive given my gmail id.. i can tel ll what you have to do for variable timestep for rhoSonic.. i guess i know why its not working for you

joern April 23, 2009 14:43

if the coNum gets bigger and bigger it has nothing to do with variable timestepping.

if the solver isnt stable with very low deltaT then it wouldn't be stable for variable timestepping, either. CoNum is just a nessesary condition for stability.
the icoFoam solver is just a simple solver for incompressible N-S-Equations with a PISO correction.
For most FV solvers it is enough if you use a CoNum of <0.5 . The CoNum is U*deltaT/deltaX. I dont know the maximum of U in the N-S Equations but for the Euler Equations (rhoSonic) this is U+c, cause this is an eigenvalue of this system and so its a speed of error waves for this equations.
if you know the maximum speed of error waves, you can set your CoNum small enough and you have the nessesary condition for stability.

if the solver is still not stable, then its not a problem of the CoNum. then its a problem of your BC or of your schemes.

For example: if you use a linear scheme for the div term in rhoSonic then your solver will diverge no matter what you do. Even for deltaT=1e-100 it will crash cause it is an unbounded scheme what isnt stable for these kind of equations.
so try some more stable schemes like upwind or minmod.

mihir1310 April 23, 2009 14:48

hey thats true!! sorry for not mentioning that ,!!!! thanx


All times are GMT -4. The time now is 17:01.