首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sonicFoam forwardStep真实边界条件导致错误::printStack(泡沫::Ostream&)

sonicFoam forwardStep真实边界条件导致错误::printStack(泡沫::Ostream&)
EN

Stack Overflow用户
提问于 2018-08-27 12:05:45
回答 1查看 351关注 0票数 1

我试图用更真实的边界条件来修改sonicFoam forwardStep示例

0/p中:

代码语言:javascript
复制
//internalField   uniform 1;
internalField   uniform 100000;

boundaryField
{
inlet
{
    type            fixedValue;
    //value           uniform 1;
    value           uniform 100000;
}

0/p

代码语言:javascript
复制
//internalField   uniform 1;
internalField   uniform 300;

boundaryField
{
    inlet
    {
        type            fixedValue;
        //value           uniform 1;
        value           uniform 300;
    }

但这会导致一个strang错误:

时间= 0.002 求和数平均值: 0.24881 max: 0.25对角线:求解rho,初始残差= 0,最终残差= 0,不迭代0 smoothSolver:迭代1 smoothSolver:解Ux,初始残差= 1,最终残差=9.33263 e-16,不迭代1 smoothSolver:求解Uy,初始残差= 1,最终残差= 6.21609e-17,不迭代1 smoothSolver:求解e,初始残差= 1,最终残差= 2.96112e-06,不迭代3 smoothSolver:解p,初始残差= 1,最终残差= 9.16163e-07,不迭代22对角:求解rho,初始残差= 0,最终残差= 0,不迭代0时间步长连续误差:和局部= 0.000363585,全局= 0.000346824,累积= 0.000346824点:迭代2 smoothSolver:求解Ux,初始残差= 0.0109637,最终残差=3.46971 e-14,不迭代1 smoothSolver: Uy求解,初始残差= 0.0462988,最终残差= 1.90246e-17,smoothSolver:迭代1次,初始残差= 0.999979,最终残余= 1.12177e-06,无迭代3 0泡沫::错误::printStack(泡沫::Ostream&)在?:1泡沫::sigFpe::sigHandler(Int) at?:2?在“/lib64 64/libc.so.6”中,3种泡沫::sqrt(泡沫::Field&,Foam::waveTransmissiveFvPatchField::advectionSpeed()::UList const& ) at?:??4泡沫::sqrt(泡沫::tmp> const&) at?:??5 Foam::GeometricField::Boundary::updateCoeffs() const at?:?:??6泡沫::advectiveFvPatchField::updateCoeffs() at?:?:??7 Foam::GeometricField::Boundary::updateCoeffs() at?::fvMatrix::fvMatrix(泡沫::GeometricField&)泡沫::维数集?:?:9泡沫::tmp> Foam::fv::optionList::operator()(Foam::GeometricField const&,泡沫::几何场&,泡沫::word const&) at?:10??:?11 __libc_start_main in“/lib64 64/libc.so.6”12?在??:?浮点异常

如果你能帮我知道出了什么问题以及我如何解决这个问题,我将不胜感激。

关键词: Floating point exception__libc_start_mainFoam::error::printStack(Foam::Ostream&)

EN

回答 1

Stack Overflow用户

发布于 2018-08-27 12:54:08

有十几个不同的问题会导致这样的错误。不幸的是,OpenFOAM错误消息不是很具体,也没有多少文档显示如何系统地解决这些错误消息。

在这种特殊情况下,由于修正后的初始压力值和入口压力值与原始出口值之间的巨大差异,产生了误差,而我忘记了相应的修改。修改:

代码语言:javascript
复制
outlet
    {
        type            waveTransmissive;
        field           p;
        psi             thermo:psi;
        gamma           1.4;
        fieldInf        1;
        lInf            3;
        value           uniform 1;
    }

代码语言:javascript
复制
outlet
    {
        type            waveTransmissive;
        field           p;
        psi             thermo:psi;
        gamma           1.4;
        fieldInf        100000;
        lInf            3;
        value           uniform 100000;
    }

或者简单的

代码语言:javascript
复制
outlet
{
    type            fixedValue;
    value           uniform 100000;
}

解决了问题,求解器成功地收敛。根据经验法则调整边界条件,最小化deltaT文件中的controlDict文件可以减少此问题发生的可能性。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52038985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档