時間步長控制是動態問題求解的關鍵。資訊(力、速度等)通過一個單元所需要的最小時間被稱為關鍵時間步長。我們設置的時間步長如果大於這個值會導致結果不收斂,而太小會導致時間成本過高。

真是不好辦呢!更討厭的是,關鍵時間步長不是均勻的,它與網格大小、元件材料有關。不同元件的關鍵時間步長可能相差好幾倍。這種情況下,按照誰的關鍵時間步長來計算呢?


吵啥!小汰來幫你解決~
“&*%#@...召喚RADIOSS多域求解~”(此處為暗語,需保密)
有了!可以按照不同的時間步長來計算。
原理
多域求解是將模型分割為全域(full domain)和子域(sub-domain),按照不同的時間步長求解。
全域和子域通過rad2rad耦合。它們並不是同時求解,而是輪流求解。如下圖所示,全域求解一段時間,把求解結果告訴rad2rad。Rad2rad又告訴子域,然後子域求解。子域解一會兒,又輪到全域求解......

多域求解的好處顯而易見,全域、子域可以按照自己的節奏計算。都保證精度但不浪費時間,提高了效率。
BUT!!!
r2r耦合資訊的過程也是消耗計算資源的。如果r2r消耗的資源大於節省的時間,就得不償失啦。我們一般認為,多域求解在以下情況下是高效的選擇:
🔹 子域節點數、單元數不超過全域的30%
🔹 子域關鍵時間步長不大於全域的1/3
🔹 子域和全域的連接關係越少越好,以免r2r資訊傳遞成本過高
說到連接關係,我們把模型分兩半時怎麼處理連接呢?
當你選擇把某些元件作為子域,RADIOSS在求解starter file時,就會自動劃分連接關係。它的劃分規則如下:
共節點

RADIOSS自動檢測到全、子域間有元件共節點,創建node to node連接。
剛體 /RBODY

當同一個剛體被拆分到兩個不同域,在每個域中都會計算品質、慣量、重心等資訊。兩邊各自計算出一個主節點位置,然後進行耦合。
TYPE2連接 /INTER/TYPE2

當TYPE2的主、從節點分屬兩個域時,主節點會在另一個域中被複製並賦予空材料、保持與從點的連接。然後求解資訊耦合到主節點本來存在的域中。

/RLINK & /RBE3
從節點會在另一個域裡被複製,然後耦合。
其他會被複製的卡片
/BCS
/IMPVEL
/IMPDISP
/RWALL
/RIVET
接觸
天啦嚕!如果一個接觸的主、從面被殘酷地分到了不同域,怎麼辦?

這時一個虛擬面(artificial skin)產生了。這裡要把全、子域(full & sub-domain)定義為主、從域(master & slave domain)。從域中的面會被複製到主域中,成為虛擬面。這個面被賦予空材料並維持原來的楊氏模量和密度。然後如上圖所示,虛擬面就假裝自己是原來的surface2,與surface1在主域中進行接觸計算。計算的結果會通過r2r傳遞到從域。
如果對接觸的計算精度有要求,可以把子域(sub-domain)定為主(master domain)。因為接觸計算總在主域中進行,如果主域選為時間步長小的子域,精度自然更有保障。

Attention
分割全域、子域時,要使接觸盡可能少。否則r2r計算成本太高。
如果在求解子檔後發現警告
“multidomain interface is too big”
就說明被拆分接觸太多啦,換一種拆分方式吧。

道理都明白了,趕緊動手試一下吧!
案例
在RADIOSS幫助文檔Exemple 37中可以找到下面這個案例哦~
下圖中可以看到一個保險杠撞擊柱子。紅色的是會與柱子接觸的部分,我們需要研究它的形變,所以這部分網格更細。其他部分的網格更粗糙。兩個部分所使用的時間步長大概差三倍。

大致流程:
🔹 按照正常建模方法,創建bumper_0000和bumper_0001檔。
🔹 創建子域
用HyperCrash打開模型,點擊Process>Multidomain。創建新的domain:

Title填寫子功能變數名稱稱,之後會按照這個名稱生成子域的engine檔;
Parts選擇想放入子域的元件,比如圖中紅色部分;
Engine file可以先選已經存在的bumper_0001檔,之後會自動生成子域對應的FINE_MESH_0001檔。
🔹 點擊Model>control cards,編輯控制卡片:
Starter中勾選SPMD(single process multiple domain,多域單執行緒);
Engine中勾選RAD2RAD。
🔹 修改子域0001檔
匯出文件後,FINE_MESH_0001.rad自動生成啦。
打開它,我們會發現內容與bumper_0001一模一樣!
我們把時間步長改小,改為適合子域的即可。
🔹 求解
打開RADIOSS,勾選-multidomain,求解。
來看看結果如何:

<形變圖>

<撞擊力>

<內能變化>
以上是按照正常方法和多域求解的對比結果,可以看出兩者幾乎沒有差別。而計算時間從5930s降到了3310s,節省了44%。