changes in rhoSimpleFoam since OpenFOAM version 1.6
1 Attachment(s)
Dear Foamers,
when I try to run an rhoSimpleFOAM (k-e-model, turbulent, compressible) example case in OpenFOAM 2.0, that used to work in version 1.6 I get the following errors: The first error comes up in the file mut, claiming, that the keyword mutWallFunction is wrong. After changing the Keyword, a similar error occurs in the file alphat for the keyword compressible::alphatWallFunction. After changing this keyword also, the error comes up, that the keyword div((muEff*dev2(T(grad(U))))) is undefined in the fvSolution file. Adding this keyword, I`ve got the error attached error log file. Hmm, now I'm alittle bit desperate, what else can I do, to get the case running ? Thank you, Jan |
From what I gather the problem is in your fvSchemes file, more specifically under the gradSchemes keyword. You could try copying the fvSchemes file from a rhoSimpleFoam tutorial case, or if you want to use the same fvSchemes, at least see how it is formatted (what are the changes between your fvSchemes and the tutorial file?). Anyway, it doesn't even seem to be an error but a warning; your calculation seems to have finished okay.
|
Hi Joel,
where can I find the tutorial case in OpenFOAM 2.0 ? In the tut/compressible folder there` s: rhoCentralFoam rhoPimpleFoam rhoPorousMRFLTSPimpleFoam rhoPorousMRFPimpleFoam rhoPorousMRFSimpleFoam rhoSimplecFoam sonicFoam sonicLiquidFoam but no rhoSimpleFoam... thank you, Jan |
I'd try the fvSchemes file from rhoSimplecFoam first. Looking at the solver descriptions on the FOAM webpage,the only difference between rhoSimpleFoam and rhoSimplecFoam is that the latter uses the SIMPLEC algorithm instead of SIMPLE. I've no idea what's the difference between the two algorithms, but maybe the fvSchemes file works. And even if it doesn't, you don't lose anything by trying.
|
Hi Joel,
thank you very much. Now I could solve the case, copying the fvSchemes and the fvSolution files from the rhoPorousMRFSimpleFoam solver did it for me :-) have a nice weekend, Jan |
Guys, I am trying to implement compressible solver, rhoSimplecFoam. I my controlDict, fvSchemes and svSolution files are exactly similar to the tutorial files for openFoam 2.0.
However I do not have a T boundary field. When I try to run the solution, I get this error. Can anyone please explain what do do with it and how to run it properly. I do have the thermophysicalProperties file in constant folder. Thanks, Umer |
The error
Reading thermophysical properties
Selecting thermodynamics package hPsiThermo<pureMixture<sutherlandTransport<specieT hermo<hConstThermo<perfectGas>>>>> #0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 in "/lib/libc.so.6" #3 Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > >::calculate() in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #4 Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > >::hPsiThermo(Foam::fvMesh const&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #5 Foam::basicPsiThermo::addfvMeshConstructorToTable< Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > > >::New(Foam::fvMesh const&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #6 Foam::basicPsiThermo::New(Foam::fvMesh const&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #7 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimplecFoam" #8 __libc_start_main in "/lib/libc.so.6" #9 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimplecFoam" Floating point exception |
Hi Umer,
the floating point exception in the error message may be the result of a division by zero. Try to change all values that should be zero to 1e-16. Maybe that`s it greetings to the Netherlands, Jan |
Hey Jan,
Thank you for your response. I did as you suggested, it did help a little bit. The solution went slightly further but received the error again: "Create mesh for time = 0 Reading thermophysical properties Selecting thermodynamics package hPsiThermo<pureMixture<sutherlandTransport<specieT hermo<hConstThermo<perfectGas>>>>> Reading field U Reading/calculating face flux field phi Creating turbulence model Selecting RAS turbulence model kEpsilon --> Upgrading k to employ run-time selectable wall functions Backup original k to k.old Writing updated k --> Upgrading epsilon to employ run-time selectable wall functions Backup original epsilon to epsilon.old Writing updated epsilon --> Creating mut to employ run-time selectable wall functions Writing new mut --> Creating alphat to employ run-time selectable wall functions Writing new alphat kEpsilonCoeffs { Cmu 0.09; C1 1.44; C2 1.92; alphaEps 0.76923; C3 -0.33; sigmak 1; sigmaEps 1.3; Prt 1; } SIMPLE: no convergence criteria found. Calculations will run for 1000 steps. Starting time loop Time = 1 GAMG: Solving for Ux, Initial residual = 0.615417, Final residual = 1.33194e+157, No Iterations 1000 GAMG: Solving for Uy, Initial residual = 0.615411, Final residual = 1.33196e+157, No Iterations 1000 GAMG: Solving for Uz, Initial residual = 0.99242, Final residual = 2.69279e+155, No Iterations 1000 #0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 in "/lib/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) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #4 Foam::GaussSeidelSmoother::smooth(Foam::Field<doub le>&, Foam::Field<double> const&, unsigned char, int) const in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #5 Foam::GAMGSolver::Vcycle(Foam::PtrList<Foam::lduMa trix::smoother> const&, Foam::Field<double>&, Foam::Field<double> const&, Foam::Field<double>&, Foam::Field<double>&, Foam::Field<double>&, Foam::PtrList<Foam::Field<double> >&, Foam::PtrList<Foam::Field<double> >&, unsigned char) const in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #6 Foam::GAMGSolver::solve(Foam::Field<double>&, Foam::Field<double> const&, unsigned char) const in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #7 Foam::fvMatrix<double>::solve(Foam::dictionary const&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libfiniteVolume.so" #8 Foam::fvMatrix<double>::solve() in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimplecFoam" #9 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimplecFoam" #10 __libc_start_main in "/lib/libc.so.6" #11 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimplecFoam" Floating point exception asml@flexPC:~/Umer/openfoam200/compressible/comp1$ " |
Previous Error
When some values were "0", the error came just after this:
"Create time Create mesh for time = 0 Reading thermophysical properties Selecting thermodynamics package hPsiThermo<pureMixture<sutherlandTransport<specieT hermo<hConstThermo<perfectGas>>>>> #0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 in "/lib/libc.so.6" #3 Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > >::calculate() in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #4 Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > >::hPsiThermo(Foam::fvMesh const&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #5 Foam::basicPsiThermo::addfvMeshConstructorToTable< Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > > >::New(Foam::fvMesh const&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #6 Foam::basicPsiThermo::New(Foam::fvMesh const&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #7 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimplecFoam" #8 __libc_start_main in "/lib/libc.so.6" #9 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimplecFoam" Floating point exception " Kindly suggest. Can it have anything to do with the fact that I do not have "nuTilda" in my 0 directory as opposed to the one in rhoSimpleFoam tutorial 0 directory. And also have transportProperties in constant directory which are missing in the one in tutorial. Thanks, Umer |
Greetings Umer,
Try installing OpenFOAM 2.0.1. It might be a bug that has already been fixed. Best regards, Bruno |
Problem Still not solved
1 Attachment(s)
Dear Bruno,
Thanks for your reply and feedback. I am using OF 2.0.0. By simplyfing some boundary conditions and removing "0" values to "1e-16", I managed to go just one time step ahead. But it is still not working. As a troubleshooting test case, I am now using a very simple cubical geometry instead of my real one. The error is like this now: "Create time Create mesh for time = 0 Reading thermophysical properties Selecting thermodynamics package hPsiThermo<pureMixture<sutherlandTransport<specieT hermo<hConstThermo<perfectGas>>>>> Reading field U Reading/calculating face flux field phi Creating turbulence model Selecting RAS turbulence model kEpsilon SIMPLE: convergence criteria field p tolerance 0.01 field U tolerance 0.0001 field T tolerance 0.001 field "(k|epsilon|omega)" tolerance 0.001 Starting time loop Time = 1 smoothSolver: Solving for Ux, Initial residual = 1, Final residual = 0.992801, No Iterations 1000 smoothSolver: Solving for Uy, Initial residual = 1, Final residual = 0.765461, No Iterations 1000 smoothSolver: Solving for Uz, Initial residual = 1, Final residual = 0.643294, No Iterations 1000 DILUPBiCG: Solving for h, Initial residual = 0.539879, Final residual = 0.00355726, No Iterations 1 GAMG: Solving for p, Initial residual = 1, Final residual = 3.16783e+61, No Iterations 1000 time step continuity errors : sum local = 8.02225e+61, global = -2.82469e+61, cumulative = -2.82469e+61 rho max/min : 1.19028 1.14028 smoothSolver: Solving for epsilon, Initial residual = 1, Final residual = 0.184692, No Iterations 1000 smoothSolver: Solving for k, Initial residual = 1, Final residual = 0.151554, No Iterations 1000 ExecutionTime = 0.11 s ClockTime = 0 s Time = 2 smoothSolver: Solving for Ux, Initial residual = 0.232692, Final residual = 0.0764661, No Iterations 1000 smoothSolver: Solving for Uy, Initial residual = 0.387239, Final residual = 0.126151, No Iterations 1000 smoothSolver: Solving for Uz, Initial residual = 0.187553, Final residual = 0.114679, No Iterations 1000 DILUPBiCG: Solving for h, Initial residual = 1, Final residual = 0.0202837, No Iterations 2 #0 Foam::error::printStack(Foam::Ostream&) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 in "/lib/libc.so.6" #3 Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > >::calculate() in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #4 Foam::hPsiThermo<Foam::pureMixture<Foam::sutherlan dTransport<Foam::specieThermo<Foam::hConstThermo<F oam::perfectGas> > > > >::correct() in "/opt/openfoam200/platforms/linux64GccDPOpt/lib/libbasicThermophysicalModels.so" #5 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimpleFoam" #6 __libc_start_main in "/lib/libc.so.6" #7 in "/opt/openfoam200/platforms/linux64GccDPOpt/bin/rhoSimpleFoam" Floating point exception " I have used both the fvschemes for rhoSimplecFoam and rhoMRFSimpleFoam (as it was being discussed by some other users in some other thread) I have attached my case folder with this message, please kindly have a look at the case and advise me. I have simulate evacuation of an air chamber through a pipe hole and do some optimization. With incompressible turbulent conditions, I can simulate it successfuly. But for more accuracy and for my requirements I need to do it in compressible turbulent case, hence I think rhoSimpleFoam is the solver which I can use only. Please do advise, Thanks. Will appreciate that. My work is stuck big time. Regards, Umer |
Hi Umer,
just refine your mesh a little bit, and it will run. For example with: refineMesh -overwrite Then start rhoSimpleFoam. You may want to set the BC for T to zeroGradient at the outlet, too. Good luck Martin |
Hey Martin,
Thanks a lot for your feedback and guidance. Yes this particular simple test case is working now after your suggestion. I will now move on to my real case and then see if it works. Regards, Umer |
All times are GMT -4. The time now is 06:41. |