假穩(wěn)定現(xiàn)象、時(shí)間步長(zhǎng)、單雙精度誤差帶來(lái)的問(wèn)題
2016-10-06 by:CAE仿真在線(xiàn) 來(lái)源:互聯(lián)網(wǎng)
有時(shí)候如果時(shí)間步長(zhǎng)太小,導(dǎo)致每個(gè)step變化的值很小,如果采用單精度計(jì)算則會(huì)導(dǎo)致精度不夠,從而引發(fā)數(shù)學(xué)上的誤差積累。
所以我們看到ansys官方的推薦做法是,在進(jìn)行粗略的快速分析的時(shí)候使用單精度,而在最終用于生產(chǎn)的情況則使用雙精度進(jìn)行計(jì)算。
下面是某個(gè)網(wǎng)友的值得借鑒的經(jīng)驗(yàn):
近來(lái)在做一個(gè)瞬態(tài)傳熱分析的case的時(shí)候總遇到一種“假穩(wěn)定”現(xiàn)象,困惑了我好久?,F(xiàn)在問(wèn)題解決了,把經(jīng)驗(yàn)總結(jié)一下分享出來(lái)。
我所謂的“假穩(wěn)定”現(xiàn)象是指計(jì)算過(guò)程中流場(chǎng)中的某些物理量穩(wěn)定在了某個(gè)不可能的值或者不可能的范圍內(nèi),比如傳熱計(jì)算時(shí)溫度穩(wěn)定在了遠(yuǎn)遠(yuǎn)低于目標(biāo)值的范圍內(nèi),或者計(jì)算壓力場(chǎng)時(shí),壓力的分布穩(wěn)定在了一個(gè)不合理的范圍內(nèi)。如果你遇到過(guò)這種情況,我的經(jīng)歷可以提供參考。
我的這個(gè)case是計(jì)算一個(gè)壁厚為5.8mm、初始溫度為40℃的金屬制件內(nèi)部流過(guò)過(guò)溫度在60~120℃之間高頻波動(dòng)的氣體時(shí)的傳熱情況,時(shí)間步長(zhǎng)設(shè)置為5e-5s/step。計(jì)算前預(yù)計(jì)金屬制件的平均溫度將在數(shù)分鐘內(nèi)升溫到85℃,但實(shí)際計(jì)算到7s左右時(shí),平均溫度上升到42℃左右,之后無(wú)論計(jì)算多久都不再上升了,而是在原地反復(fù)波動(dòng)。這種現(xiàn)象在時(shí)間步長(zhǎng)為2e-5s/step和1e-5s/step時(shí)也會(huì)出現(xiàn)。
后來(lái)檢查了計(jì)算輸出的溫度數(shù)據(jù)才明白這跟舍入誤差有關(guān)。我采用的是單精度求解器,數(shù)據(jù)只能精確到小數(shù)點(diǎn)后7位。當(dāng)時(shí)間步長(zhǎng)為5e-5s/step時(shí),相鄰兩步的溫度增量只有約3e-5℃,這樣每一步的舍入誤差對(duì)溫度增量的影響非常大,導(dǎo)致這種“假穩(wěn)定”的出現(xiàn)。
解決方法非常簡(jiǎn)單:
1.采用雙精度求解器
2.不影響計(jì)算精度的情況下增大時(shí)間步長(zhǎng)。
雙管齊下后計(jì)算出的平均溫度終于以約0.6℃/s的速度逐漸升高。
這是一個(gè)舍入誤差對(duì)數(shù)值計(jì)算的影響的非常典型的例子。小的時(shí)間步長(zhǎng)并不一定使計(jì)算精度提高,也有可能使每一步的誤差增大。
關(guān)于精度請(qǐng)看如下資料:
網(wǎng)上查了一下單精度和雙精度的區(qū)別:
單精度:具有7位精確小數(shù)位。
雙精度:具有15位精確小數(shù)位。
另外,雙精度需要占用兩倍的內(nèi)存空間,需要更長(zhǎng)的時(shí)間完成計(jì)算。
看了一遍FLUENT幫助文件中對(duì)如何選擇單精度和雙精度求解器的說(shuō)明,翻譯過(guò)來(lái)放在博客里,免得轉(zhuǎn)眼就忘了。
**************************************************************************************************
對(duì)大多數(shù)算例來(lái)說(shuō),單精度求解器已經(jīng)足夠精確。但是對(duì)以下幾種情況,雙精度求解器更適合:
1.流域具有顯著的長(zhǎng)度尺度(例如一根細(xì)長(zhǎng)的管道),用單精度表示點(diǎn)坐標(biāo)可能不夠精確。
2.流域是幾個(gè)區(qū)域,彼此之間用小尺寸的管道連接起來(lái)(例如汽車(chē)發(fā)動(dòng)機(jī)歧氣管),其中的一個(gè)區(qū)域的氣壓大大高于整個(gè)流域的平均水平,這種情況有必要用雙精度方案來(lái)求解壓差。
3.對(duì)于涉及到高的熱傳導(dǎo)率的共軛問(wèn)題(共軛問(wèn)題,我的理解是兩個(gè)區(qū)域的相鄰邊界傳熱或者邊界和區(qū)域內(nèi)流體相互傳熱)、或網(wǎng)格單元的長(zhǎng)寬高尺寸比率很大的網(wǎng)格(扁的或狹長(zhǎng)的網(wǎng)格),單精度求解器不能有效地傳遞邊界信息,會(huì)導(dǎo)致計(jì)算不收斂和不精確。
4.對(duì)于采用了population balance模式求解particle size分布可能包含數(shù)個(gè)數(shù)量級(jí)跨度的statistical moments的的多相流問(wèn)題,適合用雙精度求解器。(沒(méi)用過(guò)population balance模式,完全不知道這一條什么意思
)
**************************************************************************************************
另外,我個(gè)人的經(jīng)驗(yàn),當(dāng)計(jì)算瞬態(tài)問(wèn)題的時(shí)間步長(zhǎng)很小時(shí),用雙精度求解器可以獲得更好的收斂性。
附:FLUENT幫助文件原文:
Single-Precision and Double-Precision Solvers
Both single-precision and double-precision versions of ANSYS FLUENT are available on all computer platforms. For most cases, the single-precision solver will be sufficiently accurate, but certain types of problems may benefit from the use of a double-precision version. Several examples are listed below:
If your geometry has features of very disparate length scales (e.g., a very long, thin pipe), single-precision calculations may not be adequate to represent the node coordinates.
If your geometry involves multiple enclosures connected via small-diameter pipes (e.g., automotive manifolds), mean pressure levels in all but one of the zones can be quite large (since you can set only one global reference pressure location). Double-precision calculations may therefore be necessary to resolve the pressure differences that drive the flow, since these will typically be much smaller than the pressure levels.
For conjugate problems involving high thermal-conductivity ratios and/or high-aspect-ratio meshes, convergence and/or accuracy may be impaired with the single-precision solver, due to inefficient transfer of boundary information.
For multiphase problems where the population balance model is used to resolve particle size distributions, which could have statistical moments whose values span many orders of magnitude.
開(kāi)放分享:優(yōu)質(zhì)有限元技術(shù)文章,助你自學(xué)成才
相關(guān)標(biāo)簽搜索:假穩(wěn)定現(xiàn)象、時(shí)間步長(zhǎng)、單雙精度誤差帶來(lái)的問(wèn)題 Fluent培訓(xùn) Fluent流體培訓(xùn) Fluent軟件培訓(xùn) fluent技術(shù)教程 fluent在線(xiàn)視頻教程 fluent資料下載 fluent分析理論 fluent化學(xué)反應(yīng) fluent軟件下載 UDF編程代做 Fluent、CFX流體分析 HFSS電磁分析
編輯