<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[pimple算法非定常计算时残差持续增加最终发散如何解决？]]></title><description><![CDATA[<p dir="auto">最近使用rhoPimpleFoam算一个翼型的气动特性，总是在算很长时间后突然发散，发现p和e的残差在不断增加最后导致发散<br />
<img src="/assets/uploads/files/1543632266557-screenshot-from-2018-12-01-10-38-49-resized.png" alt="0_1543632265578_Screenshot from 2018-12-01 10-38-49.png" class=" img-fluid img-markdown" /><br />
我计算时取的时间步长基本让最大库郎数稳定在80以下，pimple设置如下：</p>
<pre><code> 73 PIMPLE
 74 {
 75     momentumPredictor yes;
 76     nOuterCorrectors 15;
 77     nCorrectors     4;
 78     nNonOrthogonalCorrectors 1;
 79     rhoMin          0.1;
 80     rhoMax          5.0;
 81     pMinFactor      0.5;
 82     pMaxFactor      2.0;
 83 
 84 }

</code></pre>
<p dir="auto">空间和时间离散格式如下</p>
<pre><code> 18 ddtSchemes
 19 {
 20     default         backward;
 21 }
 22 
 23 gradSchemes
 24 {
 25     default         Gauss linear;
 26     limited         cellLimited Gauss linear 1;
 27     grad(U)         $limited;
 28     grad(k)         $limited;
 29     grad(kU)        $limited;
 30     grad(omega)     $limited;
 31     grad(omegaU)    $limited;
 32 }

 33
 34 divSchemes
 35 {
 36     default         none;
 37     div(phi,U)      Gauss linearUpwind limited;
 38 
 39     turbulence      Gauss linearUpwind limited;
 40     energy          Gauss linearUpwind limited;
 41 
 42     div(phi,k)      $turbulence;  
 43     div(phi,kU)     $turbulence;
 44     div(phi,omega)  $turbulence;
 45     div(phi,omegaU) $turbulence;
 46 
 47     div(phi,e)      $energy;
 48     div(phi,h)      $energy;
 49     div(phi,K)      $energy;
 50     div(phi,Ekp)    $energy;
 51 
 52     div(phiv,p)     Gauss upwind;
 53     div((phi|interpolate(rho)),p)   Gauss upwind;
 54 
 55     div(phi,ReThetat)  $turbulence;
 56     div(phi,gammaInt)  $turbulence;
 57 
 58     div(B)          Gauss linear;
 59     div(meshPhi,p)  Gauss linear;
 60 
 61     div((nuEff*dev2(T(grad(U))))) Gauss linear;
 62     div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
 63     div(nonlinearStress) Gauss linear;
 64 
}
</code></pre>
<p dir="auto">网格是blockMesh做的，比较简单，因为要保证边界层密度所以纵横比比较大。请问导致发散的主要原因是什么？什么方法可以改善？我个人不希望再降低时间步长，因为目前已经很小了，采用pimple算法也是由于它能够在较大的库郎数下计算。谢谢各位！～</p>
]]></description><link>https://cfd-china.com/topic/2024/pimple算法非定常计算时残差持续增加最终发散如何解决</link><generator>RSS for Node</generator><lastBuildDate>Sun, 19 Jul 2026 06:48:55 GMT</lastBuildDate><atom:link href="https://cfd-china.com/topic/2024.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 01 Dec 2018 03:28:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to pimple算法非定常计算时残差持续增加最终发散如何解决？ on Sat, 08 Dec 2018 02:13:42 GMT]]></title><description><![CDATA[<p dir="auto">@东岳  东岳老师，问题已解决。非定常计算一开始要求时间步长要比较小，先得到一个较稳定的流场，在别的求解器里可能会先用稳态求解器算一个初场。而我上面的算例一开始时间步长较大，到后面越来越不稳定最终发散。开始用变时间步长让对应的库郎数从1以下慢慢增加即可。</p>
]]></description><link>https://cfd-china.com/post/10855</link><guid isPermaLink="true">https://cfd-china.com/post/10855</guid><dc:creator><![CDATA[Static]]></dc:creator><pubDate>Sat, 08 Dec 2018 02:13:42 GMT</pubDate></item><item><title><![CDATA[Reply to pimple算法非定常计算时残差持续增加最终发散如何解决？ on Tue, 04 Dec 2018 13:45:14 GMT]]></title><description><![CDATA[<p dir="auto">很难判断出问题的所在...<br />
虽然我对你的case比较感兴趣，如果网格数量小可以上传一下我试试，不过我比较忙可能下周才能给你回复</p>
]]></description><link>https://cfd-china.com/post/10730</link><guid isPermaLink="true">https://cfd-china.com/post/10730</guid><dc:creator><![CDATA[李东岳]]></dc:creator><pubDate>Tue, 04 Dec 2018 13:45:14 GMT</pubDate></item></channel></rss>