CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Programming & Development (
-   -   Negative diffusion !! (

jmmeena July 8, 2009 11:16

Negative diffusion !!

I am running a case which involves diffusion. I am getting following error:
Time = 4.68

smoothSolver: Solving for Ux, Initial residual = 7.20439e-08, Final residual = 7.20439e-08, No Iterations 0
smoothSolver: Solving for Uy, Initial residual = 6.83487e-08, Final residual = 6.83487e-08, No Iterations 0
smoothSolver: Solving for Uz, Initial residual = 1.9183e-07, Final residual = 1.9183e-07, No Iterations 0
DILUPBiCG: Solving for h, Initial residual = 9.49839e-06, Final residual = 9.49839e-06, No Iterations 0
GAMG: Solving for pd, Initial residual = 5.64058e-08, Final residual = 3.39985e-09, No Iterations 1
time step continuity errors : sum local = 4.40307e-12, global = -2.87747e-13, cumulative = -5.94087e-05
rho max/min : 0.721684 .676527
DILUPBiCG: Solving for T, Initial residual = 6.34211e-07, Final residual = 6.34211e-07, No Iterations 0
#0 Foam::error::printStack(Foam::Ostream&) in "/usr/local/OpenFOAM/OpenFOAM-1.5.x/lib/linux64GccDPOpt/"
#1 Foam::sigFpe::sigFpeHandler(int) in "/usr/local/OpenFOAM/OpenFOAM-1.5.x/lib/linux64GccDPOpt/"
#2 ?? in "/lib/"
#3 Foam::PBiCG::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/usr/local/OpenFOAM/OpenFOAM-1.5.x/lib/linux64GccDPOpt/"
#4 Foam::fvMatrix<double>::solve(Foam::Istream&) in "/usr/local/OpenFOAM/OpenFOAM-1.5.x/lib/linux64GccDPOpt/"
#5 Foam::fvMatrix<double>::solve() at /usr/local/OpenFOAM/OpenFOAM-1.5.x/src/finiteVolume/lnInclude/fvMatrixSolve.C:187
#6 Foam::lduMatrix::solverPerformance Foam::solve<double>(Foam::tmp<Foam::fvMatrix<doubl e> > const&) at /usr/local/OpenFOAM/OpenFOAM-1.5.x/src/finiteVolume/lnInclude/fvMatrix.C:1279
#7 main at ~/OpenFOAM/jagmohan-1.5.x/applications/solvers/Scalar_Transport_combinations/buoyantTransportSimpleFoamNew/buoyantTransportSimpleFoamNew.C:85
#8 __libc_start_main in "/lib/"
#9 _start at /build/buildd/glibc-2.9/csu/../sysdeps/x86_64/elf/start.S:116

I checked my solver and at 85 line, it is scalar transport equation for diffusion which has problem. I did post processing and found that there are negative values for diffusion which is not possible. I think negative values arise due to numerical error while solving. But once the negative values occur, simulation diverges. At outlet, I am using zeroGradient condition, where it diverged first. Please tell me how to define diffusion term strictly non negative or appropriate boundary condition? I am attaching 3 pictures at different time steps which are explaining about this!!


jmmeena July 8, 2009 13:26

3 Attachment(s)
here are the attachments !

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