跳轉至

錯誤訊息一覽

本頁依類別整理 FrontISTR 輸出的代表性錯誤訊息,並以對照表列出可能原因與處理方向。此處不涵蓋所有內部訊息,而是聚焦於使用 hecmw_part1fistr1 時常見的訊息。

顯示訊息時,請先確認是否有錯誤代碼並辨識其前綴。接著依對應類別的表格,判斷應檢查輸入檔、網格、元素、求解器、接觸、收斂或記憶體設定中的哪一部分。

訊息的閱讀方式

FrontISTR 的訊息包含來自 HEC-MW 函式庫的帶代碼訊息,以及由 fistr1 直接輸出的無代碼訊息。對於帶代碼訊息,可由前綴判斷來源模組與嚴重程度。

格式 範例 閱讀方式
HECMW-XXX-EYYYY HECMW-IO-E1014 HEC-MW 函式庫的錯誤。XXX 表示子模組,E 表示 Error,YYYY 為訊息編號。
HECMW-XXX-WYYYY HECMW-PART-W0401 HEC-MW 函式庫的警告。W 表示 Warning。
無代碼 Number of substeps reached max number 主要由 fistr1 透過 STOPcall hecmw_abortwrite(*,*) 等路徑直接輸出。

訊息尾端顯示的數字或字串,可能是檔名、材料編號、元素編號、子步驟編號、內部旗標等執行階段資訊。同一代表性訊息的尾端值會依分析案例而不同。

輸入解析錯誤

輸入解析錯誤發生於讀取控制檔、網格資料、材料定義、重新啟動指定等輸入時。遇到此類錯誤時,請檢查錯誤發生前正在讀取的檔名、關鍵字名稱、材料名稱與群組名稱。

訊息或代碼 主要原因 處理方向
Cannot open FSTR control file 無法開啟控制檔或 !INCLUDE 指定的輸入檔。 檢查執行目錄、檔名、相對路徑與存取權限。
material property not defined! 分析所參照的材料未以 !MATERIAL 定義。 使 !SECTION 參照的材料名稱與控制檔或網格資料中的 !MATERIAL 名稱一致。
Error in material property definition! 材料 ID、材料定義數量或其參照關係不一致。 檢查材料編號、材料定義數量及 !SECTION 的參照。
ERROR: Material type not supported 材料關鍵字指定了不支援的 TYPE !ELASTIC!HYPERELASTIC!PLASTIC!VISCOELASTIC 檢查相應的 TYPE
We cannot deal with incompressible material currently 指定了 Poisson 比為 0.5 的完全不可壓縮材料。 將 Poisson 比改為小於 0.5,必要時重新檢討元素公式。
Mohr-Coulomb and Drucker-Prager do not support temperature dependency 對 Mohr-Coulomb 或 Drucker-Prager 指定了溫度相依表格。 使用不含溫度相依性的定義,或選擇支援溫度相依性的材料模型。
Multilinear hardening: Error in plastic strain definition 多線性硬化的塑性應變未以單調方式定義。 將第一個塑性應變設為 0,並修正表格使塑性應變遞增。
HECMW-IO-E1012 Element doesn't have section 找不到與元素對應的截面資訊。 檢查 !SECTION 中的元素群組指定,以及網格中的元素群組。
HECMW-IO-E1013 Cannot set section 無法將截面指定給元素。 檢查截面類型、材料名稱與元素群組名稱的一致性。
HECMW-IO-E1014 No nodes defined 沒有節點定義。 檢查網格資料是否包含節點區塊。
HECMW-IO-E1015 No elements defined 沒有元素定義。 檢查網格資料是否包含元素區塊。
HECMW-UTIL-E0040 !RESTART: Invalid token in control file !RESTART 語法不正確。 檢查 !RESTART 行的分隔符、參數名稱與值。
HECMW-UTIL-E0041 !RESTART: Missing NAME !RESTART 中沒有 NAME 指定重新啟動資料名稱。
HECMW-UTIL-E0042 !RESTART: Missing IO !RESTART 中沒有 IO 加入讀取/寫出指定。

網格與元素錯誤

當元素類型與功能的組合、參照節點、局部座標系,或接觸面所用元素類型不適當時,會發生網格與元素錯誤。除了輸入語法,也請檢查元素形狀品質與節點順序。

訊息 主要原因 處理方向
##Error: This element type is not supported in contact analysis !!! 接觸面指定了接觸分析不支援的元素類型。 重新檢討接觸面所用元素類型與表面定義。確認接觸面是否使用高次或特殊元素。
Bad reference for beam element! 梁元素的參照節點或參照方向不正確。 檢查梁元素的參照節點、局部座標系與重複節點。
Fail to setup local coordinate 無法建構元素的局部座標系。 檢查元素幾何是否退化、節點順序、重複節點與參照座標系。

局部座標系設定失敗不僅與輸入值有關,也取決於網格品質。尤其應檢查是否存在極小元素、面積或體積接近 0 的元素,以及節點順序反轉的元素。

求解器相關錯誤

求解器相關錯誤可能由線性求解器設定不正確、直接法分解失敗、矩陣奇異、未連結外部函式庫等原因造成。請確認分析停止前的日誌是否包含反覆法、直接法、接觸自由度、MPC 等相關資訊。

訊息 主要原因 處理方向
ERROR ordering option for direct solver out of range 直接求解器的排序指定超出範圍。 檢查 !SOLVER 中直接求解器的排序設定。
ERROR in symb. fact. flag: Should be 1 or 0 符號分解旗標不是 0 或 1。 檢查內部直接求解器旗標的指定值。通常使用者不會直接修改此設定。
ERROR in numer. fact. flag: Should be 1 or 0 數值分解旗標不是 0 或 1。 檢查內部直接求解器旗標的指定值。
ERROR in nufct0. ir = 直接法的數值分解失敗。 檢查拘束是否不足、剛體模態、異常材料常數、接觸條件與 MPC 條件。
error in nusol0. irr = 直接法的回代失敗。 與數值分解失敗相同,檢查線性系統是否奇異或不一致。
METIS not available 指定了以 METIS 為基礎的排序,但目前建置未包含 METIS 支援。 改用不使用 METIS 的設定,或重新建置並啟用 METIS。相依函式庫請參閱必要與選用相依函式庫

直接法分解失敗不一定只是求解器設定造成,也可能由模型剛體運動、拘束不足、重複拘束、極端材料常數或接觸條件不一致所致。將拘束與載荷還原為簡單案例,確認最小設定下能否解出線性系統,有助於釐清原因。

接觸分析錯誤

接觸分析錯誤可能由接觸配對與表面群組不一致、接觸搜尋時的幾何奇異、表面元素類型不符,或接觸搜尋記憶體不足所造成。遇到接觸錯誤時,請檢查 slave 與 master 群組名稱、接觸面的元素類型、初始穿透量及接觸面的法向方向。

訊息 主要原因 處理方向
Inconsistence in contact and surface definition !CONTACT!EMBED 參照的表面群組或接觸配對不一致。 檢查接觸配對名稱、表面群組名稱,以及節點群組與表面群組是否存在。
error in contact state 接觸狀態資料未參照有效的接觸面。 檢查接觸面定義、初始接觸狀態,以及啟用該接觸配對的步驟。
Math error in contact searching 接觸點投影過程中發生奇異狀態。 檢查接觸面幾何、節點配置、初始穿透與極端變形。
Error in calculate DispIncreMatrix 無法計算接觸面上的位移增量矩陣。 檢查接觸面元素的幾何是否退化,以及節點順序是否正確。
Error: cal_node_normal: invalid isin / Error: cal_node_normal: invalid isin_n 計算節點法向量時,節點不在預期的接觸面位置。 檢查表面定義、接觸面方向與 slave/master 指定。
type of surface element not defined 無法識別表面元素類型。 檢查接觸面指定的元素類型與面編號。
Allocation error: bktdb%buckets 接觸搜尋所用 bucket 陣列的記憶體配置失敗。 重新檢討接觸面數量、網格密度、領域數與可用記憶體。

若接觸相關錯誤在讀入輸入資料後立即出現,首先應懷疑接觸配對或表面群組名稱不符。若錯誤在非線性反覆過程中出現,則可能是接觸面嚴重變形、初始穿透過大,或時間增量過大。

接觸類型與接觸演算法的選擇指引請參閱接觸與嵌入

收斂與 Cutback 錯誤

當非線性靜態分析中的子步驟無法推進時,會發生收斂與 cutback 錯誤。常見原因包括接觸開始或分離、降伏快速進展、大變形、拘束不一致,以及載荷增量過大。

訊息 主要原因 處理方向
Number of successive cutback reached max number 因收斂失敗而重複 cutback,已達連續失敗次數上限。 減小初始時間增量。重新檢討 AUTOINC_PARAM 中的 cutback 縮小率與連續失敗上限,並確認接觸、材料與邊界條件是否合理。
Number of substeps reached max number 步驟完成前已達子步驟數上限。 增加 SUBSTEPS。減小載荷或時間增量。在非線性急遽變化的時間點加入輸出時刻,或將步驟拆分。

收斂失敗時,單純增加求解器最大反覆次數未必能解決根本原因。分階段施加載荷,並以簡化的接觸條件或材料非線性確認可重現性,有助於釐清原因。

邊界條件錯誤

當控制檔中的指定違反功能限制時,會發生邊界條件錯誤。對旋轉邊界條件而言,若像位移拘束一樣使用總量指定,便會發生錯誤。

訊息 主要原因 處理方向
Error: rotational boundary cannot be specified with total value 旋轉拘束使用了總量指定(TOTAL=YES)。 旋轉拘束請使用增量指定。修改邊界條件定義並移除 TOTAL=YES
fstr control file error : !BOUNDARY : rotational boundary cannot be specified with total value 讀取控制檔時偵測到相同的限制違反。 檢查 !BOUNDARY 中的旋轉拘束行與 TOTAL 指定。

旋轉拘束與旋轉載荷也取決於元素類型與自由度配置。使用梁、殼等具有旋轉自由度的元素時,請同時確認邊界條件的自由度編號與目標節點群組。

領域分割(hecmw_part1)錯誤

hecmw_part1 的錯誤會以 HECMW-PART 開頭的代碼輸出。對領域分割,請依序檢查輸入檔是否存在、!PARTITION 的必要參數、分割方法與領域數的限制,以及使用者指定 part 檔的一致性。

代碼範圍或代表性代碼 主要原因 處理方向
HECMW-PART-E0001–E0006 與檔案操作、檔名、EOF 或引數相關的基本錯誤。 檢查指定檔案是否存在、檔名長度、輸入檔結尾與命令列引數。
HECMW-PART-E0101 控制檔包含無效 token。 檢查 !PARTITION 行與分割方向指定行的語法。
HECMW-PART-E0111 'TYPE' must not be omitted 未指定 TYPE 指定例如 !PARTITION, TYPE=NODE-BASED 的分割類型。
HECMW-PART-E0121 'METHOD' must not be omitted 未指定 METHOD 指定 METHOD=RCBMETHOD=PMETISMETHOD=KMETIS 或其他適用方法。
HECMW-PART-E0131 'DOMAIN' must not be omitted 未指定領域數。 DOMAIN 設為與 MPI 行程數對應的正整數。
HECMW-PART-E0134 'METHOD' is 'RCB', but 'DOMAIN' is not n-th power of 2 使用 RCB 方法時,領域數不是 \(2^n\) 使用 RCB 時請將領域數設為 \(2^n\)。若需要任意領域數,可考慮以 METIS 為基礎的方法。
HECMW-PART-E0201–E0206 分割類型、分割方法、元素類型、分割方向、領域數或重疊深度無效。 檢查 TYPEMETHODDOMAINDEPTH 與分割方向指定。
HECMW-PART-E0301–E0331 分割後資料中的領域編號、節點數、元素數或相鄰領域數超出範圍。 檢查輸入網格、使用者指定 part 檔與分割數之間的一致性。
HECMW-PART-E0601–E0606 使用者指定的 part 檔包含空領域、格式無效,或節點數、元素數、領域數不一致。 檢查 part 檔格式及其與網格的一致性。
HECMW-PART-W0401 EQUATION_BLOCK not found 未找到 EQUATION_BLOCK 的警告。 若使用 MPC 的分析需要此區塊,請檢查相應區塊;若不需要則可繼續執行。
HECMW-PART-W0502 Log file for partitioner already initialized 日誌初始化被呼叫超過一次。 通常可視為警告,並確認其後是否立即出現致命錯誤。

領域分割的概念與分割方法選擇請參閱領域分割。具體的平行執行程序請參閱執行指南。

記憶體配置錯誤

當無法配置陣列或工作區域時,會輸出記憶體配置錯誤。大型網格、接觸面很多的模型、直接法,以及輸出變數很多的分析都會增加記憶體使用量。

訊息 主要原因 處理方向
stop due to allocation error <FSTR_SOLID, TEMPERATURE> 溫度陣列配置失敗。 檢查節點數、溫度自由度、熱應力設定與可用記憶體。
stop due to allocation error <FSTR_SOLID, GL> 結構分析用全域陣列配置失敗。 重新檢討模型規模、領域數、分析類型與輸出項目。
Allocation error: bktdb%buckets 無法配置接觸搜尋用 bucket 陣列。 重新檢討接觸面數量、網格密度、接觸配對數與領域分割。
ALLOCATION ERROR, ... 無法配置直接法或排序處理的工作陣列。 考慮由直接法改用反覆法、調整領域數,或增加配置給工作的記憶體。

若懷疑記憶體不足,首先確認是否可將直接法改為反覆法。若必須使用直接法,則考慮縮小模型、減少輸出變數數量、調整領域數,或增加分配給工作的記憶體。

重新啟動錯誤

重新啟動錯誤可能由 !RESTART 語法不正確、缺少必要參數,或讀取檔案與目前分析條件不一致所造成。使用重新啟動功能時,寫出資料的分析與讀取資料的分析,其網格、領域數、分析類型與步驟資訊必須一致。

代碼 主要原因 處理方向
HECMW-UTIL-E0040 !RESTART: Invalid token in control file !RESTART 行的語法不正確。 檢查參數名稱、分隔符與值的格式。
HECMW-UTIL-E0041 !RESTART: Missing NAME 未指定 NAME 指定重新啟動資料名稱。
HECMW-UTIL-E0042 !RESTART: Missing IO 未指定 IO 加入讀取/寫出指定。

若重新啟動資料讀取失敗,除了重新啟動檔名,也要檢查寫出與讀取時的網格、MPI 領域數、步驟設定與重新啟動版本。重新啟動功能概要請參閱輸出與重新啟動

相關項目