关于k-w SST湍流模型边界条件设置的疑惑
-
各位老师师兄师姐们好,我刚刚开始学习湍流模型,使用buoyantSimpleFoam求解器求解湍流流动问题,使用了k-w SST湍流模型,但是在计算过程中总是出现计算omega边界发散问题,也查阅了很多相关资料,还是没有解决,在这里列出所设置的边界条件设置及错误,希望大家能够帮助我指出问题所在,不胜感激!
ps:我在网格划分时边界层第一层网格宽度y+设置为0.5,网格拓展率1.2,Re约为5*10^5,checkMesh没有问题!
边界条件设置:1.png
错误及上一步运行结果
-
实在抱歉没有认真检查排版导致图片出现问题。现将图1重新上传
【附】壁面wall设置为恒定热流,这里有个疑惑,在设定恒热流边界条件指定的value uniform值会影响这个条件吗,感觉这个又有点类似恒定温度,但是删去会报错
-
你的设置看起来没问题,uniform value也没有影响,你的压力看起来很大,
你用层流计算试试看会收敛么?或者kEpsilon
kOmega公认的对Omega边界条件比较敏感 -
谢谢李老师解答疑惑,我换用了层流和kEpsilon模型,但是仍然出现计算发散的问题,使用kEpsilon模型时也出现边界值过大的问题,我怀疑可能是由于设置物性变化过于剧烈的问题。
-
请问,你是在做变物性吗?我最近算的层流也遇见发散的问题,希望能多交流
-
@王慧博 看样子你是在计算超临界水方面的。请问这个问题您是如何解决的?我在计算圆管等热流加热算例,采用kwSST和kEpsilon模型,尝试了buoyantSimpleFoam和rhoSipleFoam都发散,下面是我用rhoSimpleFoam计算kEpsilon的错误信息,不太明白是什么导致的发散或错误。
#0 Foam::error::printStack(Foam::Ostream&)[40] #0 Foam::error::printStack(Foam::Ostream&)[39] #0 Foam::error::printStack(Foam::Ostream&)[38] #0 Foam: :error::printStack(Foam::Ostream&)[37] #0 Foam::error::printStack(Foam::Ostream&)[36] #0 Foam::error::printStack(Foam::Ostream&)[35] #0 Foam::error::printS tack(Foam::Ostream&)[34] #0 Foam::error::printStack(Foam::Ostream&)[33] #0 Foam::error::printStack(Foam::Ostream&)[32] #0 Foam::error::printStack(Foam::Ost ream&)[31] #0 Foam::error::printStack(Foam::Ostream&)[30] #0 [11] #0 Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)[12] #0 Foam::error::printStack(Foam::Ostream&)[29] #0 [13] #0 Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)[14] #0 Foam::error:: printStack(Foam::Ostream&)[28] #0 [15] #Foam::error::printStack(Foam::Ostream&)0 Foam::error::printStack(Foam::Ostream&)[16] #0 Foam::error::printStack(Foa m::Ostream&)[27] #0 Foam::error::printStack(Foam::Ostream&)[25] #0 [17] #0 Foam::error::printStack(Foam::Ostream&)Foam::error::printStack(Foam::Ostream&)[2 6] #0 Foam::error::printStack(Foam::Ostream&)[18] #0 Foam::error::printStack(Foam::Ostream&)[21] #0 Foam::error::printStack(Foam::Ostream&)[23] #0 Foam::e rror::printStack(Foam::Ostream&)[24] #0 Foam::error::printStack(Foam::Ostream&)[19] #0 Foam::error::printStack(Foam::Ostream&)[20] #0 Foam::error::printSta ck(Foam::Ostream&)[22] #0 Foam::error::printStack(Foam::Ostream&) at ??:? [36] #1 Foam::sigFpe::sigHandler(int) at ??:? [41] #1 Foam::sigFpe::sigHandler(int) at ??:? #2 ? in "/lib64/libpthread.so.0" [29] #3 Foam::multiply(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) in "/lib64/libpthread.so.0" [28] #3 Foam::multiply(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) at ??:? [37] #4 Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > Foam::operator*<Foam::volMesh>(Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > co nst&, Foam::DimensionedField<double, Foam::volMesh> const&) at ??:? [36] #4 Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > Foam::operator*<Foam::volMesh>(Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > co nst&, Foam::DimensionedField<double, Foam::volMesh> const&) at ??:? [35] #4 Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > Foam::operator*<Foam::volMesh>(Foam::tmp<Foam::DimensionedField<double, Foam::volMesh> > co nst&, Foam::DimensionedField<double, Foam::volMesh> const&) at ??:? [36] #5 Foam::RASModels::kEpsilon<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > >::correct() at ??: ? [37] #5 Foam::RASModels::kEpsilon<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > >::correct() at ??: ? 5 Foam::RASModels::kEpsilon<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > >::correct()Foam::RASMode ls::kEpsilon<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > >::correct()[41] #5 Foam::RASModels::kEp silon<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > >::correct() at ??:? [30] #5 Foam::RASModels::kEpsilon<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > >::correct() at ??: ?
这里第一个错误应该是除数错误,下面的模型错误是什么导致,如果边界有问题的话也不会影响湍流模型?以及tmp(DimensionedField)是什么错误,也是边界错误吗?求助