漫話CFD(二)——來自熱管理_磚家的分享
2017-02-05 by:CAE仿真在線 來源:互聯(lián)網(wǎng)
熱管理_磚家:IND4汽車人資深注冊用戶。工程熱物理專業(yè),一直從事新能源乘用車整車電池,電機,空調(diào),車艙舒適性等熱管理開發(fā)工作。專注于CFD技術,熱管理系統(tǒng)開發(fā)。
戳這里查看>>漫話CFD(一)
四、如何正確看待CFD技術
數(shù)值模擬,也稱之為虛擬試驗、數(shù)值仿真。通俗的說,就是利用計算機構(gòu)建
虛擬實驗環(huán)境,利用計算軟件獲取我們感興趣的物理量。
(1)CFD軟件≠CFD技術
對于初學 CFD的人員來說,大多都會認為 CFD技術僅僅就是那些 fluent、CFX等軟件的熟練使用,起初很容易陷入拼命學習軟件的操作上,以為學習好了這些軟件的操作就寫掌握了CFD技術,那您就大錯特錯了。因此,我們必須有這樣一個概念:CFD軟件僅僅是一種計算機輔助工具。
(2)CFD技術不是萬能的
軟件學習久了,難免會產(chǎn)生一些荒唐的想法,認為軟件能夠解決所有的事情,能解決所有的問題。首先我們必須承認CFD軟件也是一堆代碼,只要您在軟件代碼允許的范圍內(nèi)輸入一定的參數(shù)都會得出對應的結(jié)果,但是這些結(jié)果的正確性就必須有專業(yè)的CFD工程師和專業(yè)人員去考評,以及實驗和理論去驗證。對于那些非計算機專業(yè)的學生來說,恐怕只有那些真正開發(fā)過軟件的人才會明白,目前的軟件所能做的事情,都是基于程序編程者的知識。因此,計算機軟件所能做的事情,無法超越現(xiàn)有的知識。換句話來說,若想僅僅利用計算機軟件去發(fā)現(xiàn)新知識,無異于癡人說夢(當然這里只是指數(shù)值模擬軟件,不包括人工智能數(shù)據(jù)挖掘之類的軟件),因此,CFD技術不能去創(chuàng)造理論,他永遠逃不出軟件本身基于的理論基礎,CFD技術僅僅是開展研究工作的一種手段與方法。
(3)數(shù)值模擬是有用的
數(shù)值模擬有用嗎?當然是。數(shù)值模擬在當今科學研究中的所占的比重越來越大,同時在工程領域應用也越來越廣泛。但是在使用這類軟件之前,有一些問題是必須要回答的,而要回答這些問題,則要求仿真者具有深厚的理論功底。若無法正確的回答這些問題,很可能陷入盲目。這些問題包括:
問題1:要模擬什么?
這個問題十分重要而且也對模擬者的理論功底要求較高。在真正進行計算之前,必須弄明白自己要模擬什么。包括將現(xiàn)實世界的物理現(xiàn)象抽象為數(shù)學模型,最后將視線聚焦到某些物理量上。舉個最簡單的例子,比如說兩個人賽跑,我們要比較誰是優(yōu)勝者。這是個很簡單的生活現(xiàn)象,但是如果我們要更精確的去描述這個物理現(xiàn)象,可以將其抽象成數(shù)學模型,然后將物理量鎖定在時間這一變量上。于是我們可以用使用時間的多與少來表征優(yōu)勝者。當然這個例子過于簡單,但是可以引而廣之。實際上數(shù)值模擬與這類似,軟件能求解計算的只是一些基本物理量,我們首先確保自己關注的物理量能夠被基本量直接或間接的得到,這樣也就能保證使用該軟件能得到我們想要的東西了。
那么為什么說這一步對模擬者的理論功底要求高呢?因為模擬者若沒有深厚的功底以及對物理現(xiàn)象深刻的認識,那么是不可能準確有效地挑選出的能夠表征物理現(xiàn)象的物理量的。在回答這一問題之前,需要進行大量的資料收集工作,當然也少不了實驗工作。
問題2:能不能模擬?
不管是自己編程還是選用成熟的商用軟件,都需要回答這一問題。所要模擬的物理現(xiàn)象是否滿足計算方法的前提條件。比如說,NS方程是建立在連續(xù)介質(zhì)假設基礎上的,因此對于一些稀薄流體則不能使用該方程,而一些計算 NS方程的數(shù)模軟件自然也無法計算這類物理現(xiàn)象。回答此問題要求模擬者對軟件所使用的算法有深刻的認識,也就是說你所研究的這個問題在不在您所使用軟件的開發(fā)本身的理論范圍內(nèi)。比如,您所研究的理論問題遠遠超出現(xiàn)有您所在領域的基礎理論,那么這個軟件就可能不適合您的問題,或者您是不是要考慮借助該軟件去進行二次開發(fā)呢?
問題3:怎樣去模擬?
怎樣去模擬呢?當然是選用計算機。但是數(shù)模軟件就那么多,你難道不會感到迷惑嗎?但是我們必須理解,是什么導致了計算結(jié)果產(chǎn)生差異?表現(xiàn)在我們自己的模型上是哪些因素?具體到操作中,就要關注幾何模型與計算模型。哪些可以簡化哪些是不能簡化的?我們所做的簡化對計算結(jié)果的影響有多大?這些都是模擬者必須研究的。這一步需要大量的實驗數(shù)據(jù)配合。
問題4:為什么模擬?
這個問題最重要也最有意義。本來是計算完成后要進行的工作,但實際上在模擬計算之前就應當考慮清楚。計算結(jié)果到底如何使用才是模擬真正的目的所在。其實如何使用模擬結(jié)果,分為兩種:一種是用于科研,揭示自然現(xiàn)象以及對已發(fā)生的事實進行再現(xiàn);另一種是用于對現(xiàn)有結(jié)構(gòu)的改進,以提高產(chǎn)品性能。其中第一種多用于研究機構(gòu),第二種多用于工程應用。這兩種結(jié)果對計算精度要求是不一樣的。
問題5:如何提高計算精度?
CFD若要想在工程中得到廣泛的應用,必須克服兩大難點:準確性與可信性。在工程上,尤其是一些關鍵的工程中,誰也不敢輕易的應用一些精度與可信度得不到保證的數(shù)據(jù)。有人會說,在固體計算領域,利用數(shù)值計算方法進行輔助設計已經(jīng)很普遍了啊,用CFD支持設計存在哪些額外的困難呢?
與固體應力計算使用有限單元法不同,目前主流的CFD軟件幾乎都是采用的有限體積法(除了CFX采用混合有限元法與有限體積法外,FLUENT、STAR-CD、Phonecis、Flow-3D等都是采用的有限體積法)。在計算量上來說,相同網(wǎng)格數(shù)量的模型,有限體積法消耗的內(nèi)存要少于有限元法。在有限單元網(wǎng)格中存在的高次單元,其單元節(jié)點位于網(wǎng)格邊的中點及網(wǎng)格體的中心,但是有限體積法中的高階格式,其并非在網(wǎng)格單元中添加節(jié)點,而地更多的利用周圍的節(jié)點。但是正因為如此,有限體積法計算精度要低于有限元法(在相同網(wǎng)格數(shù)量情況下)。影響CFD計算精度及可信度的原因自然不可能全怪罪于算法,更多的是問題存在于使用者及客觀環(huán)境。
CFD軟件是一個黑盒子,利用CFD軟件解決工程問題,軟件使用者對于數(shù)據(jù)流向并不清楚,實際上對于非CFD專業(yè)的人事來說,也不必完全清楚CFD的內(nèi)部運作方式,但是,如何有效的利用當前的軟件,如何最大限度的發(fā)揮當前軟件的計算性能,將計算結(jié)果精度及可信度提高,仍然是非常重要的,也是每一個從事CFD工程應用的人必須注意的。最需要注意的部分包括下面一些內(nèi)容:
(1)影響精度的因素
①算法。一般來說,高階算法的精度要高于低階精度。但是收斂性卻相反,采用高階算法要比低階算法收斂更困難一些。在一些高速流動情況中,采用迎風格式比中心差分格式能更好的收斂,在擴散占優(yōu)的流動中則相反。以 FLUENT為例,其具有一階迎風格式與二階迎風格式、冪律格式、QUICK格式以及三階MUSCL格式。通常一階迎風格式用于初步求解,較少用于最終計算結(jié)果的獲得。QUICK格式在結(jié)構(gòu)網(wǎng)格中具有三階精度且收斂性較好,但是在非結(jié)構(gòu)網(wǎng)格中只有二階精度。二階迎風格式在實際工程中用得非常多。三階MUSCL格式用得較少,收斂性不是很好。
②邊界條件。邊界條件會對計算結(jié)果產(chǎn)生本質(zhì)影響。也就是說,不確切的邊界條件會導致不確切的計算結(jié)果,錯誤的邊界條件一定得不到正確的結(jié)果。在實際工程中,能做為邊界的位置的信息一定是確切的。換句話說,用戶使用不確切的邊界值,責任不在軟件。當然有時候受條件限制得不到邊界物理量,但是,軟件的使用者應當對自己輸入的邊界值負責。
其實相比較固體有限元應力計算,流體邊界值難以測量也是導致計算精度及可信度降低的原因之一。在固體計算中,邊界值可以是力可以是位移,這些都是容易測量的量。但是在流體中,邊界值常常是壓力、速度、流量、體積分數(shù)等物理量,這些量的測量都是對實驗人員的考驗。
③網(wǎng)格。網(wǎng)格是為計算所準備的。也許在將來對NS方程的數(shù)值求解不再依賴于網(wǎng)格呢。由于網(wǎng)格的存在,導致數(shù)值計算永遠得不到真值。這里不去追究數(shù)學方程與真實世界的差異,只分辨數(shù)值計算結(jié)果與數(shù)學方程解的差別。在理論上,只有在計算網(wǎng)格大小為0的時候數(shù)值計算結(jié)果才等同于數(shù)學方程的解,但是大家都知道,網(wǎng)格大小為0是不可能的。同時由于計算機的精度限制,網(wǎng)格尺寸縮小會增加舍入誤差,也就是說,計算精度并不是隨著網(wǎng)格數(shù)量的減小而不斷增加,同時,網(wǎng)格尺寸的減小會增加計算資源的消耗。在進行計算中,常常要進行網(wǎng)格獨立性驗證,也是避免做這類吃力不討好的事情。
④模型。將模型放在精度這里其實是不太合適的,但是不恰當?shù)哪P偷拇_會很大程度上影響到計算精度。例如 FLUENT中的湍流模型有很多種,如零方程模型、一方程模型、雙方程模型等等,不同的模型有其最合適的使用范圍,如果使用不當,勢必會造成計算精度下降。合理的選擇計算模型,不僅僅能提高計算精度,也能提高計算結(jié)果的可信度。但是要合理地選擇模型,很大程度上依賴與使用者的理論功底和對問題的認識程度。
(2)影響可信度的因素
在AIAA的官方文檔中,對于可信度的驗證是有明確的說明的??尚哦韧ǔV笖?shù)學模型與真實世界的差異。在這方面,CFD軟件使用者能控制的部分并不多。主要有以下一些方面。
①幾何模型。有時候為了網(wǎng)格劃分方便或計算資源考慮,簡化了真實模型細節(jié)。例如一些微小特征、將三維模型簡化為二維計算、周期模型等等。需要注意的是,在進行簡化之前,對模型簡化所可能造成的后果有明確的認識。究竟能不能簡化、簡化會不會造成精度的嚴重損失,這些都是需要考慮的。比如計算一段直管中的流動問題,從幾何上來講,可以簡化為平面模型、可以簡化為軸對稱旋轉(zhuǎn)問題、可以簡化為軸對稱問題,但是對于不同的物理情況,能否簡化就很值得商榷。
模型中的細小特征簡化問題也是需要去思考的。將細小模型進行簡化是處于計算資源上的考慮,但若細小特征處于敏感位置,對計算結(jié)果的影響比較大時,能否將其簡化掉則也是必須考慮的問題。
②物理模型?,F(xiàn)實世界是一個復雜的系統(tǒng),我們在進行研究時,不可能考慮所有的影響因素,只能選取一些主要因素去進行考慮。很簡單的例子,NS方程是從三大守恒定律出發(fā)的,所做的假設比較少,但是很遺憾,對于復雜結(jié)構(gòu)直接數(shù)值求解NS方程目前還不可能,于是為了工程需要,對NS方程離散過程進行了一系列的簡化,于是出現(xiàn)了各種湍流模式,出現(xiàn)了各種燃燒模型、多相流模型。
③模型參數(shù)?,F(xiàn)在很多工程軟件都集成了物理模型,其中很多模型參數(shù)都是一些半經(jīng)驗或經(jīng)驗參數(shù),并不一定會適應自己的模型。但是這些模型參數(shù)的獲取是一件非常困難的事情,通常都是通過實驗獲取。
(3)CFD計算結(jié)果的驗證以及計算修正的問題
通常實驗是最好的驗證手段,但是存在一個問題,實驗過程中的參數(shù)很難與計算輸入的參數(shù)完全吻合。對于實際工程問題,采用實驗有時候是唯一的驗證手段。一般來說,數(shù)值計算結(jié)果在工程上與實驗結(jié)果誤差在 10%以內(nèi)是被允許的。在數(shù)值計算結(jié)果與實驗數(shù)據(jù)存在很大差異時,一般進行以下一些步驟的檢查:
①檢查幾何模型。分析是否忽略了關鍵幾何特征、檢查邊界位置是否合適。很多時候邊界位置設得不合適,可能會導致計算振蕩,不收斂等情況發(fā)生。同時由于不同的軟件對于不同的邊界組合方式處理方法存在差異,因此需要選擇合適的邊界組合方式(如FLUENT中壓力邊界與outflow邊界相沖,最好不要同時出現(xiàn),可能導致收斂問題。流量入口邊界收斂要比壓力入口困難)。
②檢查物理模型。是否選用了不合適的模型。每一種模型都有一定的使用范圍,使用者需要對這些使用限制有深刻的認識才能更好的進行選擇。例如FLUENT中,湍流模型有很多,標準K-E模型適合一般的工程流動問題,但是對于強旋流誤差較大,RNGK-E模型適合旋轉(zhuǎn)流動湍流計算,SA模型適合航空外流計算K-W適合邊界層計算,雷諾模型適合各向異性湍流的計算,但是計算量大不易收斂。因此在進行選擇需要仔細的考慮選擇的模型是否適合自己的問題,一旦模型選擇錯誤,輕則造成大的誤差,重則不收斂計算出錯。
③檢查是否忽略了不該忽略的物理現(xiàn)象。例如計算復雜幾何模型時出現(xiàn)大的負壓區(qū),是否需要考慮空化。計算高壓氣體時,是否考慮可壓縮性,是否考慮粘性熱。還有一些情況下,是否考慮蒸發(fā)、冷凝等相變情況。有時候這些物理現(xiàn)象會導致計算的不收斂乃至計算錯誤。
④優(yōu)化網(wǎng)格。網(wǎng)格質(zhì)量始終是CFD工程師們的努力內(nèi)容。好的網(wǎng)格質(zhì)量能夠增強收斂、提高計算精度、減少計算時間。因此在時間充足的情況下,盡可能的去提高網(wǎng)格質(zhì)量。同時,對于流動情況復雜的區(qū)域進行網(wǎng)格加密處理。在計算結(jié)果達到要求后,還需要進行網(wǎng)格獨立性驗證。
⑤邊界條件檢查。測量精度是否滿足要求?若邊界信息不是通過儀器測量得出而是通過計算,那么采用的公式使用條件是否能夠接受?
總之,雖然 CFD的輸入輸出較為簡單,但是要想得到比較好的計算結(jié)果實際上是相當?shù)睦щy的,不但需要良好的實驗設備的支持,更需要使用者擁有深厚的理論功底。只有擁有良好的理論功底,才有可能將 CFD更好的應用于工程中,更好的讓CFD指導產(chǎn)品設計。
五、CFD的理論基礎
CFD目前很火,從學生的畢業(yè)論文采用CFD的數(shù)量可以看出來。但是我發(fā)現(xiàn)很多人其實并不明白什么是 CFD,他們想當然的以為 CFD就是 fluent,cfx,star-cd之類的軟件。這從一開始就走入了誤區(qū),導致他們將巨量的時間都耗費在這些軟件的學習上。到最后,碰到實際問題依然茫然不知所措,依舊不知道采用CFD的目的。很多時候我們根本就不曾考慮到這些,在現(xiàn)在的大學校園里到處都充斥著一種急功近利的想法,而CFD軟件正好迎合了他們的口味,不管你會不會流體,不管你的力學數(shù)學背景有沒有,軟件總能給予人們漂亮的結(jié)果,至于計算結(jié)果的合理性及有效性則很少有人去深究。
這個詞我們第一反應就是數(shù)值計算。那么數(shù)值計算涉及到哪些內(nèi)容呢?最基本的就是算法了,當然還得包含有算法的穩(wěn)定性、收斂性及誤差分析等等。這些研究內(nèi)容都被深深的藏在CFD軟件中,用戶很少能進行干涉的。
然后是 fluid,這個詞直譯為“流體”,也可以翻譯為流動。試問有多少人能夠準確的說出流體的概念。有人會問固體顆粒應當是定義為流體還是定義為固體。我都不知道該如何去回答。其實流體是一個相對與空間尺度來講的概念。常見的流體有氣體和液體。但是氣體和液體是不是一定是流體呢,也不一定。在一個非常小的空間尺度,比如說分子水平,我們當然不能將氣體或液體分子當做流體。還有就是濃度,在濃度非常稀薄的區(qū)域,我們也不能將其當做流體。固體呢,在一些場合我們是可以當做流體的,比如說粉塵,比如說泥石流中的石塊,都可以當做流體。計算CFD是研究流體的,所以,是不可能包含固體壁面的變形計算的,涉及到固體的CFD能做的大概也就是熱傳導了。
再說 dynamic,動態(tài)的,動力的。CFD計算的是運動的流體或者說是流體的運動。靜止的是沒有辦法計算的。當然現(xiàn)在的一些CFD軟件也包含了靜止流體的計算。
簡單的說,CFD基于基本的輸運方程,主要解決研究問題中的流體流動與換熱問題。到底該如何去學習?那么應當包含以下幾個方面的理論基礎:
(1 )數(shù)學方面:數(shù)值分析、數(shù)學物理方程、偏微分方程的數(shù)值解法;
(2 )專業(yè)方面:流體力學、傳熱學、燃燒學、計算流體力學、計算傳熱學、計算燃燒學;
(3)編程方面:最好能會點C語言、matlab等等;
(4)相關研究問題方面相關的專門的CFD書籍。
六、常用的CFD軟件
6.1前處理軟件
前處理軟件很多,首先肯定是各種網(wǎng)格劃分軟件。網(wǎng)格劃分軟件就是一種典型的前處理器。網(wǎng)格劃分軟件有很多。不過我們只要使用幾個有代表性的就可以了。通常流體計算中最著名的前處理器包括:Gmabit、ICEM CFD,Gridgen,TureGrid,gridPro等,固體計算中常用的前處理器有:Hypermesh,ANSA,patran,femap等。當然這些軟件存在交叉,比如ICEM CFD,hypermesh既可以劃分固體網(wǎng)格也可以劃分流體網(wǎng)格。用得最多的還是ICEM CFD。
6.2求解器
CFD求解器數(shù)量要遠多于前處理器及后處理器。但是我們通常聽到或見到的只是一些通用求解器,例如CFX, FLUENT, STAR-CD, phonecis等等。這些通用求解器的應用范圍很廣,而且應用于工業(yè)上精度還行。它們各自有各自的優(yōu)點。比如star-cd做燃燒很強,目前廣泛應用于內(nèi)燃機燃燒模擬,FLUENT在各方面表現(xiàn)比較均衡,在不可壓縮領域處于絕對領先地位,而且其動網(wǎng)格技術也別具特色。CFX的用戶界面我認為最符合使用者的習慣,而且自從被ansys公司收購后,目前被整合在workbench中,與ansys進行雙向流固耦合計算,比較方便。當然,fluent也被ansys收購,遺憾的是,目前尚不能與ansys進行雙向流固耦合,只能進行單向耦合計算。除了這些最著名的通用計算軟件外,還有比如flow-3d適合自由界面捕捉,在VOF方面有獨特造詣,適合于鑄造、水利等行業(yè)。Numeca是專為葉輪機械設計的,在葉輪機械建模、分網(wǎng)、計算方面獨領風騷。Pumlinx是一款專門針對泵進行計算的軟件,在泵設計中有自己的特色。Star-ccm+號稱是新一代流體計算軟件,沿襲了star-cd的特色,界面上更加友好。Esi-cfd是cfdrc軟件被ESI公司收購后換的新名字,其中的fastran在超高音速計算方面特別有優(yōu)勢。當然,流體計算軟件遠不止上面列舉的這些,我們可以根據(jù)實際工作需要,選取最適合的軟件。
6.3后處理軟件
在CFD后處理方面,目前應用最多的可能是tecpolt。我想原因大概有以下一些: tecplot體積小巧,功能比較強大,一般CFD需要的后處理功能它都具備;tecplot比較容易學習,不像一些高端后處理軟件如ensigh,難以入門;tecplot擁有的數(shù)據(jù)接口很多,可以讀入非常多的CFD計算數(shù)據(jù)。
其實,CFX的后處理軟件CFX-POST也是一款非常好的后處理工具,現(xiàn)在新版本的ANSYS中已經(jīng)將其改名為CFD-POST。利用CFD-POST我們可以制作出非常專業(yè)的后處理圖形、曲線、數(shù)據(jù)、視頻等。
相關標簽搜索:漫話CFD(二)——來自熱管理_磚家的分享 ansys-cfx流體分析培訓 CFX培訓 cfx技術教程 cfx資料下載 cfx視頻教程 cfx學習資料 cfx軟件下載 ansys cfx編程二次開發(fā) CFX代做 CFX基礎知識 Fluent、CFX流體分析 HFSS電磁分析