CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Bugs (http://www.cfd-online.com/Forums/openfoam-bugs/)
-   -   dieselFoam with spray bug (http://www.cfd-online.com/Forums/openfoam-bugs/63761-dieselfoam-spray-bug.html)

Acebobo April 18, 2009 10:18

dieselFoam with spray bug
 
When I use dieselFoam to simulate spray with
collisionModel ORourke()ORourkeCoeffs{ coalescence on;}
, I found an error following:
Evolving Spray
#0 Foam::error::printStack(Foam::Ostream&) in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#1 Foam::sigFpe::sigFpeHandler(int) in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libOpenFOAM.so"
#2 Uninterpreted: [0xb7f7d420]
#3 Foam::C7H16::pv(double, double) const in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libliquids.so"
#4 Foam::liquidMixture::pv(double, double, Foam::Field<double> const&) const in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libliquidMixture.so"
#5 Foam::parcel::setRelaxationTimes(int, double&, Foam::Field<double>&, double&, Foam::Field<double>&, Foam::spray const&, double, Foam::Vector<double> const&, double, double, Foam::Field<double> const&, Foam::Field<double> const&, double) in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libdieselSpray.so"
#6 Foam::parcel::move(Foam::spray&) in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libdieselSpray.so"
#7 void Foam::Cloud<Foam::parcel>::move<Foam::spray>(Foam: :spray&) in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libdieselSpray.so"
#8 Foam::spray::move() in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libdieselSpray.so"
#9 Foam::spray::evolve() in "/root/OpenFOAM/OpenFOAM-1.5/lib/linuxGccDPOpt/libdieselSpray.so"
#10 main in "/root/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/dieselFoam"
#11 __libc_start_main in "/lib/libc.so.6"
#12 Foam::regIOobject::writeObject(Foam::IOstream::str eamFormat, Foam::IOstream::versionNumber, Foam::IOstream::compressionType) const in "/root/OpenFOAM/OpenFOAM-1.5/applications/bin/linuxGccDPOpt/dieselFoam"
Floating point exception

niklas April 20, 2009 01:58

What is the setup?
is it reproducable?

Acebobo April 23, 2009 01:10

When I use collisionModel trajectory, the problem also happened.
So I debug the scource code trajectoryCM.H, I found the error in this file.
scalar vAlign = vRel & (p/dist);
When dist=0.0,the floating error is appear.On the collision model this means two droplets at the same position.So I force the value of dist not zero,everything goes well.But on collision theory it is correct?

niklas April 24, 2009 02:36

Quote:

Originally Posted by Acebobo (Post 213863)
When I use collisionModel trajectory, the problem also happened.
So I debug the scource code trajectoryCM.H, I found the error in this file.
scalar vAlign = vRel & (p/dist);
When dist=0.0,the floating error is appear.On the collision model this means two droplets at the same position.So I force the value of dist not zero,everything goes well.But on collision theory it is correct?

yes, this is a mistake.

dist is just a normalization so limiting it to SMALL ,or adding SMALL, is a good change.
scalar vAlign = vRel & (p/(dist + SMALL));

I should have realized that 2 parcels will someday occupy the same position :rolleyes:


All times are GMT -4. The time now is 17:09.