View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003762 | OpenFOAM | Bug | public | 2021-12-07 20:39 | 2021-12-07 21:35 |
Reporter | cgoessni | Assigned To | henry | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | amd64 | OS | Debian | OS Version | stable |
Summary | 0003762: XiEngineFoam crashes with adjustTimeStep yes | ||||
Description | XiEngineFoam crashes with adjustTimeStep set to yes. Using dynamicCode for coded setDeltaT at line 57 in "/home/clemens/OpenFOAM/clemens-9/run/kivaTest/system/controlDict/functions/setDeltaT" Courant Number mean: 0 max: 0 deltaT = 0 Crank angle = -180 CA-deg deltaZ = 0 #0 Foam::error::printStack(Foam::Ostream&) at ??:? #1 Foam::sigFpe::sigHandler(int) at ??:? #2 ? in "/lib/x86_64-linux-gnu/libc.so.6" #3 Foam::fvMesh::movePoints(Foam::Field<Foam::Vector<double> > const&) at ??:? #4 Foam::layeredEngineMesh::move() at ??:? #5 ? in "/home/clemens/local/OpenFOAM-9/platforms/linux64GccDPInt32Opt/bin/XiEngineFoam" #6 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #7 ? in "/home/clemens/local/OpenFOAM-9/platforms/linux64GccDPInt32Opt/bin/XiEngineFoam" If I add the following Info output to setDeltaT.H if (adjustTimeStep) { scalar maxDeltaTFact = maxCo/(CoNum + small); scalar deltaTFact = min(min(maxDeltaTFact, 1.0 + 0.1*maxDeltaTFact), 1.2); Info<< "maxDeltaTFact " << maxDeltaTFact << endl; Info<< "deltaTFact " << deltaTFact << endl; Info<< "deltaTValue() " << runTime.deltaTValue() << endl; Info<< "maxDeltaT " << maxDeltaT << endl; runTime.setDeltaT ( min ( deltaTFact*runTime.deltaTValue(), maxDeltaT ) ); Info<< "deltaT = " << runTime.deltaTValue() << endl; } I get the following output: Using dynamicCode for coded setDeltaT at line 57 in "/home/clemens/OpenFOAM/clemens-9/run/kivaTest/system/controlDict/functions/setDeltaT" Courant Number mean: 0 max: 0 maxDeltaTFact 9.0072e+14 deltaTFact 1.2 deltaTValue() 2.77778e-05 maxDeltaT 0.000111111 deltaT = 0 Crank angle = -180 CA-deg deltaZ = 0 #0 Foam::error::printStack(Foam::Ostream&) at ??:? #1 Foam::sigFpe::sigHandler(int) at ??:? #2 ? in "/lib/x86_64-linux-gnu/libc.so.6" #3 Foam::fvMesh::movePoints(Foam::Field<Foam::Vector<double> > const&) at ??:? #4 Foam::layeredEngineMesh::move() at ??:? #5 ? in "/home/clemens/local/OpenFOAM-9/platforms/linux64GccDPInt32Opt/bin/XiEngineFoam" #6 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #7 ? in "/home/clemens/local/OpenFOAM-9/platforms/linux64GccDPInt32Opt/bin/XiEngineFoam" Floating point exception So for some reason, setDeltaT sets it to zero unconditionally. | ||||
Steps To Reproduce | Take the tutorial $FOAM_TUTORIALS/XiEngineFoam/kivaTest and set adjustTimeStep yes | ||||
Additional Information | Fixed in -dev, is a backport possible? | ||||
Tags | No tags attached. | ||||
|
Correction: adjustableRunTime has to be set too for this issue to trigger. The function adjustDeltaT() in OpenFOAM/db/Time.C seems to fail if user time is in CA |
|
Try OpenFOAM-dev |
|
Problem can be resolved with the attached patch. patch (311 bytes)
--- engineTime/crankConRod/crankConRod.C.orig 2021-12-07 22:08:25.371104683 +0100 +++ engineTime/crankConRod/crankConRod.C 2021-12-07 22:08:03.055483706 +0100 @@ -42,6 +42,7 @@ { deltaT_ = degToTime(deltaT_); endTime_ = degToTime(endTime_); + beginTime_ = degToTime(beginTime_); if ( |
|
I am unable to reproduce the problem in OpenFOAM-dev, so I believe it is already fixed. |
|
Yes, the re-write of the userTime framework has resolved this issue. I will apply the patch that I posted for -9 locally. Thanks for the quick reply. Then both 0003761 and this report can be closed. |
|
Resolved by commit 15b2a2f42cdfce7c79b974e9be24a3320a6ef790 There is no issue is OpenFOAM-dev |
Date Modified | Username | Field | Change |
---|---|---|---|
2021-12-07 20:39 | cgoessni | New Issue | |
2021-12-07 20:59 | cgoessni | Note Added: 0012294 | |
2021-12-07 21:09 | henry | Note Added: 0012296 | |
2021-12-07 21:09 | cgoessni | File Added: patch | |
2021-12-07 21:09 | cgoessni | Note Added: 0012297 | |
2021-12-07 21:13 | henry | Note Added: 0012299 | |
2021-12-07 21:17 | cgoessni | Note Added: 0012300 | |
2021-12-07 21:35 | henry | Assigned To | => henry |
2021-12-07 21:35 | henry | Status | new => resolved |
2021-12-07 21:35 | henry | Resolution | open => fixed |
2021-12-07 21:35 | henry | Fixed in Version | => 9 |
2021-12-07 21:35 | henry | Note Added: 0012303 |