# TurbFoam problemlarge Co number

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

 March 10, 2009, 05:35 Dear All, I am trying to si #1 Member   Vivien Join Date: Mar 2009 Posts: 52 Rep Power: 17 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:stream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so" [3] #1 Foam::sigFpe::sigFpeHandler(int)[2] #0 Foam::error::printStack(Foam:stream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so" [2] #1 Foam::sigFpe::sigFpeHandler(int)[0] #0 Foam::error::printStack(Foam:stream&) in "/vol/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so" [0] #1 Foam::sigFpe::sigFpeHandler(int)[1] #0 Foam::error::printStack(Foam:stream&) 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:stream&) 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:stream&) 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? Thanks in advance!! vivien

 March 10, 2009, 06:14 Hi vivien, You could try u #2 Senior Member   Prapanch Nair Join Date: Mar 2009 Location: Bangalore, India Posts: 105 Rep Power: 17 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. Prapanj

 March 10, 2009, 06:17 One more suggestion: Check if #3 Senior Member   Prapanch Nair Join Date: Mar 2009 Location: Bangalore, India Posts: 105 Rep Power: 17 One more suggestion: Check if you are consistent with your dimensions. Check if you use the dimensions of velocity consistent with your convertToMeter value. Prapanj

 March 10, 2009, 06:26 Viven, The choice of linear #4 New Member   Greg Collecutt Join Date: Mar 2009 Location: Brisbane, Queensland, Australia Posts: 21 Rep Power: 17 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.

 March 10, 2009, 06:29 Hi Vivien, I wouldn't expec #5 Senior Member     Jose Luis Santos Join Date: Mar 2009 Location: Portugal Posts: 215 Rep Power: 18 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

 March 10, 2009, 07:57 Hi Vivien If you in your co #6 Senior Member   Niels Gjoel Jacobsen Join Date: Mar 2009 Location: Copenhagen, Denmark Posts: 1,901 Rep Power: 37 Hi Vivien If you in your controlDict write something like this: writeControl adjustableRunTime; writeInterval 0.05; Then the solver will adapt the time steps, to write with an interval of 0.05 seconds. Best regards, Niels __________________ Please note that I do not use the Friend-feature, so do not be offended, if I do not accept a request.

 March 10, 2009, 08:05 Hi Niels, Thanks a lot. #7 Member   Vivien Join Date: Mar 2009 Posts: 52 Rep Power: 17 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