帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
PyAnsys結合Python擷取分析工程模擬數據
PyAnsys模擬工具技術教學(五)

【作者: 林鳴志】   2023年08月22日 星期二

瀏覽人次:【944】

PyAnsys針對Ansys各類模擬軟體模擬提供數據擷取的函式,取得的數據可以結合Python的資料分析模組進行數據處理和機器學習,本文將詳細說明操作的概念。


在現代科技產品的設計過程中,工程模擬扮演著關鍵的角色。工程模擬讓工程師能在設計初期就掌握到產品在實際環境中的效能表現,因此能夠大幅節省研發的時間與成本,進一步推動產品的創新與進步。然而,這也同時帶來一些挑戰,包括如何有效解讀模擬數據、如何迅速製作模擬報告,以及如何運用這些數據進行預測與優化設計等問題。接下來,將說明工程模擬分析操作的概念。


模擬數據解讀

模擬數據解讀是模擬工作中非常重要的一環。模擬數據解讀指的是從模擬過程所得到的數據中,理解並提取有價值的資訊,進而幫助工程師做出準確的決策和改進產品設計。在進行模擬時,我們常常會產生大量的數據,如流場分析的壓力、速度場數值、結構分析的應力與變形等。這些數據在本身的形式下可能難以直接理解,因此需要進行資料解讀,來把它們轉化為容易理解的形式。


實務上,我們可以利用各種數學操作工具,包括統計方法、變異量分析、實驗計畫和圖表化等方法,從龐大的數據當中發掘出有用的資訊。透過這一系列的操作,可以更深入地了解設計的特性,分析模擬結果中的趨勢、模式和異常點,以及進行對比分析,從而取得有意義的洞察和結論。


模擬軟體本身提供了一定程度的數據分析和可視化的功能,讓工程師能夠獲取設計過程中的關鍵數據。然而,這些模擬工具在提供數據分析和可視化方面,可能還存在一些短版。儘管它們能夠產生各種圖表,但卻缺乏整體化、一貫性的分析流程,使用者在每一次模擬完成後,必須手動建立所有的資料圖表,有時甚至還需要倚賴第三方軟體(EXCEL等),來完成特定的分析工作。這樣的過程瑣碎零散,不僅耗時耗力,而且無法重複利用。


在尋找一種能夠對工程模擬數據進行更靈活且強大處理的工具時,Python與其生態系的Jupyter Notebook成為了一個理想的選擇。Jupyter Notebook 是一個開源的網頁應用程式,能夠讓使用者建立和分享,包含代碼、數學方程、圖表、連結和格式化說明性質文字的文件。



圖一 : Jupyter Notebook讀取並輸出模擬曲線
圖一 : Jupyter Notebook讀取並輸出模擬曲線

Jupyter Notebook支援多種程式語言,其中包含 Python。Python擁有強大的數據處理和科學計算能力,並且有許多資料分析和視覺化的套件,如 NumPy、Pandas 和 Matplotlib 等。這些工具讓使用者能夠方便地進行數據清理、轉換、分析和視覺化。


在 Jupyter Notebook中,使用者可以將 Python代碼和其執行結果(如計算結果、圖表等)一同記錄在單一文件中,並可隨時修改代碼並立即看到結果。這種互動性質讓 Jupyter Notebook 成為一個強大的數據分析工具,可以讓工程師快速瞭解和探索他們的模擬數據。


報告生成及自動更新

工程師在完成數據分析之後,還需要製作報告統整各項資料以提交給主管或客戶。製作這樣的報告不僅僅需要收集和整理模擬數據,還需要進行格式化和排版,以確保報告的準確性和易讀性。目前,工程師通常仰賴手動複製/貼上圖表、格式化文字和標題,並添加個人見解。這個過程非常耗時且繁瑣,而且可能會分散工程師的注意力,降低工作效率。


Python的優勢呈現在其提供如 python-docx、python-pptx 和 ReportLab 等模組,這些模組不只能自動生成報告,還能進行精準的格式化,應用於 Microsoft Word、PowerPoint 和 PDF 的報告文件。當這些功能強大的模組應用於 PyAnsys 過程中,工程師能夠更輕鬆地透過程式碼,從模擬結果中抽取資料,並且整理成結構化的報告。


有了 PyAnsys,使用者能夠輕易擷取模擬數據,然後透過 python-docx、python-pptx 或 ReportLab 等模組,來生成包含文字、圖表、表格等各式元素的完整報告。此一做法讓使用者能根據自身需求,完全自定義報告格式, 包含字型、顏色、段落格式等;另外,利用模板來快速產生報告,也能夠避免每次都需要從無到有的製作報告。


試想一下,每次模擬完成後,只需執行一段 Python 程式碼。程式碼將自動讀取模擬檔案,擷取所有必要的數據,計算統計指標,並產出各種折線圖、輪廓圖、合格/不合格的表格。甚至還會自動在報告中插入相應的數值和文字說明,而完全無需人工操作。再者,這種資料處理及報表生成的自動化,將會大幅度提升工程師的工作效率。


機器學習

機器學習的模型訓練需求大量的數據,這些數據若透過實物原型和實際測量來取得,往往成本高昂且耗時。然而,透過模擬技術可以有效地解決此問題,由於模擬能夠在短時間內以相對低成本生成大量數據,這些數據可用來訓練機器學習模型。在虛擬環境中,透過模擬能夠模擬出現實世界中各種不同的情境,生成多變的數據。這些數據覆蓋多元的場景和參數組合,使機器學習模型得以學習並理解更廣泛和多元的特徵,此方式大大節省了實體測試和量測所需的時間和成本。


Python提供多元的機器學習庫和工具,使得模擬和機器學習的整合更為容易實現。例如,NumPy、Pandas等庫可以用來處理和分析數據,Scikit-learn可以用於建立和訓練機器學習模型,而TensorFlow、PyTorch等庫則支援深度學習模型的構建和訓練;這些工具的結合讓Python成為一個非常適合進行模擬和機器學習的平台。


Ansys optiSLang是一款強大的工程設計優化和機器學習軟體,它可以自動識別關鍵的輸入參數並進行模型校準,然後利用機器學習算法進行優化,透過這個過程,工程師可以最小化設計變異性,同時確保設計效能。optiSLang的主要功能之一是設計探索(Design of Experiments;DoE),這個功能能夠建立一個包含大量模擬案例的設計空間,並以高效的方式運行這些模擬,從而生成大量的資料來供後續分析和優化使用。



圖二 : Optislang設計與優化平台
圖二 : Optislang設計與優化平台

除了模型優化外,optiSLang 也提供了機器學習功能,這使得工程師能夠利用生成的模擬數據來訓練機器學習模型,以提高預測精度或做到事先無法預見的發現。在現實應用中,許多工程項目已經利用 optiSLang 進行模擬優化,並取得了卓越的成果。例如汽車工程、風力發電等領域,都曾經使用此軟體進行設計優化。Ansys 亦提供了PyOptislang,這個工具讓使用者可以透過程式碼連接 Ansys 的優化與機器學習軟體 Optislang 來進行工程探索和優化。


透過結合機器學習和優化算法,可以利用模擬生成的數據來建立高效且精確的數學模型,進行優化設計。這種方式在傳統的手動操作下往往難以達成,但借助 Python 等工具,能夠更輕鬆地達到這個目標,並在產品設計和工程領域獲得更佳的成果。


結語

在工程模擬領域,有效分析和呈現數據至關重要。傳統上,這涉及到繁瑣的手動步驟,從數據擷取到分析,再到視覺化,過程耗時且繁複。然而,藉由 Python、Jupyter Notebook和PyAnsys 的整合能夠突破這些挑戰。Python提供強大的數據處理和分析能力,Jupyter Notebook則提供撰寫程式碼和生成報告的便利介面,而PyAnsys 允許我們從Python環境中控制 Ansys 軟體進行數據擷取。


未來,工程模擬與機器學習的融合,特別是利用ANSYS optiSLang的優化和機器學習能力,將推動產品設計和工程領域邁向新的里程碑。這些先進的工具和技術將使我們能夠更快速且更精確地達成設計目標,以滿足市場對高效能和高品質產品的不斷增長的需求。


(本文作者林鳴志為 Ansys 技術專家 )


相關文章
模擬工具可預防各種車用情境中的嚴重問題
利用學習資源及AI提升自動化程式開發效率
PyANSYS因應模擬設定中的挑戰
PyANSYS 的結構設計建模
PyANSYS的開發環境配置
comments powered by Disqus
相關討論
  相關新聞
» 工研院東南亞辦公室於泰國成立 助台商轉型升級強化優勢
» 兩岸PCB供應鏈齊聚泰國 迎來全球PCB版圖丕變
» NEC與能火、微軟推出全球首個「生成式AI貝多芬」
» 高通與中華電信簽署合作備忘錄 打造能源節約5G綠色網路
» Intel成立獨立FPGA公司Altera


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.100.26.196.222
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw