The Open Source CFD Toolbox用戶(hù)手冊(cè)翻譯_第1頁(yè)
The Open Source CFD Toolbox用戶(hù)手冊(cè)翻譯_第2頁(yè)
The Open Source CFD Toolbox用戶(hù)手冊(cè)翻譯_第3頁(yè)
The Open Source CFD Toolbox用戶(hù)手冊(cè)翻譯_第4頁(yè)
The Open Source CFD Toolbox用戶(hù)手冊(cè)翻譯_第5頁(yè)
已閱讀5頁(yè),還剩103頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Open?FOAMTheOpenSourceCFDToolboxUserGuideVersion2.3.05thFebruary2014注:1、藍(lán)色部分為個(gè)人標(biāo)注2、省略了部分章節(jié)內(nèi)容3、部分內(nèi)容翻譯不到位,請(qǐng)參考原文PAGE\*ROMANPAGE\*ROMANIV目錄第1章引言 1第2章指導(dǎo)案例 1cavityflow 2前處理 2查看網(wǎng)格 8求解 9后處理 9增大網(wǎng)格分辨率(密度)Increasingthemeshresolution 12meshgrading 16增加雷諾數(shù) 19高雷諾數(shù)流動(dòng) 20改變案例幾何結(jié)構(gòu) 22后處理修正的幾何結(jié)構(gòu) 24帶孔板的應(yīng)力分析 25網(wǎng)格生成 26運(yùn)行代碼 32后處理 322.2.4練習(xí) 34水壩崩塌 34網(wǎng)格生成 35邊界條件 36初始場(chǎng)設(shè)置 37流體屬性 38紊流模型 38時(shí)間步長(zhǎng)控制 38離散方法 39線(xiàn)性求解器控制 40運(yùn)行代碼 40后處理 402.3.11并行 412.3.12并行運(yùn)算的后處理 42andlibraries 43OpenFOAM程序設(shè)計(jì)語(yǔ)言 44一般語(yǔ)言 44與C++ 44方程表達(dá) 44求解器代碼 45編譯(Compiling)應(yīng)用和庫(kù) 45頭文件.H 45編譯 46系列表wclean、rmdepall 49編譯舉例:pisoFoam 49messagingandoptimisationswitches 52將用戶(hù)定義的庫(kù)鏈接到已存在的應(yīng)用 52運(yùn)行應(yīng)用 52并行運(yùn)算 53網(wǎng)格和初始場(chǎng)數(shù)據(jù)的分解 53運(yùn)行分解的案例 54跨磁盤(pán)分解數(shù)據(jù) 54并行案例后處理 55標(biāo)準(zhǔn)求解器 55標(biāo)準(zhǔn)應(yīng)用 55標(biāo)準(zhǔn)庫(kù) 55第4章OpenFOAM案例 55案例的文件結(jié)構(gòu) 56基本輸入輸出格式 56通用語(yǔ)法規(guī)則 564.2.2詞庫(kù) 564.2.3數(shù)據(jù)文件標(biāo)題 574.2.4列表 57標(biāo)量,矢量與張量 58位Dimensionalunits 58types 594.2.8場(chǎng) 59andmacrosubstitutions 59指令#include和#inputMode 59指令#codeStream 60時(shí)間、數(shù)據(jù)的輸入輸出控制 60Numericalschemes 61schemes 62normalgradientschemes 63梯度方法 64方法Laplacianschemes 64schemes 64時(shí)間方法 65通量計(jì)算 65求解和算法控制 65線(xiàn)性求解器控制 66under-relaxation 67算法 68其他參數(shù) 69第5章網(wǎng)格生成與轉(zhuǎn)化 69網(wǎng)格描述 69網(wǎng)格規(guī)格和有效約束 69polyMesh簡(jiǎn)介 70cellShape工具 71一維、二維及軸對(duì)稱(chēng)問(wèn)題 72邊界boundary 73指定邊界面片類(lèi)型 73base類(lèi)型 75Primitive類(lèi)型 75Derived類(lèi)型 76blockMesh進(jìn)行網(wǎng)格劃分 77文件 77多個(gè)塊 80創(chuàng)建少于8個(gè)頂點(diǎn)的塊 80blockMesh 81生成網(wǎng)格 81snappyHexMesh網(wǎng)格生成過(guò)程 81創(chuàng)建背景六面體網(wǎng)格 82在特性邊緣和表面拆分單元 82移除單元 84指定的區(qū)域的單元拆分 84貼合表面 85網(wǎng)格層 86網(wǎng)格質(zhì)量控制 87網(wǎng)格轉(zhuǎn)化 88fluentMeshToFoam 885.5.2~5.5.4略 89mapFields不同幾何形狀之間映射場(chǎng) 89一致場(chǎng)的映射 89非一致場(chǎng)的映射 89映射并行案例 90第6章后處理 90paraFoam 90paraFoam概述 90Properties面板 91Display面板 92工具條 92視圖操作 93等值線(xiàn)繪制 936.1.8流線(xiàn) 94圖像輸出 94動(dòng)畫(huà)輸出 94Fluent后處理 94Fieldview后處理 95EnSight后處理(略) 96數(shù)據(jù)取樣 96任務(wù)的監(jiān)控與管理 98foamJob腳本 98foamLog腳本 98第7章模型和物理特性 99熱物理模型 99熱物理特性數(shù)據(jù) 101紊流模型 102模型系數(shù) 103壁面函數(shù) 103PAGEPAGE1031章引言本教程隨OpenFOAM2.3C++庫(kù)同時(shí)發(fā)布,描述了OpenFOAMOpenFOAM的各個(gè)組成部分。OpenOAM首先是一種+appcaonsappcaons分成兩類(lèi):求解器(soers,用來(lái)解決特定的連續(xù)介質(zhì)力學(xué)(connuumechancs)問(wèn)題;實(shí)用程序(utesdaaanpuaionOFsoer和utes,3章進(jìn)行詳細(xì)介紹。OpenFOAM有一個(gè)強(qiáng)大的功能,就是掌握必要的數(shù)學(xué)、物理和編程技術(shù)等知識(shí)的用戶(hù)可以創(chuàng)建solversutilities。OpenFOAM需要前處理和后處理環(huán)境。前處理、后處理的接口就是OF應(yīng)用本身,從而確保協(xié)調(diào)的數(shù)據(jù)傳輸環(huán)境。OFFigure1.14OF的運(yùn)行案例。第5章講的是用OF提供的網(wǎng)格生成器(meshgenerator)劃分網(wǎng)格,以及利用第三方軟件進(jìn)行網(wǎng)格數(shù)據(jù)6章介紹后處理。2章指導(dǎo)案例這一章詳細(xì)描述了一些OF指導(dǎo)案例的設(shè)置、模擬和后處理,其首要目的是讓用戶(hù)了解運(yùn)行OF的基本流程。指導(dǎo)案例在$FOAM_TUTORIALS目錄中,為使用OF提供的所有求解器和許多實(shí)用程序(utilities)OF。指導(dǎo)案例描述了預(yù)處理(pre-processing)工具blockMesh的使用,案例設(shè)置,OF求解器的運(yùn)行以及使用paraoam進(jìn)行后處理(posprocessng。使用OF支持的第三方后處理軟件的用戶(hù)可以按paraFoam6章的第三方軟件使用說(shuō)明。OF安裝目錄下的tutorials文件夾包含所有的指導(dǎo)案例文件。指導(dǎo)案例文件根據(jù)流動(dòng)類(lèi)型分在不同的目錄下,對(duì)應(yīng)子目錄根據(jù)求解器分類(lèi)。例如,所有icoFoam的案例存儲(chǔ)在“incompressible/cooamncopressbeuorals目錄復(fù)制到本地運(yùn)行目錄。命令如下:-pcavityflow本案例的設(shè)定為二維正方形區(qū)域內(nèi)的絕熱(isothermal)不可壓縮(incompressible)流動(dòng)。如圖所示,該正方形區(qū)域的所有邊界均為壁面,上方的壁面沿x方向以1米/秒的速度移動(dòng),其他3amnarcooam流等溫不可壓流動(dòng)。在本案例中,將研究細(xì)化網(wǎng)格和網(wǎng)格向壁面分級(jí)(意思是沿朝向壁面的方向逐漸細(xì)化網(wǎng)格,從而形成一定的網(wǎng)格密度變化梯度)的效果。最終,流動(dòng)雷諾數(shù)(Reynoldsnumber)增加,必須使用用于絕熱不可壓縮紊流(turbulent)pisoFoam求解器。前處理OF案例的設(shè)置是通過(guò)編輯案例的文檔來(lái)實(shí)現(xiàn)的,用戶(hù)應(yīng)選擇一個(gè)編輯器進(jìn)行前處meshfedsproeresconrolparaeers)4.1節(jié)所述,這些數(shù)據(jù)存儲(chǔ)在案例目錄下的一組文件中,而不是單個(gè)文件。cavity。在編輯案例文件cavity案例之前,用戶(hù)應(yīng)打開(kāi)該案例的目錄:cdMeshgenerationF(aresancoordnessemOFempty邊界條件,這些邊界垂直于不需要求解的第三維,從而來(lái)求解二維問(wèn)題。2.2OFblockMeshblockMeshDict(在給目錄下)blockMeshDict如下所示:/*/*|=========*-C++-*||\\|\\ /| \\/| \\/\*FoamFile/FieldOperation|OpenFOAM:TheOpenSourceCFDToolbox|Version:2.3.0And|Web:www.OpenFOAM.orgManipulation|*\|||||*/{versionformatclassobject2.0;ascii;//存儲(chǔ)形式二進(jìn)制或者asciidictionary;//類(lèi)名blockMeshDict; //對(duì)象名,與文件名一致}//*************************************//convertToMeters0.1;//單位轉(zhuǎn)換,也就是說(shuō)下面所有點(diǎn)都要乘以0.1才是真值vertices//頂點(diǎn)((000)(100)(110)(010)(000.1)(100.1)(110.1)(010.1));(hex01234567//塊的頂點(diǎn)編號(hào)(20(20201//各向網(wǎng)格數(shù)simpleGrading111)//梯度);();boundary(movingWall{typewall;faces((3762));}fixedWalls{typewall;faces((0473)(2651)(1540));}frontAndBack{typeempty;faces((0321)(4567));});mergePatchPairs//需要和在一起的patch對(duì)();//*************************************************************************//文件的前7行以標(biāo)語(yǔ)的形式展示了頭信息,后面是FoamFile子目錄中的文件信息,用{...}大括號(hào)定界。FomFie中首先指定該區(qū)域頂點(diǎn)的坐標(biāo)(coornaesofheertexertces,然后通過(guò)頂點(diǎn)標(biāo)號(hào)(erexabes)和單元(cel)個(gè)數(shù)定義塊(bock,最后,定義邊界面片(boudarypaches。5.3blockMeshDict文件中輸入項(xiàng)的含義。blockMesh根據(jù)blockMeshDict文件生成網(wǎng)格。在本實(shí)例目錄中,只需在終端輸入:終端會(huì)自動(dòng)顯示blockMesh運(yùn)行報(bào)告。如果出現(xiàn)錯(cuò)誤信息,用戶(hù)應(yīng)修改文件相關(guān)內(nèi)容,以保證該階段不會(huì)出現(xiàn)任何錯(cuò)誤。Boundaryandinitialconditions網(wǎng)格生成以后,用戶(hù)可以查看案例的初始場(chǎng)設(shè)置文件。本案例開(kāi)始時(shí)間設(shè)為0s,cavity/0/目錄下。它包括兩個(gè)文件,pU。壓力(p)和速度(U)p的內(nèi)容:dimensionsdimensions[02-20000];internalField uniform0;boundaryFieldboundaryField{movingWall{type}zeroGradient;fixedWalls{type}zeroGradient;frontAndBack{type}empty;}3個(gè)輸入項(xiàng):dimensions:場(chǎng)數(shù)據(jù)的度量方式(單位的指數(shù),有7個(gè)參數(shù),依次為質(zhì)量、長(zhǎng)度、時(shí)間、溫度、(nemacpressure(/ρ的單位為ms即[0220000](4.2.6節(jié);internalField:內(nèi)部場(chǎng),可以是uniform,均勻的,由單一值確定;也可以是nonuniform,非均勻的,場(chǎng)所有數(shù)據(jù)必須指定。(4.2.8節(jié))boundaryField:邊界的場(chǎng)數(shù)據(jù),包括所有邊界面片(movingWall等)(詳細(xì)信息4.2.8節(jié))對(duì)于本實(shí)例caty,邊界僅由壁面組成,并可分為兩種(面片為自定義的名稱(chēng),非標(biāo)準(zhǔn)1)fxedl(2)ovnl:移動(dòng)墻,即頂蓋。由于兩者都是壁面,其邊界條件均設(shè)成了zeroGradientfrontAndBack代表二維情況下的前后empty該實(shí)例中,正如大多數(shù)我們遇到的情況一樣,初始場(chǎng)設(shè)為均勻的。在這里,壓力指運(yùn)動(dòng)學(xué)壓力,uniform0。用戶(hù)可用同樣的方式查看cavity/0/U文件中的速度場(chǎng)。dimensionsdimensions[01-10000];internalField uniform(000);boundaryField{movingWall{typevalue}fixedValue;uniform(100);fixedWalls{typevalue}fixedValue;uniform(000);frontAndBack{type}empty;}dimensions為速度單位的指數(shù);nernaleld初始化為unformero3unform(0004.2.5節(jié);boundaryField方面,要求frontAndBack的邊界條件相同;fixedWalls假定無(wú)滑移,故其類(lèi)型為fxedue,值為unform(000;頂面以1s的速度沿xfxedueuniform(100)值。Physicalproperties實(shí)例的物理屬性存儲(chǔ)在Dictionaries目錄下后綴為Properties的文件里。對(duì)于icoFoam案例,只需指定運(yùn)動(dòng)粘度(存儲(chǔ)在transportProperties中。用戶(hù)可以通過(guò)打開(kāi)或編輯transportProperties的入口參數(shù)來(lái)檢查運(yùn)動(dòng)粘度(kinematicviscosity)是否已經(jīng)正確設(shè)置。運(yùn)動(dòng)粘度的關(guān)鍵字是nu,在方程中用同音的希臘字母代表。案例的初始雷諾數(shù)(Reynoldsnumber)為10,其中雷諾數(shù)定義為:Re=d|U|/ (2.1)式中,d和|U|分別為特征長(zhǎng)度和特征速度,為運(yùn)動(dòng)粘度。此處d=0.1m,|U|=1m/s,所以Re=10時(shí),nu[02-1nu[02-10000]0.01;controlDictcontrolDict文件包含與時(shí)間控制、求解數(shù)據(jù)的讀取和存儲(chǔ)相關(guān)的輸入數(shù)據(jù)。它位于system目錄下。運(yùn)行的開(kāi)始/結(jié)束時(shí)刻及時(shí)間步長(zhǎng)必須設(shè)置。OF的時(shí)間控制方式十分靈活,詳細(xì)描述見(jiàn)4.3節(jié)。在這個(gè)教程中將開(kāi)始運(yùn)行時(shí)刻設(shè)為t=0,這意味著OF要從文件夾0讀取流場(chǎng)數(shù)據(jù)(案例文件結(jié)構(gòu)詳4.1節(jié)startFromstartTime0。對(duì)于結(jié)束時(shí)間,我們希望獲得繞腔體循環(huán)流動(dòng)時(shí)的穩(wěn)態(tài)解。一般而言,層流中,流體通過(guò)該區(qū)域10次才能達(dá)到穩(wěn)態(tài)。在這個(gè)實(shí)例中,腔體沒(méi)有進(jìn)口也沒(méi)有出口,因此流體無(wú)法通過(guò)該區(qū)域。取而代之的方法是,將蓋子穿過(guò)腔體10次所用的時(shí)間設(shè)為結(jié)束時(shí)間,即1s;事實(shí)上,事后發(fā)現(xiàn)0.5s就stopAtendTime0.5?,F(xiàn)在我們需要設(shè)置時(shí)間步長(zhǎng),由關(guān)鍵詞deltaT代表。為保證運(yùn)行icoFoam時(shí)的瞬時(shí)精確性和數(shù)值穩(wěn)定性,要求庫(kù)朗數(shù)(Courantnumber)1。對(duì)于一個(gè)單元,庫(kù)朗數(shù)定義如下:Co=δt|U|/δx (2.2)其中δt是時(shí)間步長(zhǎng),|U|是通過(guò)單元的速度大小,δx是該速度方向上的單元尺寸。流Co<1。整個(gè)區(qū)域的單元尺寸固定,所1m/s。單元尺寸為δx=d/n=0.1/20=0.005m (2.3)因此為了達(dá)到全部區(qū)域內(nèi)Co<=1,時(shí)間步長(zhǎng)deltaT的設(shè)置必須小于等于δt=Coδx/|U|=1×0.005/1=0.005s (2.4)我們希望模擬過(guò)程中每隔一段時(shí)間記錄一次結(jié)果,以便在后處理中查看。關(guān)鍵詞writeControl表示記錄結(jié)果的時(shí)間的設(shè)置方式,這里我們選擇timeStep,代表每隔n次時(shí)間步長(zhǎng)輸出一次結(jié)果,其中n值由關(guān)鍵詞writeInterval0.1,0.2,...,0.5s0.005s20writeInterval20。OF(求解時(shí))會(huì)創(chuàng)建以當(dāng)前時(shí)間命名的文件夾,例如0.1,每個(gè)文件夾中都包含一系列的數(shù)據(jù)applicationicoFoam;startFromstartTime;startTime0;stopAtendTime;endTime0.5;deltaT0.005;//當(dāng)前case所用求解器的名字(在4.1applicationicoFoam;startFromstartTime;startTime0;stopAtendTime;endTime0.5;deltaT0.005;//當(dāng)前case所用求解器的名字writeControltimeStep;writeControltimeStep;writeInterval20;purgeWrite0;writeFormatascii;writePrecision6;writeCompressionoff;//按照時(shí)間步長(zhǎng)寫(xiě),也可以為runTime//20個(gè)時(shí)間步長(zhǎng)寫(xiě)一次(如果按照時(shí)間來(lái)寫(xiě)的話(huà)為1)//寫(xiě)過(guò)程是否覆蓋,如果0則不覆蓋,大于0為覆蓋。//文件寫(xiě)入精度//是否對(duì)生成數(shù)據(jù)進(jìn)行壓縮timeFormatgeneral;/*時(shí)間文件夾格式:fixedm.dd…,d的個(gè)數(shù)取決于timePrecision;scientific:科學(xué)計(jì)數(shù)法;general:科學(xué)計(jì)數(shù)法,指數(shù)小于-44*/timePrecision6;runTimeModifiabletrue; //在求解過(guò)程中是否允許修改以上參數(shù)Discretisationandlinear-solversettings用戶(hù)可以在system目錄下fvSchemes詞庫(kù)中指定選擇有限體積離散法。用戶(hù)可以在fvSolution詞庫(kù)(同在system目錄下)中指定線(xiàn)性方程求解器規(guī)范、限差和其他算法控制。用戶(hù)可以自由的查看這些詞庫(kù)類(lèi),但是在它們的入口函數(shù)中,我們目前只需要掌握f(shuō)vSolution詞庫(kù)中PISO子詞庫(kù)下的pRefCell和pRefValue。腔體為封閉系統(tǒng),用的是相對(duì)壓力(是壓力范圍而不是絕對(duì)值。在這種情況下,求解器在pRefCell單元中通過(guò)pRefValue設(shè)置一個(gè)相對(duì)值,在該實(shí)例中都設(shè)為0。改變其中任何一個(gè)的值都會(huì)改變絕對(duì)壓力場(chǎng),而不會(huì)改變相對(duì)壓力場(chǎng)或速度場(chǎng)。fvSolution文件如下:solverssolvers{p{solver PCG;preconditioner DIC;tolerance relTol 0;//壓力采用預(yù)條件共軛梯度法(主要求解對(duì)稱(chēng)矩陣)Cholesky//公差//相對(duì)公差}U{solversmoothertolerancerelTolsmoothSolver;symGaussSeidel;1e-05;0;}}PISO{nCorrectors2;nNonOrthogonalCorrectors0;pRefCell 0;pRefValue 0;//修正次數(shù)//非正交修正次數(shù)//壓力參考單元的編號(hào)//壓力參考值}ddtSchemes{default}ddtSchemes{default}//非穩(wěn)態(tài)格式Euler;//默認(rèn)采用歐拉離散gradSchemes{}divSchemes{defaultdiv(phi,U)}none;Gausslinear;//散度的離散(必須指定沒(méi)有默認(rèn)值)//對(duì)流項(xiàng)離散,高斯理論,采用線(xiàn)性插值defaultGausslinear;//梯度離散采用高斯方法,線(xiàn)性插值grad(p)Gausslinear;//壓力的梯度離散laplacianSchemes{default Gausslinearorthogonal;//拉普拉斯項(xiàng)離散,必須指定}interpolationSchemes{default linear; //默認(rèn)線(xiàn)性插值}snGradSchemes{defaultorthogonal;//梯度法向分量//默認(rèn)正交}fluxRequired{defaultno;//是否計(jì)算通量p};//壓力需要計(jì)算,因?yàn)樾枰脡毫ν啃拚俣炔榭淳W(wǎng)格在實(shí)例運(yùn)行前,最好查看一下網(wǎng)格以檢查是否有錯(cuò)。用戶(hù)可通過(guò)OpenFOAM提供的后處理工具paraFoam查看網(wǎng)格,其啟動(dòng)方式為,在終端案例目錄下輸入:也可以使用可選參數(shù)-case來(lái)指定案例目錄從而啟動(dòng)paraFoam:ParaView6.1PipelineBrowserParaView已經(jīng)打開(kāi)了cavity案例模塊cavity.OpenFOAM。在點(diǎn)擊Apply按鈕前,用戶(hù)需要從MeshParts面板上選擇一些幾何結(jié)構(gòu)。因?yàn)樵摪咐苄。脩?hù)可以選擇MeshParts標(biāo)題下的所有選項(xiàng),這樣就可以自動(dòng)檢查各個(gè)面板ApplyParaView中。之后打開(kāi)Display面板,其控制著所選模塊的可視化重現(xiàn)。在Display面板中,用戶(hù)需要執(zhí)行的操作如圖2.3(1)設(shè)置oor為odoor(2)點(diǎn)擊etoidoor選擇適當(dāng)?shù)念伾?,如黑色(?duì)于白色背景(3)在le面板中,epresenaon項(xiàng)選擇refrae。背景顏色可以在頂EditViewSettings...來(lái)設(shè)置。用戶(hù)啟動(dòng)ParaView時(shí),尤其是第一次,必須能夠熟練地操作(見(jiàn)6.1.5節(jié)。特別的,該二維案例應(yīng)進(jìn)行如下設(shè)置:打開(kāi)Edit—ViewSettings窗口,在General面板中必須選擇UseParallelProjection,在Annotation窗口中可選擇性地勾選OrientationAxes,也可以通過(guò)鼠標(biāo)拖曳來(lái)移動(dòng)。求解與所有UNIX/Linux可執(zhí)行軟件一樣,OpenFOAM的應(yīng)用程序可以按以下兩種方式運(yùn)行:前臺(tái)程序,shell要等到其命令結(jié)束之后才可以執(zhí)行其他命令;后臺(tái)程序,shell不需要等待其結(jié)束就可以執(zhí)行其他命令本案例中使用前臺(tái)程序的方式運(yùn)行icoFoam。icoFoam求解器的執(zhí)行方式,一是可以進(jìn)入案例目錄,在命令提示符處輸入:二是使用可選參數(shù)-case來(lái)指定案例目錄:終端窗口會(huì)顯示程序的進(jìn)程,包括當(dāng)前時(shí)間,最大庫(kù)朗數(shù),所有場(chǎng)的初始值及最終值。后處理時(shí)間目錄中生成結(jié)果文件后,就可以用paraFoam來(lái)查看?;氐絧araFoam窗口,并且選擇cavity.OpenFOAM模塊的Properties面板。如果案例模塊的窗口面板在任何時(shí)刻都不能正常顯示,則應(yīng)檢查cavity.OpenFOAM是否調(diào)為高亮藍(lán)色;旁邊的eye按鈕是否已經(jīng)打開(kāi)。為了得到最終的數(shù)據(jù),首先將運(yùn)行時(shí)間調(diào)至0.5s。如果打開(kāi)ParaFoam時(shí)求解器還在運(yùn)行,那么時(shí)間目錄中的輸出數(shù)據(jù)不會(huì)自動(dòng)加載到Paraview中,此時(shí)在Properties窗口中單擊RefreshTimes,ParaView中。Isosurfaceandcontourplots為查看壓力,用戶(hù)應(yīng)該打開(kāi)Disply面板,因?yàn)樗刂浦x模型的可視化表現(xiàn)。為繪制一個(gè)簡(jiǎn)單2.4Style面板中,RepresentationSurfaceColor(p)RescaletoDataRanget=0.5sVCRControls或者CurrentTimeControls(位于ParaView窗口頂部菜單下方的工具欄中,見(jiàn)圖6.4)將時(shí)間設(shè)為0.5,壓力場(chǎng)如預(yù)期一2.5所示。通過(guò)點(diǎn)圖標(biāo)(。p,壓力場(chǎng)在各個(gè)單元間內(nèi)插,從而得到連續(xù)的流場(chǎng)。相反的,如果用戶(hù)選擇單元圖標(biāo),在每個(gè)單元上就是一個(gè)單獨(dú)的壓力值,所以每個(gè)單元都由單一的顏色表示而沒(méi)有梯度。ActiveVariableControlsToggleColorLegendVisibilityView菜單選擇ShowColorLegend,即可調(diào)出顏色棒圖。點(diǎn)擊ActiveVariableControlsDisply窗口中Color面板中的EditColorMap按鈕,用戶(hù)就可以設(shè)置顏色棒圖特性的范圍,比如文字大小,字型選擇及尺度計(jì)數(shù)形式等。通過(guò)鼠標(biāo)拖動(dòng)可以改變顏色棒圖在圖像窗口的位置。ParaView(彩虹色。ParaViewColorScaleEditor中選擇hoosereset(初調(diào)ueoedanbowOKMakeDefaultParaView一直采用這種顏色色棒。如果用戶(hù)旋轉(zhuǎn)圖像,可以發(fā)現(xiàn)整個(gè)幾何表面的都按壓力上色了。為產(chǎn)生真實(shí)的等值線(xiàn),用戶(hù)首sc(切片ice6.1..1節(jié)描述。切割面中心在(0.05,0.05,0.005),垂直線(xiàn)設(shè)為(0,0,1)。一旦產(chǎn)生了切割面,通過(guò)使用6.1.6節(jié)Contourfilter來(lái)產(chǎn)生等值線(xiàn)。VectorplotsSlice及Contourfilters。PipelineBrowserPropertiesDelete,從而整體PipelineBrowsereye按鈕來(lái)使其處于不工作狀態(tài)。ecorlph的數(shù)據(jù),如節(jié)所述。在PipelineBrowser中使cavity.OpenFOAM模塊高亮,選擇Filter->Alphabetical->CellCentersApply。在peinerowser中使eners高亮,然后在ler->Aphabecal菜單中選擇Gph(點(diǎn)符,則Properties窗口應(yīng)該如圖2.6所示,在Properties面板中,vectors項(xiàng)自動(dòng)確定為速度場(chǎng)U,因?yàn)樗悄壳拔ㄒ坏氖噶繄?chǎng);ScaleMode默認(rèn)為速度的VectorMagnitude,但是由于我們想看到貫穿整個(gè)區(qū)域的速度,應(yīng)該選擇off,SetScaleFactor為0.005如白色。用戶(hù)應(yīng)該根據(jù)速度大小用顏色標(biāo)識(shí)圖像,通過(guò)在Disply面板中設(shè)置ColorbyU來(lái)控制,也EditColorMapShowColorLegend(圖例2.7所示,在圖中,大寫(xiě)的Timesomanfons是在ooreendAuomacabelormatabelormat文字框中輸入%-#6.2f2ViewSettingsGeneral面板中設(shè)置背景節(jié)描述。Streamlineplots同樣的,在ParaView中繼續(xù)后處理之前,要退出之前所描述的矢量繪制等模塊,現(xiàn)在繪制速度的流線(xiàn)(6.1.8節(jié))PipelineBrowsercavity.OpenFOAMFilter->StreamTracerProperties2.8所示進(jìn)行設(shè)置。Seedtype選擇LineSource,并將其指定為垂直于幾何中心的直線(xiàn),即點(diǎn)(0.05,0,0.005)到點(diǎn)(0.05,0.1,0.005)的直線(xiàn)(注:流線(xiàn)的原點(diǎn)在指定的直線(xiàn)上,即所繪制的流線(xiàn)只包含經(jīng)過(guò)該直線(xiàn)的部分,因此指定一條z向并穿過(guò)幾何體中心的直線(xiàn)可以顯示XY平面內(nèi)的所有流線(xiàn)。圖中所使用的參數(shù)為:原點(diǎn)的Resolution為21;MaxPropagation為L(zhǎng)ength->0.5;StepLengthCellLength->0.01;IntegrationDirectionBOTH。IntegratorType默認(rèn)使用Runge-Kutta2。ler->eNun.des6;Radius0.0003;Radiusfactor10Apply2.9所示。增大網(wǎng)格分辨率(密度)Increasingthemeshresolution然后對(duì)比細(xì)網(wǎng)格與粗網(wǎng)格的求解結(jié)果。Creatinganewcaseusinganexistingcase根據(jù)cavity創(chuàng)建一個(gè)名為cavityFine的新案例,需要復(fù)制cavitycavity相同的目錄下創(chuàng)建一個(gè)新的案例文件,如:cdcavitycavityFinecavityFine案例:cp-rcp-rcdCreatingthefinermeshblockMesh增加網(wǎng)格單元數(shù)。打開(kāi)blockMeshDictblock的指定信息。blocks關(guān)鍵詞下的列表中指定了其參數(shù)。Block定義的句法結(jié)構(gòu)見(jiàn)節(jié)的完整描述;在該階段只需要知道hex后面首先是塊頂點(diǎn)的列表,然后是是每個(gè)方向上單元數(shù)量的列表。最初在cavity案例中設(shè)為(202040401bocesh將粗網(wǎng)格映射(Mapping)到細(xì)網(wǎng)格mapFields應(yīng)用程序能夠?qū)⒁粋€(gè)給定幾何結(jié)構(gòu)的場(chǎng)映射到另外一個(gè)幾何結(jié)構(gòu)的相應(yīng)場(chǎng)中,在我們的例子中,認(rèn)為流場(chǎng)是連續(xù)的,因?yàn)樵磮?chǎng)和目標(biāo)場(chǎng)的幾何結(jié)構(gòu)、邊界類(lèi)型或條件都是恒定的。在該例子中執(zhí)行mapFields-consistent命令行。目標(biāo)案例的controlDict文件中的startFrom/startTime指定了開(kāi)始時(shí)間,從對(duì)應(yīng)的時(shí)間目錄(也就是結(jié)果被映射到的地方)中讀取mapFields映射的流場(chǎng)數(shù)據(jù)。在本例中,我們要將粗網(wǎng)格(在cavity案例中)的最終結(jié)果映射到細(xì)網(wǎng)格(在cavityFine案例中。由于這些結(jié)果存儲(chǔ)在cavity案例的文件0.5controlDictstartTime0.5?,F(xiàn)在案例已準(zhǔn)備好運(yùn)行mapFields了,輸入mapFields-help可以看到mapFields要求指定源案例目conssent選項(xiàng)(caFineSource:"..""cavity"Source:"..""cavity"Target:".""cavityFine"CreatedatabasesastimeCase :../cavitynProce:1Sourcetime:0.5Targettime:0.5CreatemeshesSourcemeshsize:400Targetmeshsize:1600Consistentlycreatingandmappingfieldsfortime0.5Creatingmesh-to-meshaddressing...Creatingmesh-to-meshaddressing...Overlapvolume:0.0001CreatingAMIbetweensourcepatchmovingWallandtargetpatchmovingWerpolatingpinterpolatingUEndControladjustments為保持庫(kù)朗數(shù)小于1,由于所有單元的尺寸都減半了,所以時(shí)間步長(zhǎng)必須減半(見(jiàn)節(jié)所述,即conroDct文件中deaT設(shè)為0.005。流場(chǎng)數(shù)據(jù)輸出時(shí)以固定數(shù)目的時(shí)間步長(zhǎng)為間隔?,F(xiàn)在我們以固定時(shí)間為間隔。在controlDict文件中的writeControl關(guān)鍵詞下,我們不再使用timeStep(以固定數(shù)目的時(shí)間步長(zhǎng)作為間隔runTime(以固定的運(yùn)行時(shí)間作為間隔用戶(hù)應(yīng)該指定每0.1輸出一次,因此應(yīng)設(shè)置writeInterval為0.1。最終,由于案例是在粗網(wǎng)格結(jié)果上開(kāi)始的,只需要運(yùn)行很短的時(shí)間就能達(dá)到穩(wěn)態(tài)。所以endTime設(shè)為0.7s。確保這些設(shè)置正確并保存文件。Runningthecodeasabackgroundprocess用戶(hù)應(yīng)該體驗(yàn)一下后臺(tái)運(yùn)行icoFoam,將終端輸出內(nèi)容存儲(chǔ)到一個(gè)logcavityFine目錄下,執(zhí)行:Vectorplotwiththerefinedmesh用戶(hù)可以在ParaViewPipelineBrowser中一個(gè)新的模塊。當(dāng)在ParaView中打開(kāi)一個(gè)新的案例時(shí)有一個(gè)小的不便,因?yàn)橛幸粋€(gè)前提,所選數(shù)據(jù)是一個(gè)帶有擴(kuò)展名的文件。但是在OpenFOAM中,每個(gè)案例存儲(chǔ)在指定目錄結(jié)構(gòu)的大批沒(méi)有擴(kuò)展名的文件中,paraFoam程序自動(dòng)運(yùn)行的結(jié)果,就是產(chǎn)生一個(gè)帶有擴(kuò)展名.OpenFOAM的空白文件,因此,cavitycavity.OpenFOAM。然而,如果用戶(hù)希望在ParaView中直接打開(kāi)另一個(gè)案例,就需要?jiǎng)?chuàng)建這樣一個(gè)空白文件。例如,cavityFine案例,通過(guò)輸入下列命令來(lái)創(chuàng)建該文件:cdFileOpencavityFine.OpenFOAM,cavityFine案例可以加載到ParaView中。用戶(hù)現(xiàn)在可以在ParaView中由細(xì)網(wǎng)格繪制向量圖。同時(shí)激活兩個(gè)案例glyph圖像進(jìn)行對(duì)比。Plottinggraphs用戶(hù)也許希望通過(guò)抽取一些速度標(biāo)量(scalarmeasures)及沿著穿過(guò)區(qū)域的軸線(xiàn)繪制2維圖像來(lái)foamCalc中。它是一個(gè)獨(dú)特的應(yīng)用程序,其執(zhí)行方式為:>>foamCalcxxxxSelectingcalcTypexxxxunknowncalcTypetypexxxx,constructor>>foamCalcxxxxSelectingcalcTypexxxxunknowncalcTypetypexxxx,constructornotinhashtableValidcalcTypeselectionsare:8(randomisemagSqrmagGradaddSubtractdivmaginterpolatecomponents)components及magcalcTypes提供有用的速度標(biāo)量。當(dāng)在案例如cavity上運(yùn)行“foamCalccomponentsU”時(shí),它從每個(gè)時(shí)間目錄中讀取速度矢量場(chǎng),在相應(yīng)的時(shí)間目錄中,輸出標(biāo)量場(chǎng)Ux,Uy,Uz分別代表速度的,zfoaCacagU”輸出一個(gè)標(biāo)量場(chǎng)maU到每個(gè)時(shí)(anude。用戶(hù)可以在cavity及cavityFinecomponentscalcTypefoamCalc。例如,對(duì)于cavitycavityfoamCalc:cdU單獨(dú)的分量可以在ParaView中繪制成圖。繪制過(guò)程快速、方便,并且可以很好地控制標(biāo)簽和格式,所以輸出的結(jié)果十分標(biāo)準(zhǔn)。但是為發(fā)表圖像,用戶(hù)也許更想要原始數(shù)據(jù),然后用專(zhuān)門(mén)的繪圖工gnuplot或Grace/xmgrsample6.5節(jié)和2.2.3節(jié)。Ux,Uy及UzParaView中。為此,在所工作的基本模塊cavity.OpenFOAMPropertiesRefreshTimes按鈕。單擊應(yīng)用使新的場(chǎng)加載到ParaView中,將出現(xiàn)在VolumeFields必要的話(huà)再次點(diǎn)擊Apply。另外,如果在MeshParts面板上選擇了boundaryregions,邊界上的數(shù)據(jù)就MeshParts面板上的邊界區(qū)域,即movingWall,fixedWall及frontAndBack,然后單擊應(yīng)用?,F(xiàn)在為了在ParaView中顯示圖像,用戶(hù)應(yīng)該選擇所感興趣的模塊,例如cavity.OpenFOAM,F(xiàn)ilter->DataAnalysisPlotOverLine3DView窗口旁邊打開(kāi)了一個(gè)新的XYPlot窗口,創(chuàng)建了一個(gè)ProbeLine模塊,在其中用戶(hù)可以指定Properties面板中線(xiàn)條的終點(diǎn)。在Point1和Point2(0.05,0,0.005)到(0.05,0.1,0.005)Resolution100。XYPlotDisplayAttributeMode為PointData,XAxisDataUseDataArray,arclengthx軸代表了與腔體底部的距離。面板中要顯示的場(chǎng)。從顯示的標(biāo)量場(chǎng)列表中可以看到,默認(rèn)情況下矢量場(chǎng)的大小和分量都可以選擇,如U:x,因此沒(méi)有必要使用foamCalc創(chuàng)建Ux。不過(guò),用戶(hù)應(yīng)當(dāng)取消Ux(U:x)以外的所有選項(xiàng)。旁邊一欄的色塊可以指示線(xiàn)的顏色,雙擊即可修改。為了使格式化圖像,用戶(hù)應(yīng)當(dāng)修改LineSeries面板下的設(shè)置:panel,namelyLineColor,LineThickness,LineStyle,MarkerStyleandChartAxes。也可以單擊XYPlot左上角的圖標(biāo)進(jìn)行設(shè)置。舉個(gè)例子,第三個(gè)按鈕可進(jìn)入ViewSettings窗口,從中可以設(shè)置各軸的標(biāo)題,軸標(biāo)題的字體、顏色和排列,軸范圍的一些選項(xiàng)以及軸標(biāo)簽是線(xiàn)性的還是對(duì)數(shù)的。圖2.11是用ParaView制作的圖像。用戶(hù)可以制作各種希望得到的圖像。圖2.11的坐標(biāo)軸所使用的選項(xiàng)為:標(biāo)準(zhǔn)符號(hào)類(lèi)型,指定軸的范圍;標(biāo)題SansSerif12號(hào)字體。激活Display窗口的EnableLineSeries按鈕,從而使圖像顯示一系列的點(diǎn)而不是一條線(xiàn)。注意,如果按鈕呈現(xiàn)灰色不可用狀態(tài),可以通過(guò)選擇,然后取消選擇LineSeries的選項(xiàng)來(lái)使之變?yōu)榭捎?。選中EnableLineSeriesLineStyleMarkerStyle都可根據(jù)需要調(diào)整。網(wǎng)格分級(jí)介紹Introducingmeshgrading真實(shí)解與假設(shè)的數(shù)據(jù)模型在形式上具有較大差別時(shí),求解結(jié)果的誤差會(huì)更加明顯。舉個(gè)例子,當(dāng)真實(shí)解為線(xiàn)性形式時(shí),基于單元參數(shù)線(xiàn)性變化的數(shù)據(jù)模型只能得到確定的結(jié)果。當(dāng)真實(shí)解最大限度地偏離線(xiàn)性形式時(shí),斜率的變化量也達(dá)到最大值,誤差也就達(dá)到最大。誤差隨單元尺寸一塊兒減小。設(shè)置問(wèn)題之前應(yīng)對(duì)解決形式有個(gè)直觀的認(rèn)識(shí)。這樣才有可能預(yù)見(jiàn)哪些地方的誤差最大,使網(wǎng)格分級(jí)(細(xì)化cay以網(wǎng)格應(yīng)該分得更小一些。在使用相同數(shù)量的單元的情況下,可以獲得更高的準(zhǔn)確度,而不會(huì)增大計(jì)算負(fù)擔(dān)。蓋驅(qū)動(dòng)腔體問(wèn)題將使用朝向壁面分級(jí)的20x20的網(wǎng)格,將節(jié)細(xì)網(wǎng)格的結(jié)果映射到分級(jí)網(wǎng)格中以作為初始條件。將分級(jí)網(wǎng)格的結(jié)果與先前的網(wǎng)格進(jìn)行對(duì)比。由于blockMeshDict文件中的更改非常重要,$FOAM_RUN/tutorials/incompressible/icoFoam中提供了本節(jié)用到的案例cavityGrade,。Creatingthegradedmesh由于區(qū)域的上下左右需要不同的網(wǎng)格等級(jí),此處網(wǎng)格需要分為4塊。網(wǎng)格的塊結(jié)構(gòu)如圖2.12所示。用戶(hù)可參考cavityGrade/constant/polyMesh目錄下的blockMeshDict文件,為了保持完整,blockMeshDict文件中的關(guān)鍵詞也列在后面。現(xiàn)在每個(gè)塊在x和y方向均有10個(gè)單元,最大單元和2。convertToMeters0.1;convertToMeters0.1;vertices((000)(0.500)(100)(00.50)(0.50.50)(10.50)(010)(0.510)(110)(000.1)(0.500.1)(100.1)(00.50.1)()(10.50.1)(010.1)(0.510.1)(110.1));blocks(hex(01439101312)(10101)simpleGrading(221)hex(125410111413)(10101)simpleGrading(0.521)hex(347612131615)(10101)simpleGrading(20.51)hex(458713141716)(10101)simpleGrading(0.50.51));edges();patches(wallmovingWall((615167)(716178))wallfixedWalls((312156)(09123)(01(01109)(121110)(251411)(581714))emptyfrontAndBack((0341)(1452)(3674)(4785)(9101312)(10111413)(12131615)(13141716)));mergePatchPairs();//*************************************************************************//熟悉blockMeshDict文件之后,用戶(hù)就可以通過(guò)命令行執(zhí)行blockMesh了。使用paraFoam可以2.1.2節(jié)相同。Changingtimeandtimestep靠近頂蓋的速度最大,單元最小,則最大的Co數(shù)產(chǎn)生于頂蓋附近,原因見(jiàn)節(jié)所述,因此很有必要估計(jì)頂蓋附近的單元尺寸,以便計(jì)算合適的時(shí)間步長(zhǎng)。計(jì)算單元尺寸。長(zhǎng)度為l的方向上,有n個(gè)單元,最后一個(gè)單元與第一個(gè)單元之間的比值為R,最小單元的尺寸δxs為:

r1

(2.5)r為相鄰單元尺寸之比:

R

s 1rRn1,R1

(2.6) n

(2.7)對(duì)cavityGrade案例,在每個(gè)塊中沿各個(gè)方向的單元數(shù)為10,最大最小單元比為2,塊高寬為0.05m,因此最小的單元長(zhǎng)度為3.45mm(l=0.05m,r=2^1/9=1.08,a=R=2),從公式2.2可知,為使Co<1,3.45sdeaT減小為2.5s=文件。startTimecavityFine0.7cavitycavityFine在所指示的運(yùn)行時(shí)間內(nèi)收斂較好,可以設(shè)置cavityGrade0.1sendTime0.8.映射流場(chǎng)如mapFields將cavityFine的最終結(jié)果映射到cavityGrade網(wǎng)格上,進(jìn)入:cd現(xiàn)在從案例目錄運(yùn)行icoFoam,并且監(jiān)視時(shí)間信息。查看該案例的收斂結(jié)果并通過(guò)后處理工具節(jié)所描述。增加雷諾數(shù)之前所有案例的雷諾數(shù)都為10,這個(gè)數(shù)非常小很快產(chǎn)生穩(wěn)定解,在腔體底部拐角處僅有很小的二次漩渦(seconaryorices?,F(xiàn)在增加雷諾數(shù)到100,此時(shí)需要較長(zhǎng)時(shí)間達(dá)到收斂(conee,cavitycavitycavityHighRecdcp-r前處理cavityHighRetransportPropertiesRe10倍,因此動(dòng)力粘度要變?yōu)樵瓉?lái)的1/10,即1*10-3m2s-1。從cavity案例結(jié)束處重新開(kāi)始運(yùn)行該案例。為此,設(shè)置startFrom關(guān)鍵詞為latestTimeicoFoam提取存儲(chǔ)在最近時(shí)刻文件(也就是0.5)中的初始數(shù)值,endTime2s。運(yùn)行代碼在案例目錄下運(yùn)行icoFoam,查看運(yùn)行時(shí)間信息。當(dāng)在后臺(tái)運(yùn)行時(shí),后面的UNIX命令會(huì)非常有用。nohup:使發(fā)出命令的用戶(hù)注銷(xiāo)后,命令仍然能夠運(yùn)行nice:改變內(nèi)核調(diào)度程序中任務(wù)的優(yōu)先權(quán),其值為20代表最高優(yōu)先權(quán),19次之。舉個(gè)例子,如果用戶(hù)想要在一臺(tái)遠(yuǎn)端機(jī)器上運(yùn)行案例而不想要實(shí)時(shí)監(jiān)控,這樣就需要在機(jī)器上給它一個(gè)低的優(yōu)先權(quán),此時(shí)使用nohop命令,就可以實(shí)現(xiàn)用戶(hù)注銷(xiāo)這在運(yùn)行的遠(yuǎn)端機(jī)器,而任務(wù)卻nice19。對(duì)于本案例,可以執(zhí)行如下命令:cd-n19>log&Time=1.43CourantNumbermean:0.221921max:0.839902smoothSolver:SolvingforUx,Initialresidual=8.73381e-06,Finalresidual=8.73381e-06,NoIterations0smoothSolver:SolvingforUy,Initialresidual=9.89679e-06,Finalresidual=9.89679e-06,NoIterations0DICPCG:Time=1.43CourantNumbermean:0.221921max:0.839902smoothSolver:SolvingforUx,Initialresidual=8.73381e-06,Finalresidual=8.73381e-06,NoIterations0smoothSolver:SolvingforUy,Initialresidual=9.89679e-06,Finalresidual=9.89679e-06,NoIterations0DICPCG:Solvingforp,Initialresidual=3.67506e-06,Finalresidual=8.62986e-07,NoIterations4timestepcontinuityerrors:sumlocal=6.57947e-09,global=-6.6679e-19,cumulative=-6.2539e-18DICPCG:Solvingforp,Initialresidual=2.60898e-06,Finalresidual=7.92532e-07,NoIterations3timetimestepcontinuityerrors:sumlocal=6.26199e-09,global=-1.02984e-18,cumulative=-7.28374e-18ExecutionTime=0.37sClockTime=0sTime=1.435CourantNumbermean:0.221923max:0.839903smoothSolver:SolvingforUx,Initialresidual=8.53935e-06,Finalresidual=8.53935e-06,NoIterations0smoothSolver:SolvingforUy,Initialresidual=9.71405e-06,Finalresidual=9.71405e-06,NoIterations0DICPCG:Solvingforp,Initialresidual=4.0223e-06,Finalresidual=9.89693e-07,NoIterations3timestepcontinuityerrors:sumlocal=8.15199e-09,global=5.33614e-19,cumulative=-6.75012e-18DICPCG:Solvingforp,Initialresidual=2.38807e-06,Finalresidual=8.44595e-07,NoIterations3timestepcontinuityerrors:sumlocal=7.48751e-09,global=-4.42707e-19,cumulative=-7.19283e-18ExecutionTime=0.37sClockTime=0s高雷諾數(shù)流動(dòng)查看paraFoam中的結(jié)果,顯示速度矢量。拐角處的二次漩渦在尺寸上有或多或少的增加。用戶(hù)可以通過(guò)減小黏度進(jìn)一步增大雷諾數(shù),然后回到案例。漩渦數(shù)量增多,為了求解更加復(fù)雜的流動(dòng)模式,漩渦附近的網(wǎng)格密度也需要增大。另外,隨著雷諾數(shù)增大,達(dá)到收斂所用的時(shí)間也就增大。endTime以確保達(dá)到收斂。當(dāng)流動(dòng)進(jìn)入紊流狀態(tài),會(huì)出現(xiàn)結(jié)果穩(wěn)定性問(wèn)題,單純?cè)黾涌臻g和時(shí)間上的網(wǎng)格密度已經(jīng)不能達(dá)到目的了。實(shí)際上,許多工程問(wèn)題的雷諾數(shù)非常高,直接求解紊流行為消耗很大。取而代之的方法是,使用RAS(Reynolds-averagedsimulation,平均雷諾數(shù)模擬)紊流模型來(lái)求解主要的流動(dòng)行為和起伏狀態(tài)。本節(jié)將使用包含壁面函數(shù)(wallfunctions)的標(biāo)準(zhǔn)k?ε模型,用于解決雷諾數(shù)為104的蓋驅(qū)動(dòng)kurbuentneiceneyεurbuentdsspaonrae。OpenOAM的求解器psooam前處理進(jìn)入$FOAM_RUN/tutorials/incompressible/pisoFoam/rasblockMesh產(chǎn)生網(wǎng)格,當(dāng)使用帶有壁面函數(shù)的標(biāo)準(zhǔn)k?ε模型時(shí),沒(méi)有必要使網(wǎng)格朝向壁面分級(jí),這是由于近壁單元的流動(dòng)已經(jīng)建模,而不用區(qū)分。dimensions[02-10000];internalField uniform0;boundaryField{movingWall{dimensions[02-10000];internalField uniform0;boundaryField{movingWall{typevalue}fixedWalls{typevalue}frontAndBack{type}nutWallFunction;uniform0;nutWallFunction;uniform0;empty;} 本案例中movingWall和fixedWalls使用標(biāo)準(zhǔn)壁面函數(shù),由nutWallFunction關(guān)鍵詞指定,其他nutRoughWallFunction指定。用戶(hù)現(xiàn)在應(yīng)該打開(kāi)0/k及0/epsilon文件,檢查邊界條件。邊界為壁面的條件下,ε指定為epsilonWallFunction邊界條件,kkqRwallFunction邊界條件,后者是一個(gè)通用的邊界條件,可以提供給任何包括紊流動(dòng)能類(lèi)型的流場(chǎng),例如k,q,或者雷諾應(yīng)力R。k及ε的初始值由一個(gè)估計(jì)的波動(dòng)Ul來(lái)指定,k及ε由下列公式定義:2C0.75k1.5

(2.8) l

(2.9)其中Cμ是k?ε模型的常系數(shù),等于0.09,對(duì)笛卡爾坐標(biāo),k為:,Uy'^2Uz'^2x,y,z方向的分量。假設(shè)初始紊流是各向同性5%,l等于盒子寬度(0.1m)20%,k、ε為:這樣k、ε的初始條件就確定了,U及p的初始條件和之前一樣,分別為(0,0,0)及0。simulationType RASModel;//*************************************************************************//紊流模型包括一系列的方法,例如RAS或者OpenFOAM.提供的大渦模型(LES,large-eddysimulation)constant/turbulencePropertiessimulationType RASModel;//*************************************************************************//simulationType的選擇有l(wèi)aminar,RASModel和LESModel,在本案例中選擇RASModel,RAS模型選項(xiàng)在constant/RASPropertiesRASModel入口從表3.9所列的一長(zhǎng)串可用模型中選擇紊流模型。用戶(hù)應(yīng)當(dāng)選擇kEpsilon模型,這是標(biāo)準(zhǔn)k?ε模型;用戶(hù)還需確保turbulence狀態(tài)為on。(coefficients)printCoeffs為on,其名稱(chēng)為模型名加Coeffs,例如,kEpsilon模型的案例中的kEpsilonCoeffs。模型(例如kEpsilon)RASProperties文件的子項(xiàng)中,然后調(diào)整其值。用戶(hù)下一步要在transportProperties中設(shè)置層流動(dòng)力粘度,為使Re=10^4,根據(jù)方程2.1對(duì)Re定義,則動(dòng)力粘度為10^-5。controlDictstartTime,stopTime,deltaTwriteInterval,設(shè)置deltaT0.005CoendTime=10s。運(yùn)行代碼進(jìn)入案例目錄并輸入“pisoFoam”來(lái)執(zhí)行,在該案例中,粘度很低,緊貼移動(dòng)頂蓋的邊界層(boundary在100個(gè)時(shí)間步長(zhǎng)之后,單元速度明顯接近頂蓋速度,二者相差達(dá)到極限值0.2ms^-1,因此最大Co數(shù)比0.2大一點(diǎn)。通過(guò)增加時(shí)間步長(zhǎng)使Co數(shù)更接近1,從而增加求解時(shí)間的做法是很明智的,因此重deltaT0.02s,并且在這種情況下,設(shè)置startFromlatestTime,這指示pisoFoam從最后時(shí)刻文件讀取起始數(shù)據(jù),也就是說(shuō)10,endTime應(yīng)該設(shè)為20s,因?yàn)檫\(yùn)行收斂遠(yuǎn)比層流情況要慢。重新運(yùn)行,監(jiān)控求解的收斂。查看串行時(shí)間步長(zhǎng)的結(jié)果,看求解結(jié)果是否收斂到穩(wěn)態(tài),或者也許達(dá)到周期震蕩狀態(tài)。在后一種情況下,也許無(wú)法達(dá)到收斂,但這并不意味著結(jié)果不準(zhǔn)確。改變案例幾何結(jié)構(gòu)用戶(hù)也許希望改變案例的幾何結(jié)構(gòu),運(yùn)行一個(gè)新的模擬。也許需要保持一部分或所有原始結(jié)果作為新模擬的開(kāi)始工況。這有點(diǎn)復(fù)雜因?yàn)樵冀獾牧鲌?chǎng)與新案例的并不一致。但是mapFields應(yīng)用程序可以映射不一致的流場(chǎng),幾何形狀或邊界類(lèi)型都可以。convertToMeters0.1;vertices((000)(0.600)(00.40)(0.60.40)convertToMeters0.1;vertices((000)(0.600)(00.40)(0.60.40)(10.40)(010)(0.610)(110)(000.1)(0.600.1)(00.40.1)()(10.40.1)(010.1)(0.610.1)(110.1));blocks(hex(0132891110)(1281)simpleGrading(111)hex(236510111413)(12121)simpleGrading(111)hex(347611121514)(8121)simpleGrading(111));edges();patches(walllid((5(513146)(614157))wallfixedWalls((08102)(210135)(715124)(412113)(31191)(1980))emptyfrontAndBack((0231)(2563)(3674)(891110)(10111413)(11121514)));mergePatchPairs();//*************************************************************************//用blockMesh產(chǎn)生網(wǎng)格,邊界設(shè)置與之前cavity案例一樣,為在描述場(chǎng)映射過(guò)程清晰起見(jiàn),上壁面邊界(cavitymovingWall邊界)lid。在非一致映射中,不能擔(dān)保所有的場(chǎng)數(shù)據(jù)都能從源案例中映射過(guò)來(lái)。殘留的數(shù)據(jù)一定來(lái)自目標(biāo)案例自身的流場(chǎng)文件。因此,在映射之前,流場(chǎng)數(shù)據(jù)一定要存在于目標(biāo)案例的時(shí)間文件中。在cavityClipped案例中,設(shè)映射開(kāi)始時(shí)間為0.5s,這是由于controlDict中startTime設(shè)為0.5s,因此0:cd0在映射數(shù)據(jù)之前,用戶(hù)應(yīng)該查看幾何形狀及0.5s的流場(chǎng)。patchMap(lidmovingWall);現(xiàn)在要從cavity中映射速度及壓力場(chǎng)到cavityClip

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論