數值模擬基本流程

更新於 發佈於 閱讀時間約 3 分鐘
數值模擬流程圖
真要說,其實上面這張圖就說完了,基本上數值模擬上會遇到的問題不出這三類
但要真這樣也太混了,所以接下來只好稍微說明一下各項代表些什麼。

建模 (Modeling)

建模的涵義實際上就是以前當學生時候的列式,把問題的條件一條一條列上去。除了幾何以外,也包含了材料參數,發熱瓦數...等方程式上有的所有參數。
古時候是列出一串方程式,現在大部分的狀況是和繪圖軟體做結合,用畫得比說得快。但這樣說又會搞得跟機構繪圖有所混淆,所以差別還是回到用途。
機構繪圖本質是產品設計,所有細節都應該包含在裡面,因為他就是最終實品的概念圖,越逼真越好。而模擬建模是借用人家的圖形介面來做列式,重點在於細節的修剪以及實品的近似,太過逼真的模型很容易會在後續的步驟出問題。
對於機構繪圖來說,幾何是最重要的,但在模擬建模,幾何和參數同等重要。
如果你有100分的幾何,60分的參數,你的解只有60分,但是如果是80分的幾何配上80分的參數,結果會是80分。
模擬的功力其中之一就在於如何用最少的要素,勾勒出大致正確的圖像。
而當完成了建模,解的準確性就已經被決定了8成,剩下的步驟不是說不重要,但是對解影響的比重確實是小得多。
畫細不難,難在用最經濟的方式達成 "雖不中亦不遠矣"。

網格 (Meshing)

網格的意義在於將方程式離散化,具體來說就是把微分的dx ->Δx。
所以切的多細,相當於解析度有多少。而這個解析度牽扯到想要觀察的現象是什麼,如果是cm級的那可能就要切到mm,如果是mm級的那可能就要切到μm諸如此類。
在這個階段,會基本決定你需要的計算資源,以及部份決定問題的收斂性。
而決定你可以解多少網格級的問題,則是你的電腦效能。
除了數量以外,網格的品質是影響問題收斂的一大要點。
純六面體網格比較單純,網格過渡占大部分因素,混和型網格就要格外觀察面對齊度(face alignment)和歪曲度(skewness)。
任憑你列式再怎麼漂亮,解不出來就是白搭。

求解(iterating)

在這個階段包含了,定義邊界條件,選擇演算法,精度與收斂條件。
解的準確性剩下的兩成就在這裡,邊界條件影響解平移的程度較大,而演算法影響解分布的程度較大。

同時演算法也影響到了部分的收斂性,像是紊流模型常常會增加方程式來描述紊流的行為,代價就是同一顆網格內含的方程式更多,計算時間拉長,收斂性降低
如果很開心地度過了這個部分,那剩下就是收割數據和製作漂亮的報告了!
然而,雖然我們可以稍微按照出包頻率來為影響收斂性的原因做劃分,但實際上是,只要有一個人出問題,問題就會發散,而上述三個部分通通可以出問題。
模擬功力的另一個部分就在於迭代發散診斷,過程其實很像寫程式 debug,把東西分成一塊塊模組,從小到大的找問題出在哪裡。唯一和寫程式不太一樣的部分是,個別確認沒問題後,組起來可能會有新的問題產生,這個部分就以後有機會再說了。
此篇文章會顯示動態置底廣告
為什麼會看到廣告
avatar-img
44會員
43內容數
和工作相關的筆記整理地
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
模擬世界是我們寫程式造出來的,我們就是模擬世界的主宰,所以各種作用力要長什麼樣子、要怎麼個作用法,都由我們決定。不過,如果希望這些作用力看起來像真實世界的作用力一樣,那在寫程式的時候,套用這些作用力在真實世界中的物理公式,會是比較省時省力的做法。
你學習任何數學, 都要問這哪個部分是微積分長出來的, 哪個部分是線性代數長出來的。 當然,你需要先把微積分與線性代數學一次, 知道裡面有哪些內容, 接下來學任何新的東西,其實都是微積分跟線性代數。
數學系的訓練,與上面閱讀原始碼的優先順序,本質上是反過來的。在數學的訓練中,是先把函數定義的非常清楚,再進一步去看函數應用在具體的數據上會發生什麼行為,然後就到此為止,不太會再有進一步的討論。但如上面西尾泰和所述,工程師看事情的角度,是先掌握全局,然後再進一步細化每一層的細節。
Thumbnail
本文提供了一個關於模擬法演算法的問題,介紹了操作指令的格式及其解析。透過程式碼模擬每條指令,找出回到根目錄所需的操作次數。本文詳細說明瞭模擬法的複雜度分析,能夠幫助讀者更好地理解這個問題。
Thumbnail
有好友問我對「建構式數學」有何看法? 其實,我對傳統式和建構式的教法,沒什麼意見。各有利弊。 我比較在意的是:一定要孩子用「建構式」的做法,否則就拿不到分數。 不是要孩子、家長,別太在意分數、成績這事嗎? 這做法,最多用到小學三年級,還不是得另外學直式、橫式?
Thumbnail
網格擴散可以就像剪紙一樣,把紙上想要的部分剪下來。 通過模型的一個點,找到周圍相鄰的點;其他點又能找到周圍相鄰的點,就像水波一樣擴散出去。 許多3D的算法,如裁切、干涉深度偵測等都會用到。
Thumbnail
3D列印是將溶化後的塑膠從一個金屬頭擠出,再用程式控制他去一層一層往上的打印出不同的形狀,做出各種不同的東西,是我認為中一個很重要的技能,畢竟你能在網路上做出一個東西在辦到現實真的非常實用。
Thumbnail
資料的統合 在程式設計中,其他人通常關心是否注意到執行的細節。作為程式設計師,主要應該關心的是程式的表現,但往往忽略了很多細節,這些細節可以決定程式的好壞。程式的好壞很大程度上取決於資料的統合,也就是資料是否被正規化。 不同類型的資料在系統中呈現一致 正規化可能對一些人來說聽起來很抽象,有些人
Thumbnail
系統的分析與規劃 在談到程式設計時,首要的是進行系統的分析與規劃。程式設計的起點通常是系統分析與規劃,這涉及到如何分析和設計系統的大原則和方向。為了達到預期效果,重要的是擁有對產業的清晰邏輯認識和深入了解。 進行深入了解 若要進行系統分析,必須對企業的設計和程式設計的對象進行深入了解,以充分理
Thumbnail
** 3C機構設計爸版權所有 ** 有好多朋友在問,我是機構設計人員,需要去了解模具費方面的知識嗎?3C機構設計爸就此疑問展延申述2022-9-16第27篇文章的主題來給提問的這幾位朋友做了以下的說明和分析: 1.如果你一輩子是把自己定格在初級的設計人員,你可以不涉獵模具費用議題。 2.如果你
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
模擬世界是我們寫程式造出來的,我們就是模擬世界的主宰,所以各種作用力要長什麼樣子、要怎麼個作用法,都由我們決定。不過,如果希望這些作用力看起來像真實世界的作用力一樣,那在寫程式的時候,套用這些作用力在真實世界中的物理公式,會是比較省時省力的做法。
你學習任何數學, 都要問這哪個部分是微積分長出來的, 哪個部分是線性代數長出來的。 當然,你需要先把微積分與線性代數學一次, 知道裡面有哪些內容, 接下來學任何新的東西,其實都是微積分跟線性代數。
數學系的訓練,與上面閱讀原始碼的優先順序,本質上是反過來的。在數學的訓練中,是先把函數定義的非常清楚,再進一步去看函數應用在具體的數據上會發生什麼行為,然後就到此為止,不太會再有進一步的討論。但如上面西尾泰和所述,工程師看事情的角度,是先掌握全局,然後再進一步細化每一層的細節。
Thumbnail
本文提供了一個關於模擬法演算法的問題,介紹了操作指令的格式及其解析。透過程式碼模擬每條指令,找出回到根目錄所需的操作次數。本文詳細說明瞭模擬法的複雜度分析,能夠幫助讀者更好地理解這個問題。
Thumbnail
有好友問我對「建構式數學」有何看法? 其實,我對傳統式和建構式的教法,沒什麼意見。各有利弊。 我比較在意的是:一定要孩子用「建構式」的做法,否則就拿不到分數。 不是要孩子、家長,別太在意分數、成績這事嗎? 這做法,最多用到小學三年級,還不是得另外學直式、橫式?
Thumbnail
網格擴散可以就像剪紙一樣,把紙上想要的部分剪下來。 通過模型的一個點,找到周圍相鄰的點;其他點又能找到周圍相鄰的點,就像水波一樣擴散出去。 許多3D的算法,如裁切、干涉深度偵測等都會用到。
Thumbnail
3D列印是將溶化後的塑膠從一個金屬頭擠出,再用程式控制他去一層一層往上的打印出不同的形狀,做出各種不同的東西,是我認為中一個很重要的技能,畢竟你能在網路上做出一個東西在辦到現實真的非常實用。
Thumbnail
資料的統合 在程式設計中,其他人通常關心是否注意到執行的細節。作為程式設計師,主要應該關心的是程式的表現,但往往忽略了很多細節,這些細節可以決定程式的好壞。程式的好壞很大程度上取決於資料的統合,也就是資料是否被正規化。 不同類型的資料在系統中呈現一致 正規化可能對一些人來說聽起來很抽象,有些人
Thumbnail
系統的分析與規劃 在談到程式設計時,首要的是進行系統的分析與規劃。程式設計的起點通常是系統分析與規劃,這涉及到如何分析和設計系統的大原則和方向。為了達到預期效果,重要的是擁有對產業的清晰邏輯認識和深入了解。 進行深入了解 若要進行系統分析,必須對企業的設計和程式設計的對象進行深入了解,以充分理
Thumbnail
** 3C機構設計爸版權所有 ** 有好多朋友在問,我是機構設計人員,需要去了解模具費方面的知識嗎?3C機構設計爸就此疑問展延申述2022-9-16第27篇文章的主題來給提問的這幾位朋友做了以下的說明和分析: 1.如果你一輩子是把自己定格在初級的設計人員,你可以不涉獵模具費用議題。 2.如果你