在OpenFOAM的原始碼中查詢資訊

2021-08-25 02:47:16 字數 1424 閱讀 2107

openfoam的原始碼包含海量的檔案,如果通過滑鼠乙個檔案乙個檔案的查詢資訊,不僅效率低,而且很有可能找不到自己想要尋找的內容。因此,下面介紹通過linux命令列來進行查詢資訊的方法,不僅適用於openfoam,同樣適用於其它在linux下的資訊查詢。

// 定位src中檔名包含fvpatch的檔案

find $foam_src -name "*fvpatch*"

// 定位tutorial中檔名包含dict的檔案

find $foam_tutorials -name "*dict"

// 查詢solvers中包含字串les的檔案,並給出line number

grep -r -n les $foam_solvers

// 在tutorial中查詢哪個算例使用了slip邊界

find $foam_tutortials -type f | xargs grep -sl 'slip'

// $wm_project_dir代表整個openfoam安裝檔案路徑

find $wm_project_dir -type f | xargs grep -sl 'noparallel'

find $foam_src -iname "*continuity*"
foamsearch -c $foam_tutorials solvers.p.solver fvsolution

// 執行後,輸出結果

59 solver gamg

3 solver pbicg

18 solver pcg

5 solver smoothsolver

foamsearch -c $foam_tutorials solvers.u.solver fvsolution

// 執行後,輸出結果

1 solver gamg

1 solver pbicccg

29 solver pbicg

3 solver pcg

143 solver smoothsolver

foamsearch -c $foam_tutorials ddtschemes.default fvschemes

// 執行後,輸出結果

230 5 default backward

2 default cranknicolson

154 default euler

6 default localeuler

20 default none

43 default steadystate

模板模式在原始碼中的體現

先來看jdk 中的abstractlist,來看 public abstract class abstractlistextends abstractcollectionimplements list我們看到get 是乙個抽象方法,那麼它的邏輯就是交給子類來實現,我們大家所熟知的arraylist ...

openFOAM中通量的生成

標頭檔案createphi.h和compressiblecreatephi.h 使用openfoam處理守恆方程時,經常需要處理通過網格面的通量。廣義通量表示為phi。由於密度 速度等值儲存在網格中心的,因此為了計算網格面上的通量,必須進行一定的處理。openfoam通過呼叫createphi.h或...

nodeType屬性在vue原始碼中的使用

每個節點都有乙個 nodetype 屬性,用於表明節點的型別,節點型別由node型別中定義12個常量表示 nodetype在vue中的應用 在vue編譯的過程中需要查詢html結構中的雙大括號,或者 事件等代表vue中的資料及方法的屬性值,通過編譯將查詢到的部分使用vue例項中的屬性或方法替換 cl...