開源CFD並非萬金油

2021-09-08 13:02:07 字數 3092 閱讀 5726

今天有網友在群裡討論開發cfd軟體的事情,眾說紛紜,有網友提到「沒有必要開發cfd軟體了,直接使用開源openfoam就行」。但個人認為這說法還是有一些需要商榷的地方,開源軟體也不是萬金油。

以下部分內容翻譯自**caewatch,有修改。

當人們在談論開源cfd解決方案時,經常會聽到下面的這兩種描述:

開源cfd並不便宜,儘管其許可是免費的。

大多數開源cfd軟體包都是基於gnu通用公共許可證(gpl)或bsd許可證或mit許可證授權的。按照許可協議,任何人都可以免費使用該軟體(包括源**),其對軟體的使用沒有限制(這意味著它可以在商業專案中使用)。唯一的限制是在重新分發軟體或其衍生產品時:如果您想要銷售或重新發布,您必須發布源**。所以,開源軟體沒有許可成本。你可以從網際網路上得到它。

然而軟體只是cfd解決方案的一部分。在計算成本時也必須將人力資源和硬體考慮進去。在大多數組織中,這兩種費用通常更高,特別是人員成本。

當然不管是開源軟體還是商用軟體,這些成本都會存在,但是相對於商用軟體來講,開源解決方案所需要的人力資源更加昂貴。

要想從真正的發揮開源方案的優勢,僅僅使用該軟體是不夠的,使用者還需要知道如何修改**並進行編譯。

成熟的商用軟體通常具有良好的人機介面和成熟的培訓方案,因此招聘操作人員相對容易。大部分新來的畢業生可以在一兩個星期的培訓之後操作軟體並產生合理的結果。一兩個月後,他們可以做一些專案。但對於開源解決方案,招聘流程將會延長幾倍,您將發現大多數求職者人根本無法適應這一職位。如果您正在尋找商用cfd解決方案的「經驗豐富」(有時只是自稱)的分析師,則您有很多選擇。但對於開源的cfd解決方案,您可能必須祈禱,除非您在這個幾乎孤立的圈子中有廣泛的人脈聯絡。因此,與開源cfd相關的成本並不總是更便宜。招聘和培訓符合條件的工程師所需的額外時間並不小。大多數時候,這個成本是非常顯著的。

如果節省許可成本是選擇開源cfd解決方案的主要原因,則您的選擇是錯誤的。

對開源cfd解決方案的另乙個誤解是,與商用軟體相比,它們不太準確,效率較低,因此較差。來自不同**商的大多數商用cfd軟體銷售工程師可能會這樣跟你宣傳,但你要清醒的認識到,這是他們為了推銷自己的軟體而做出的貶低對手的行為。

需要了解的是,並非所有的開源cfd解算器都有相同的開發機會。有一些ghost開源專案,雖然專案非常有希望,但可能會因為志願者不足或籌資不足而夭折。

幸運的是,有一些開源cfd專案得到了強大的社群支援,或者從不同的**(一些直接來自商業實體,其業務建立在服務而不是許可的情況下)獲得了持續資助。對於開源解決方案的使用者,實際上有更多的選擇。例如,如果您正在尋找乙個通用求解器,openfoam可能是乙個選擇;如果你需要乙個格仔波爾茲曼方法的cfd sover,palabos可以是乙個很好的選擇;如果您需要具有完全離散元素方法(dem)功能的求解器,可以選擇liggghts。如果您正在為某些特定問題尋找cfd解決方案,您可能會有更多的選擇。例如,su2偏重於空氣動力學領域; fds(公共領域**,不是gpled)是火災模擬的實際標準; gerris可選擇用於明渠流計算。

現在,回到準確性和效率的討論上來。

對於cfd求解器來說,幾乎沒什麼秘密可言。幾乎所有的演算法與模型都是公開的。求解計算的準確性更多的是依賴於網格質量與網格解析度、物理模型與數值方法,計算的準確性實際上掌握在操作者手中,不準確的結果往往是由軟體使用者(不恰當的設定或選用了不恰當的模型,網格質量差或網格數量太少等)而不是求解器造成的。

這裡肯定有有人提出不同的意見,商用求解器的求解效率、收斂速度就是要比開源**要快,這如何解釋呢?商用求解器的「快」來自於**的修正和優化。很多的商用求解器只支援有限的作業系統(通常被稱為「認證系統」),所以比較容易對這些特定的系統進行**優化,因此能夠使其計算計算效率更高。但開源**的為了便於使用者在大多數平台上編譯**,因此很難做到針對某些特定平台進行優化。如果使用者使用預設編譯設定或使用預編譯的二進位制檔案(可能有超過90%的使用者屬於此類別),這些編譯後的程式都是沒有進行優化的,所以執行效率普遍不高。

一些專門從事開源解決方案的機構可以調整您的目標系統的**和編譯器設定。有時只需調整幾個編譯器設定即可顯著提高計算速度。如果您擁有內部hpc專家,則有可能獲得比某些商業軟體效率更高的開源程式。

簡而言之,準確性主要是由使用者控制的。準確性差主要是由於使用者的不恰當使用,而並非來自於求解器本身。商業和開源解決方案現在都提供了足夠的控制/選項。開源cfd**的效率問題主要是「預設」編譯設定的結果,而不是**本身的問題。

開源並不意味著免費。即使一些商業軟體可能會在原始密碼儲存為純文字的時候附帶源**。

gnu gpl許可證(和其他類似的bsd,mit許可證)允許任何人或公司**gpl許可軟體的副本。你可以收取任何你想要的,並保留所有的收益。限制包括:1)必須提供源**; 2)使用者可以自由使用,修改和重新分配(當然也可以銷售); 3)使用者可以自由修改,除非他們想**修改。

如果開源cfd**用於專案(任何專案),則沒有人會要求使用費或許可費用。如前所述,許可成本的節省可能會很容易地被增加的員工成本和可能的第三方服務成本所抵消。

因此,開源cfd解決方案中的「免費」並不是為了節省獲取**工具的成本。

開源是為了自由。

使用開源**,您可以輕鬆地為您的問題定製**。而對於商業二進位制檔案,您必須為軟體定製問題。這是使用者自由的意思。

例如,您需要在cfd軟體中使用一些特殊的(也許簡單的)功能。一些cfd**商提供各種定製,以便您可以將**掛接到軟體中(如fluent中的udf)。問題是誰可以保證這樣的定製工作在將來的版本中還能存在。在更糟糕的情況下,產品可能與另乙個產品合併,或者**商可能被其他**商收購。對於使用者來說,您將來會失去控制項的自定義功能(如果有效)。

您可能不用擔心開源cfd解決方案。可以將任何專有的模型,功能和修改合併到**中,並將其內部和私有維護永遠保留下來。您可以隨時使其適用於新版本的**和不同的系統。那麼智財權將會更好的維護。

使用者自由意味著它可以用於任何格式的任何專案。修改或改進可以保留並用於任何專案。使用者沒有義務公開他們的修改,除非他們**這些修改(派生工作)。

開源cfd解決方案的主要優點是自由。但這帶來成本。不是每個人都可以接受自由的成本。

開源解決方案可能不適合您,如果:

要從事cfd方面的學術研究,如果您從不接觸源**,您將永遠不會真正地理解cfd。不過好在,如果您只想使用cfd完成最後一年的專案或使用cfd為您的**生成一些彩色,您可能並不需要了解cfd的內部 運作細節,商業軟體完全可以勝任這些工作。

eTOM並非萬金油

支撐系統不僅支撐操作層 通訊產業報 您認為在運營支撐系統建設中需要注意哪些問題?王衛鄉 作為乙個企業來講,從管理的角度可以分為三層。最上面是決策層,中間是管理層,最下面是操作層。整個結構基本上是乙個金字塔形的。最下面的操作層最大,最上面的決策層最小。現在的運營支撐系統最早是從電信網路的執行維護管理系...

zabbix 萬金油 新浪部落格

zabbix 可以監控指令碼 zabbix 自定義監控專案 root web1 wc l etc passwd 41 etc passwd root web1 cat etc passwd wc l 41 root web1 sed n etc passwd 41 root web1 awk end...

rpm包 萬金油 新浪部落格

rpm是壓縮包 原始碼比rpm安裝要快 每個rpm都有描述資訊 install date 2018年06月21日 星期四 10時32分11秒 group system environment daemons size 3894160 license asl 2.0 signature rsa sha...