|
[Sponsors] |
Flow around cylinder with pisoFoam [High Courant Number] |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
June 27, 2020, 08:26 |
Flow around cylinder with pisoFoam [High Courant Number]
|
#1 |
New Member
AmiN
Join Date: Nov 2014
Posts: 13
Rep Power: 11 |
Dear Cfd-Online!
I want to simulate the vortices around [back ] of a 2D cylinder in openfoam! But i haven't been successful yet! I should be able to see vortices when 60<Re<200 I put the cylinder in a channel with a size of 30cm*10cm and the diameter of cylinder is 2cm. The inlet velocity is 0.075. I use picoFoam [I have to use it, because i've been asked to] but after a few steps [say around time=22s] either the Courant number rockets high OR i got Time Step continuity errors. here is in case of Time Step continuity errors: Code:
Courant Number mean: 0.234093 max: 5.92467 smoothSolver: Solving for Ux, Initial residual = 0.804164, Final residual = 9.99732e-06, No Iterations 888 smoothSolver: Solving for Uy, Initial residual = 0.816256, Final residual = 9.97816e-06, No Iterations 533 GAMG: Solving for p, Initial residual = 0.00591756, Final residual = 0.00050205, No Iterations 5 time step continuity errors : sum local = 0.0182318, global = 0.00146394, cumulative = 0.00126626 GAMG: Solving for p, Initial residual = 9.51768e-05, Final residual = 8.79025e-07, No Iterations 5 time step continuity errors : sum local = 0.0170765, global = 0.000947447, cumulative = 0.0022137 #0 Foam::error::printStack(Foam::Ostream&) at ??:? #1 Foam::sigFpe::sigHandler(int) at ??:? #2 ? in /lib64/libc.so.6 #3 Foam::GaussSeidelSmoother::smooth(Foam::word const&, Foam::Field<double>&, Foam::lduMatrix const&, Foam::Field<double> const&, Foam::FieldField<Foam::Field, double> const&, Foam::UPtrList<Foam::lduInterfaceField const> const&, unsigned char, int) at ??:? #4 Foam::GaussSeidelSmoother::smooth(Foam::Field<double>&, Foam::Field<double> const&, unsigned char, int) const at ??:? #5 Foam::smoothSolver::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const at ??:? #6 Foam::fvMatrix<double>::solveSegregated(Foam::dictionary const&) at ??:? #7 Foam::fvMatrix<double>::solveSegregatedOrCoupled(Foam::dictionary const&) at ??:? #8 Foam::fvMesh::solve(Foam::fvMatrix<double>&, Foam::dictionary const&) const at ??:? #9 Foam::SolverPerformance<double> Foam::solve<double>(Foam::tmp<Foam::fvMatrix<double> > const&) at ??:? #10 Foam::RASModels::kEpsilon<Foam::IncompressibleTurbulenceModel<Foam::transportModel> >::correct() at ??:? #11 ? at ??:? #12 __libc_start_main in /lib64/libc.so.6 #13 ? at ??:? if i set the Delta T= 0.000125 the courant number rockets up to 12e+9! Here is the case summery:
U boundary : Code:
internalField uniform (0 0 0); boundaryField { inlet { type fixedValue; value uniform (0.075 0 0); } outlet { type zeroGradient; } walls { type fixedValue; value uniform (0 0 0); } frontAndback { type empty; } cylinder { type fixedValue; value uniform (0 0 0); } } Code:
internalField uniform 0; boundaryField { inlet { type zeroGradient; } outlet { type fixedValue; value uniform 0; } frontAndback { type empty; } walls { type zeroGradient; } cylinder { type zeroGradient; } } Code:
internalField uniform 7.65e-06; boundaryField { inlet { type zeroGradient; } outlet { type zeroGradient; } frontAndback { type empty; } walls { type zeroGradient; } cylinder { type zeroGradient; } } Code:
internalField uniform 1.72e-07; boundaryField { inlet { type zeroGradient; } outlet { type zeroGradient; } frontAndback { type empty; } walls { type zeroGradient; } cylinder { type zeroGradient; } } Code:
internalField uniform 0; boundaryField { inlet { type zeroGradient; } outlet { type zeroGradient; } walls { type zeroGradient; } cylinder { type zeroGradient; } frontAndback { type empty; } } Code:
solvers { p { solver GAMG; tolerance 1e-06; relTol 0.1; smoother GaussSeidel; } pFinal { $p; tolerance 1e-06; relTol 0; } "(U|k|epsilon|omega|R|nuTilda)" { solver smoothSolver; smoother GaussSeidel; tolerance 1e-05; relTol 0; } } PISO { nCorrectors 2; nNonOrthogonalCorrectors 0; pRefCell 0; pRefValue 0; } fvSchemes [openfoam default] Code:
ddtSchemes { default Euler; } gradSchemes { default Gauss linear; } divSchemes { default none; div(phi,U) Gauss limitedLinearV 1; div(phi,k) Gauss limitedLinear 1; div(phi,epsilon) Gauss limitedLinear 1; div(phi,omega) Gauss limitedLinear 1; div(phi,R) Gauss limitedLinear 1; div(R) Gauss linear; div(phi,nuTilda) Gauss limitedLinear 1; div((nuEff*dev2(T(grad(U))))) Gauss linear; } laplacianSchemes { default Gauss linear corrected; } interpolationSchemes { default linear; } snGradSchemes { default corrected; } |
|
June 29, 2020, 09:14 |
|
#2 |
Member
ano
Join Date: Jan 2017
Location: Delft
Posts: 58
Rep Power: 10 |
A good initial solution could help you:
1. Use potentialFoam to get the laminar inviscid flow around the cylinder. 2. Then use pisoFoam without a turbulence model. 3. Then switch on the turbulence model. Increase nNonOrthogonalCorrectors (your mesh around the cylinder is probably unorthogonal). |
|
Tags |
courant number, cylinder, k-epsilon model, openfoam, pisofoam |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Drag force coefficient too low for a flow past cylinder at Re= 1e05 | Scabbard | STAR-CCM+ | 2 | June 5, 2020 15:44 |
Flow past a cylinder at Re 1e05 using LES, drag force coefficient is to low | Scabbard | Main CFD Forum | 21 | June 19, 2018 14:58 |
Drag force coefficient too high for a flow past a cylinder using komega sst | Scabbard | OpenFOAM Running, Solving & CFD | 37 | March 21, 2016 17:16 |
Flow around cylinder free to rotate | Jonas Holdeman | Main CFD Forum | 5 | August 3, 2015 18:54 |
benchmark: flow over a circular cylinder | goodegg | Main CFD Forum | 12 | January 22, 2013 12:47 |