CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   TurbFoam problemlarge Co number (http://www.cfd-online.com/Forums/openfoam-solving/57826-turbfoam-problemlarge-co-number.html)

 sunnysun March 10, 2009 06:35

Dear All, I am trying to si

Dear All,

I am trying to simulate blood flow(Newtonian) in the vessel tree(1 inlet, two outlets),the mesh is composed of 300,000 element(generated with Netgen). Due to the pulsatility of flow and a large diameter in one section of vessel, the reynolds number ranges from 800-2800. As it is already in the range of transitional flow, I would like to compare the results with icoFoam and turbFoam. I use timeVaringMappedFixedValue for inlet velocity, internal field is uniform 0 at time 0. With icoFoam, the simulation runs ok(so far so good). But with turbFoam, the courant number shooting up after a few time steps, I tried to decrease the time step to 1e-9, it takes longer time to run but still crash.Also ,I tried with different non-orthogonal correction (from 0-5), but it does not help either.

Some output shows below:

Time = 5e-08

Courant Number mean: 3.4715513e-06 max: 0.60734157
DILUPBiCG: Solving for Ux, Initial residual = 0.85196695, Final residual = 3.1267205e-06, No Iterations 17
DILUPBiCG: Solving for Uy, Initial residual = 0.96440528, Final residual = 2.7772291e-06, No Iterations 17
DILUPBiCG: Solving for Uz, Initial residual = 0.79241281, Final residual = 7.3940699e-06, No Iterations 18
DICPCG: Solving for p, Initial residual = 0.95210563, Final residual = 1.7064169e-06, No Iterations 1001
DICPCG: Solving for p, Initial residual = 1.6748541e-05, Final residual = 8.4640768e-07, No Iterations 8
DICPCG: Solving for p, Initial residual = 0.00071908555, Final residual = 9.3169688e-07, No Iterations 891
DICPCG: Solving for p, Initial residual = 0.0012949352, Final residual = 9.1814394e-07, No Iterations 882
DICPCG: Solving for p, Initial residual = 0.0020266284, Final residual = 9.9997889e-07, No Iterations 77
DICPCG: Solving for p, Initial residual = 0.00088922452, Final residual = 9.6729688e-07, No Iterations 34
DICPCG: Solving for p, Initial residual = 0.00046604245, Final residual = 9.6719301e-07, No Iterations 44
DICPCG: Solving for p, Initial residual = 0.00017580701, Final residual = 9.8750237e-07, No Iterations 17
time step continuity errors : sum local = 0.0017074431, global = -1.3930901e-05, cumulative = -1.3930901e-05
DICPCG: Solving for p, Initial residual = 0.00031818805, Final residual = 9.7682202e-07, No Iterations 39
DICPCG: Solving for p, Initial residual = 0.0020054737, Final residual = 9.8841476e-07, No Iterations 834
DICPCG: Solving for p, Initial residual = 0.0015531438, Final residual = 9.8870886e-07, No Iterations 132
DICPCG: Solving for p, Initial residual = 0.00099694405, Final residual = 9.9800042e-07, No Iterations 98
DICPCG: Solving for p, Initial residual = 0.00036951027, Final residual = 9.9217062e-07, No Iterations 25
DICPCG: Solving for p, Initial residual = 0.00015456831, Final residual = 9.7291974e-07, No Iterations 33
DICPCG: Solving for p, Initial residual = 9.8850384e-05, Final residual = 9.7703745e-07, No Iterations 21
DICPCG: Solving for p, Initial residual = 3.7944695e-05, Final residual = 9.8717719e-07, No Iterations 13
time step continuity errors : sum local = 0.0020294417, global = 0.00050316706, cumulative = 0.00048923616
DICPCG: Solving for p, Initial residual = 0.00044148951, Final residual = 9.9891514e-07, No Iterations 35
DICPCG: Solving for p, Initial residual = 0.00058423109, Final residual = 9.8994051e-07, No Iterations 77
DICPCG: Solving for p, Initial residual = 0.0011570549, Final residual = 9.9388321e-07, No Iterations 48
DICPCG: Solving for p, Initial residual = 0.00059720437, Final residual = 9.5799576e-07, No Iterations 49
DICPCG: Solving for p, Initial residual = 0.00031756011, Final residual = 9.7824997e-07, No Iterations 28
DICPCG: Solving for p, Initial residual = 0.00013516959, Final residual = 9.7732753e-07, No Iterations 27
DICPCG: Solving for p, Initial residual = 5.7604893e-05, Final residual = 9.54122e-07, No Iterations 9
DICPCG: Solving for p, Initial residual = 1.9040262e-05, Final residual = 9.85252e-07, No Iterations 5
time step continuity errors : sum local = 0.0019502308, global = 0.00035723113, cumulative = 0.00084646729
DICPCG: Solving for p, Initial residual = 0.00025788581, Final residual = 9.5539493e-07, No Iterations 48
DICPCG: Solving for p, Initial residual = 0.00040909549, Final residual = 9.4801664e-07, No Iterations 50
DICPCG: Solving for p, Initial residual = 0.00062587092, Final residual = 9.7425662e-07, No Iterations 54
DICPCG: Solving for p, Initial residual = 0.00029854348, Final residual = 9.8320313e-07, No Iterations 23
DICPCG: Solving for p, Initial residual = 0.00018829853, Final residual = 9.4855736e-07, No Iterations 26
DICPCG: Solving for p, Initial residual = 8.5377075e-05, Final residual = 9.6900945e-07, No Iterations 15
DICPCG: Solving for p, Initial residual = 3.7474851e-05, Final residual = 9.3843777e-07, No Iterations 11
DICPCG: Solving for p, Initial residual = 1.4316395e-05, Final residual = 8.5426812e-07, No Iterations 7
time step continuity errors : sum local = 0.001607798, global = 0.00039511268, cumulative = 0.00124158
DILUPBiCG: Solving for epsilon, Initial residual = 0.143052, Final residual = 0.035359121, No Iterations 1001
bounding epsilon, min: -6.7958532e+22 max: 9.5183686e+22 average: 1.9702049e+17
DILUPBiCG: Solving for k, Initial residual = 0.99554838, Final residual = 0.89722782, No Iterations 1001
bounding k, min: -3.9062716e+20 max: 4.361143e+20 average: -1.1420505e+14
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
DILUPBiCG: Solving for T, Initial residual = 0, Final residual = 0, No Iterations 0
ExecutionTime = 540.23 s ClockTime = 4978 s

Time = 5.5e-08

Courant Number mean: 5.8934015 max: 2100091.5
[3] #0 Foam::error::printStack(Foam:http://www.cfd-online.com/OpenFOAM_D...part/proud.gifstream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[3] #1 Foam::sigFpe::sigFpeHandler(int)[2] #0 Foam::error::printStack(Foam:http://www.cfd-online.com/OpenFOAM_D...part/proud.gifstream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[2] #1 Foam::sigFpe::sigFpeHandler(int)[0] #0 Foam::error::printStack(Foam:http://www.cfd-online.com/OpenFOAM_D...part/proud.gifstream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[0] #1 Foam::sigFpe::sigFpeHandler(int)[1] #0 Foam::error::printStack(Foam:http://www.cfd-online.com/OpenFOAM_D...part/proud.gifstream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[1] #1 Foam::sigFpe::sigFpeHandler(int) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[1] #2 [4] #0 Foam::error::printStack(Foam:http://www.cfd-online.com/OpenFOAM_D...part/proud.gifstream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[4] #1 Foam::sigFpe::sigFpeHandler(int) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[4] #2 [5] #0 Foam::error::printStack(Foam:http://www.cfd-online.com/OpenFOAM_D...part/proud.gifstream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[5] #1 Foam::sigFpe::sigFpeHandler(int) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
[5] #2 __restore_rt at sigaction.c:0

As I am new to turbulent flow, may I know how to estimate the initial value for k and epsilon? Following the User Manual, I set the internal field for k is 0.00225 and for epsilon is 0.004.
I am not sure if I estimate reasonablly, the geometry is about 8cm and average diameter is about 6mm, inlet flow velocity changes from 0.2m/s to 0.8m/s.

Could some body give me help?

vivien

 prapanj March 10, 2009 07:14

Hi vivien, You could try u

Hi vivien,

You could try using simpleFoam to see if the problem is with your k and epsilon initiation. I don't think there is problem with these initiations. You needn't go that low with dt. You could alternatively try oodles, which is a LES solver. You could set a constant inlet and try simpleFoam. These are few things you could do to guess what the issue might be.

http://www.cfd-online.com/OpenFOAM_D...part/happy.gif
Prapanj

 prapanj March 10, 2009 07:17

One more suggestion: Check if

One more suggestion: Check if you are consistent with your dimensions. Check if you use the dimensions of velocity consistent with your convertToMeter value.

http://www.cfd-online.com/OpenFOAM_D...part/happy.gif
Prapanj

 gcollecutt March 10, 2009 07:26

Viven, The choice of linear

Viven,

The choice of linear/limitedLinear/upwind for the k and epsilon interpolation within the fvSchemes file plays a vital role here. Try playing with these.

Also I would set dt to a really small number and use adaptive time stepping to gradually ramp the courant number up to a control target (typically 1) once the fields have stabilised.

Greg.

 santos March 10, 2009 07:29

Hi Vivien, I wouldn't expec

Hi Vivien,

I wouldn't expect that k-epsilon model is adequate for your case, considering you are in laminar/transitional regime. If you are able to use icoFoam without your Courant number exploding, you are ok.

If you really need to use turbulence models, look for low-Re turbulence models, such as V2F (you'll find it here in the Message Board). In that case, your mesh should have an adequate resolution at the walls (y+<1).

Regards,
Jose Santos

 ngj March 10, 2009 08:57

Hi Vivien If you in your co

Hi Vivien

If you in your controlDict write something like this:

writeInterval 0.05;

Then the solver will adapt the time steps, to write with an interval of 0.05 seconds.

Best regards,

Niels

 sunnysun March 10, 2009 09:05

Hi Niels, Thanks a lot.

Hi Niels,

Thanks a lot.

i previously use timestep(1e-8), writeInterval 20. when I change to use adjustableRunTime, I did not change writeInterval, but I get my first result at time instance 0.00025614707, second result at 0.00035482559, seems still write result after 20 time steps...

Vivien

 All times are GMT -4. The time now is 23:05.