求助:timeVaryingMappedFixedValue循环读入程序错误
-
各位朋友大家好,有个问题想请教一下。
我在用OpenFOAM 6.0做圆管湍流传热的大涡模拟,入口速度设定为timeVaryingMappedFixedValue。速度数据是预先对一个短管进行进出口周期性计算,存储绝热条件下某一截面速度作为数据库,施加到加热区域的入口。为了缩短预计算时间,减小数据库容量,一个办法是将数据库循环读入到入口边界,也就是需要对timeVaryingMappedFixedValue这个边界条件进行一些改进。
偶然间发现CFD-online上有一个这样的程序,是针对OpenFOAM2.3写的。我把程序做微小改动后植入到OpenFOAM6,发现只能单核计算,并行计算出错。https://www.cfd-online.com/Forums/openfoam-programming-development/228505-modified-version-timevaryingmappedfixedvalue-bc-looping-through-data.html
于是我参照这个程序对OpenFOAM6原始的timeVaryingMappedFixedValue程序进行修改,命名为loopedTimeVaryingMappedFixedValue。程序编译能通多,但是测试时候发现无法计算,错误信息如下:
#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in "/lib/x86_64-linux-gnu/libc.so.6"
#3 ? in "/lib/x86_64-linux-gnu/libm.so.6"
#4 Foam::loopedTimeVaryingMappedFixedValueFvPatchField<Foam::Vector<double> >::updateCoeffs() at ??:?
#5 Foam::fvMatrix<Foam::Vector<double> >::fvMatrix(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh> const&, Foam::dimensionSet const&) at ??:?
#6 ? at ??:?
#7 ? at ??:?
#8 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#9 ? at ??:?
浮点数例外 (核心已转储)我的OpenFOAM编程基础非常薄弱,自己折腾了两天,还是搞不定这个问题,请大家帮忙看看这个错误的原因。如果有编程基础好的朋友愿意花点时间把CFD-online帖子中针对OF2.3的程序改成OF6能用的,我也非常愿意付报酬,可以QQ359199350。
第一次发帖求助,打扰大家了,非常感谢!