模擬操作類QA

Q.

【求解器設定】執行 FDTD aXware GPU 加速運算時出現邏輯錯誤的訊息

A.

錯誤訊息:

ERROR: A aXware function call failed and reports: Invalid parameter value: One or more logical errors exist in the simulation specification

 

說明:

檢查 source 的網格劃分是否有錯誤,再重新設定 source 的位置

Q.

【求解器設定】aXware GPU 加速模擬運行時突然中斷並顯示未知系統錯誤

A.

錯誤訊息:

A aXware function call failed and reports: Other failure.: ERROR: Unknown system failure. 

 

說明:

檢查顯示卡的配置是否有問題: 

1. 確認 Sim4Life 安裝時的設定選項(一般維持預設的選項) 

2. 在 NVIDIA 控制面板勾選適用的顯示卡 

3. 根據 license 的 token 數量(aXware or CUDA),在 ARES 視窗勾選相對應的 GPU 數量

Q.

【求解器設定】求解器無法運行模擬並出現 HDF5 檔案無法關閉的錯誤訊息

A.

錯誤訊息: 

ERROR: Can't close HDF5 file. 

ERROR: Fatal log error: conversion of log message to UTF-16 failed. 

ERROR: The solver process returned an error code:

 

說明:

請檢查檔案所在的硬碟空間是否足夠,若空間不足請將檔案換到有足夠空間的硬碟中。

Q.

【求解器設定】使用兩個低頻求解器串接做模擬時(MSVP 求解器的結果作為 MQS 求解器的場源),如何處理網格插值錯誤的問題?

A.

錯誤訊息: 

Error : Simulation 'LF 1' reports the following failure: 

Error : Interpolation error: Component 2 seems to be outside the interpolation grid: -0.144094 < -0.106346. 

Error : Simulation 'LF 1' failed on 2018-Jul-18 08:02:14 

Error : iSolve framework failed (see previous error messages). 

Error : The solver process returned an error code:

 

說明:

MSVP 的計算域沒有完全包含到 MQS 的計算域,導致只有部分的 MQS 計算域可以讀取到 MSVP 所生成的場。我們可使用下列兩個解決方式: 

1. 增加 vector potential 所涵蓋的區域 (e.g. 在 MSVP 的網格設定增加 padding) 

2. 降低需使用 vector potential 做為源的計算區域 (e.g. 在 MQS 的網格設定減少 padding)

 

參考連結: Magneto-QuasiStatic: Interpolation error

Q.

【求解器設定】為什麼 MQS (Magneto-Quasi-Static) 模擬有時會無法收斂,並出現 diverged (indefinite matrix) 錯誤?

A.

在某些經顱磁刺激(TMS)或其他 MQS 應用的模擬中,Sim4Life 可能會出現以下錯誤訊息:   

 

Solver returns: 'diverged (indefinite matrix)'. 

ERROR: Linear system solver could not determine the solution.   

 

可能原因與解決方法

 

A. 數值方法上的限制


(1) 原因:   

  • 這種收斂失敗通常不是模型錯誤,而是來自預設數值方法在該類問題上的限制。雖然預設方法在一般情況下效率高,但在某些 TMS/MQS 例子中可能導致不定矩陣(indefinite matrix)而無法收斂。   

 

 (2) 解決方式: 切換成 GMRES 預條件器(preconditioner)   

  • 從 Sim4Life v3.4.3 版本起,使用者可在 Solver 設定中調整額外求解器參數,以避免上述問題
  • 在 Additional Solver Options 輸入框內輸入此參數: -ksp_type gmres
  • 這會指示求解器改用 GMRES 方法,可避免不定矩陣造成的收斂問題
MQS Solver Setting Example

B. 計算域邊界(boundaries)過於接近或切入模型物件


(1) 原因: 

  • 如果計算域的邊界接觸到模型物件,或切入模型的一部分,容易造成求解器不穩定,進而導致 preconditioner 發散。 

 

(2) 解決方式: 在邊界與模型之間加入空氣塊(Air Block) 

  • 建立額外的 Air block (空氣塊),將其放置於模型外側、不需要模擬的區域
  • 在 voxel 設定中,將 air block 設定為 比模型更高的優先級 (priority)
  • 將計算域邊界稍微外移(僅需增加數格 cell),使邊界不再碰到模型本體,而是碰到空氣塊 
  • 空氣方塊可放到與背景材料相同的群組中(或單獨歸類成一個 Manual Folder 並提高其優先度)

 

這樣可以有效避免邊界直接干涉模型而造成不穩定。 

 

C. 電流源(current sources)未正確離散化


(1) 原因: 

  • MQS 求解需要電流源是封閉電流迴路(closed current loops),且方向一致。如果電流源結構不完整,或方向錯誤,就會造成電流場非散度自由(non–divergence-free),導致求解器失敗。 

 

(2) 解決方式: 確保電流源形成正確的封閉迴路 

  • 電流來源必須構成完整的 closed loop
  • 若使用 spiral、複雜線圈或需額外線段來閉合電路時: 
    • 必須確認所有線段的方向一致
    • 電流流向需構成無散度(divergence-free)的場
  • 檢查是否存在反向線段或未封閉的線段

 

只要電流源離散化正確,求解器通常能正常收斂。

Q.

【建模工具使用】建模有厚度的長螺旋線圈時,線圈表面產生變形

A.

問題圖示:

1. 長螺旋線圈模型建立後表面產生變形


2. 長螺旋線圈(200mm)與短螺旋線圈(70mm)表面比較


說明:

螺旋幾何面建模引擎出現異常,待後續版本修復。目前用戶可以用替代方法(如: 布林運算工具),透過將兩個較短的螺旋組合成長螺旋線圈。

Q.

【建模工具使用】建立兩個螺旋線圈後用線段連接它們的端點,線圈模型在模擬中出現錯誤訊息

A.

錯誤訊息與圖示:

ERROR: Polyline current sources seem not conservative, i.e., have open end points. This leads to instable simulations.


 

說明: 

用線段連接線圈端點時的一個常見問題是,從視覺上看線段和線圈可能看起來是連接的,但它們通常沒有正確地接在一起。我們可以做兩件事來確保它們一致:

(1) 確保在繪製線條時,該點周圍會出現三條白線


 

也可以選擇線圈,然後點擊工具欄位 Extract 選項中的 Extract Points,這將顯示線圈的精確端點,可以仔細檢查的線段是否與線圈具有相同的兩個點


 

(2) 利用布林運算工具結合線圈和線段: 可以按住 Control 鍵並選擇兩個線圈和連接端點的兩條線段,然後在工具欄位中選擇 Boolean | Unite 來完成此操作

Q.

【建模工具使用】如何在網格化(Meshed)模型的表面繪製線段?

A.

Sim4Life V7 發布後用戶可以使用線段生成工具 Draw Line 在網格化(Meshed)的模型表面繪製線段。

 

流程: 

1. 選擇表面網格化的模型

2. 點選工具欄的 Mesh Tools | Draw Line

3. 在模型表面繪製線段

4. Options 視窗點選 Run 完成設定


圖形演示:

 

Q.

【建模工具使用】如何將大型複雜模型(如: 車殼)表面網格化(Meshing)?

A.

請使用“Reconstruct Hull”建模工具重新計算模型的外殼,以嘗試填補一些空白處。

 

以下是建議的“Reconstruct Hull”設定參數,但需要較長的時間來計算: 

  • Tolerance: 1mm ž   
  • Gap radius: 50-60 (mm) ž   
  • Feature radius: 0 ž   
  • Offset: 0   

 

然後,使用“Append Mesh”工具來組合模型的網格(Mesh),再用“Mesh Doctor”工具進一步清理不完整的網格。當模型網格按照使用者的規格完成清理後,就可以將其添加到模擬中。

 

求解器的網格(Grid)設定將影響模型細節的準確度。最後,可以將來自不同模擬類型(LF、FDTD)的結果進行組合。

Q.

【建模工具使用】如何使用 Snapping 複製物件,使物件相對平面原點等角度分佈?

A.

1. 選取物件名稱後在工具列點選 Move,3D 視窗會產生樞紐(Pivot) 

2. 在工具列的 Snapping 設定 Angular Snap (e.g. 45 deg)


3. 按住 Ctrl 鍵並同時轉動樞紐圓環,圓環會以設定的 Angular Snap 角度為單位來轉動。如左下圖所示,右下圖為完成後的圖示。

 

Q.

【建模工具使用】使用 POSER 工具調整 ViP 模型姿勢後,如何儲存/導出姿勢檔案?

A.
  • 若要儲存目前姿勢,請在 Postures 的輸入框填寫姿勢名稱並按 Store Current As,姿勢會添加到上面的清單中
  • 若要刪除其中一個姿勢,按下該姿勢旁的 X 按鈕
  • 若要匯出姿勢,按 Export… 並輸入檔名
  • 若要匯入姿勢,按 Import… 並選擇檔名
Q.

【建模工具使用】如何同時將多個模型移動相同的距離且距離參數化?

A.

1. 先把欲同時移動的模型群組化(Group Selection),然後再建立一個參考物件 

2. 點選工具列的 Tools | links to Parents,開啟 Edit links 視窗。將參考物件從 Explorer 視窗拖曳到 Edit links 視窗,然後將群組化的模型拖曳到參考物件底下 

3. 在 Properties 視窗設定參考物件的參數化距離即可同時移動所有模型

CONTACT US
如果您對我們的產品服務有興趣,歡迎直接與我們聯繫 !
產品介紹 最新消息 聯絡我們

依據歐盟施行的個人資料保護法,我們致力於保護您的個人資料並提供您對個人資料的掌握。
按一下「全部接受」,代表您允許我們置放 Cookie 來提升您在本網站上的使用體驗、協助我們分析網站效能和使用狀況,以及讓我們投放相關聯的行銷內容。您可以在下方管理 Cookie 設定。 按一下「同意」即代表您同意採用目前的設定,更多資訊請瀏覽 隱私權聲明

此網站使用了Cookies

依據歐盟施行的個人資料保護法,我們致力於保護您的個人資料並提供您對個人資料的掌握。按一下「同意」,代表您允許我們置放 Cookie 來提升您在本網站上的使用體驗、協助我們分析網站效能和使用狀況,以及讓我們投放相關聯的行銷內容。

按一下「僅必需的」,代表您只允許我們置放必要的 Cookie。網站運行離不開這些 Cookie 且您不能在系統中將其關閉。通常僅根據您所做出的操作(即服務請求)來設置這些 Cookie,如設置隱私偏好、登錄或填充表格。您可以將您的瀏覽器設置為阻止或向您提示這些 Cookie,但可能會導致某些網站功能無法工作。

關於Cookie 谷歌隱私權政策