OpenFOAM是一個(gè)完全由C++編寫(xiě),在linux下運(yùn)行,,面向?qū)ο蟮挠?jì)算流體力學(xué)(CFD)類庫(kù),。
OpenFOAM跟商用的CFD軟件Ansys Fluent,CFX類似,,但其為開(kāi)源的,,采用類似于我們?nèi)粘A?xí)慣的方法在軟件中描述偏微分方程的有限體積離散化。2004年開(kāi)始OpenFOAM一直作為免費(fèi)使用的開(kāi)源軟件,,有OpenFOAM和OpenFOAM-Extened兩個(gè)版本,,分別有Henry Weller負(fù)責(zé)的OpenCFD以及Hrvoje Jasak負(fù)責(zé)的Wikki公司分別維護(hù)。
1989年開(kāi)始,,Henry Weller和帝國(guó)理工大學(xué)等人開(kāi)始編寫(xiě)OpenFOAM的前身,,當(dāng)時(shí)的名稱為“FOAM”(Field Operation and Manipulation的簡(jiǎn)寫(xiě))。
1993年,,克羅地亞人Hrvoje Jasak在帝國(guó)理工大學(xué)Gosman團(tuán)隊(duì)讀PhD期間開(kāi)始寫(xiě)FOAM,,1996年,第一篇使用“FOAM”的博士論文出現(xiàn),。隨后在2000-2004年被Nabla公司購(gòu)買(mǎi),,當(dāng)時(shí)的FOAM并未開(kāi)源且為一款商業(yè)軟件。
2004年12月,,Henry Weller,,Chris Creenshields, Mattijs Janssens通過(guò)他們創(chuàng)立的OpenCFD公司將FOAM開(kāi)源化并發(fā)行,同時(shí)將“FOAM”更名為“OpenFOAM”,。同年,,Hrvoje Jasak創(chuàng)辦了Wikki公司(2008年Henrik Rusche加入),,Hrvoje Jasak的公司主要負(fù)責(zé)OpenFOAM-Extened版本的發(fā)布和管理。
2008年,,“OpenFOAM”發(fā)布了snappyHexMesh,,其為一個(gè)非常強(qiáng)大的、依然在更新的六面體(多面體)全自動(dòng)網(wǎng)格劃分程序,。
2010年,,Helene Blanchonnet加入OpenCFD,創(chuàng)建了新版的OpenFOAM網(wǎng)站以及一個(gè)Bug匯報(bào)網(wǎng)站,。
2011年,,“OpenFOAM”由SGI集團(tuán)收購(gòu),為了保證其開(kāi)源特性,,在OpenCFD被收購(gòu)之前,,創(chuàng)立了位于美國(guó)的非營(yíng)利性O(shè)penFOAM基金會(huì)?!癘penFOAM”被轉(zhuǎn)移至OpenFOAM基金會(huì)下,,其主要負(fù)責(zé)“OpenFOAM”的發(fā)布以及開(kāi)源特性。
2012年,,SGI集團(tuán)把OpenCFD賣給了ESI集團(tuán),。
2014年,Henry Weller和Chris Creenshields離開(kāi)了ESI集團(tuán),,繼續(xù)負(fù)責(zé)“OpenFOAM”的開(kāi)發(fā)和維護(hù),,OpenFOAM基金會(huì)移至英國(guó)。
2015年3月,,Henry Weller,,Chris Creenshields,Jenya Collings在英國(guó)雷丁創(chuàng)立CFD Direct,,以O(shè)penFOAM基金會(huì)的利益負(fù)責(zé)OpenFOAM的開(kāi)發(fā)和管理,。
OpenFOAM是一個(gè)完全由C++編寫(xiě)的面向?qū)ο蟮腃FD類庫(kù),采用類似于我們?nèi)粘A?xí)慣的方法在軟件中描述偏微分方程的有限體積離散化,,支持多面體網(wǎng)格(比如CD-adapco公司推出的CCM+生成的多面體網(wǎng)格),,因而可以處理復(fù)雜的幾何外形,其自帶的snappyHexMesh可以快速高效的劃分六面體+多面體網(wǎng)格,,網(wǎng)格質(zhì)量高,。支持大型并行計(jì)算,針對(duì)OpenFOAM庫(kù)的GPU運(yùn)算優(yōu)化也正在進(jìn)行中,。
簡(jiǎn)單來(lái)講,,OpenFOAM是一個(gè)針對(duì)不同的流動(dòng)編寫(xiě)不同的C++程序集合,每一種流體流動(dòng)都可以用一系列的偏微分方程表示,,求解這種運(yùn)動(dòng)的偏微分方程的代碼,,即為OpenFOAM的一個(gè)求解器。針對(duì)一個(gè)簡(jiǎn)單的單相牛頓流體層流運(yùn)動(dòng),,icoFoam即可進(jìn)行求解,。
openfoam包含大量求解器,研究人員也可以編寫(xiě)自己的求解器,。簡(jiǎn)單介紹以下幾個(gè)自帶的標(biāo)準(zhǔn)求解器:
icoFoam:用于求解層流下的單相牛頓流體流動(dòng),。
simpleFoam:求解單相牛頓以及非牛頓湍流流動(dòng)。
interFoam:牛頓和非牛頓流體的VOF模型求解,。
全面支持c++庫(kù),。
愈加廣泛的用途,例如已經(jīng)被用在了金融等方面,。
各種各樣的工具箱,,包括各種ODE求解器、ChemKIN接口等,。
支持多種網(wǎng)格接口,。