學會網(wǎng)站建設網(wǎng)絡推廣員要怎么做
在本文中,我將向您介紹 PyAEDT,這是一個 Python 庫,旨在增強您對 Ansys Electronics Desktop 或 AEDT 的體驗。PyAEDT 通過直接與 AEDT API 交互來簡化腳本編寫,從而允許在 Ansys 的電磁、熱和機械求解器套件之間無縫集成。通過利用 PyAADT 的強大功能,您可以將分析提升到一個新的水平,例如直接從網(wǎng)格節(jié)點提取場信息或創(chuàng)建自定義核心損耗模型,從而在仿真準確性和定制方面開辟新的維度。
了解 Ansys Electronics Desktop 中的 PyAEDT 和 Python 環(huán)境
-
PyANSYS 和 PyAEDT:PyANSYS 是一個全面的 Python 庫,支持跨各種 Ansys 應用程序編寫腳本和實現(xiàn)自動化。PyAEDT 是專注于 Ansys Electronics Desktop 的專用子集,旨在通過直接 API 交互簡化電磁、熱和機械分析任務。
-
AEDT 中的 IronPython:IronPython 是一種與 .NET 框架集成的 Python 實現(xiàn),允許腳本直接與 AEDT 交互。它非常適合在 AEDT 環(huán)境中運行腳本,提供對 Ansys 功能的無縫訪問,但由于 .NET 對齊,它可能不支持某些外部 Python 庫。
-
使用 AEDT 的 CPython:CPython 是標準的 Python 解釋器,以其對科學和工程庫的廣泛支持而聞名。對于 AEDT,CPython 通常用于外部腳本,使用 numpy、scipy 和 matplotlib 等庫實現(xiàn)復雜的數(shù)據(jù)處理和可視化任務。
-
選擇合適的環(huán)境:IronPython 和 CPython 之間的選擇取決于項目的具體要求。IronPython 提供與 AEDT 的直接集成,使其適用于簡單的腳本任務。相比之下,CPython 更適合需要密集數(shù)據(jù)分析或在 .NET 框架之外使用大量 Python 庫的任務。
?
在 Maxwell Transient Solutions 中激活控制程序
Maxwell 中的控制程序是功能強大的腳本或可執(zhí)行文件,可以通過直接與求解器的每個時間步進行交互來顯著擴展仿真的功能。無論您使用的是 Maxwell 2D 還是 3D,這些程序都可以修改源輸入、調(diào)整電路元件、控制機械數(shù)量,甚至根據(jù)實時解決方案更新重新定義停止標準。此功能對于需要精確控制仿真過程的自定義磁芯損耗計算等應用特別有用。
以下是在 Maxwell 瞬態(tài)求解器設置中指定和使用控制程序的方法:
-
啟用控制程序:在 Solve Setup 對話框中,選中?Use Control Program?框以激活可在其中輸入控制程序名稱的字段。
-
選擇您的程序:單擊?...?按鈕以打開文件選擇對話框。導航到控制程序的位置,該位置可以是 Python 腳本 (.py) 或可執(zhí)行文件 (.exe),然后選擇它。
-
配置程序參數(shù):在 Solve Setup 對話框的?Arguments?文本框中,輸入控制程序所需的任何參數(shù)。Maxwell 使用這些格式為 .對于 Python 腳本,如果腳本應在最后一個時間步之后執(zhí)行后處理,則參數(shù)可以包含標志。
program_name specified_arguments
--post
-
后處理選項:如果您的仿真需要在最后一個時間步長之后運行控制程序進行后處理(例如,用于最終狀態(tài)分析或其他計算),請選中?Call after last timestep for post processing?復選框。對于 Python 腳本,請使用 標志,對于已編譯的程序,請使用 .
--post
-post
-
應用設置:單擊?OK?應用這些設置并返回到 Solve Setup 主窗口
將 Maxwell 2D 中的控制程序與 PyAEDT 集成
通過控制程序?qū)⒆詣踊?Maxwell 2D 項目可以顯著提高電磁仿真的效率和精度。使用PyAEDT(為Ansys Electronics Desktop量身定制的Python庫),您可以自動化仿真過程的各個方面,從幾何結(jié)構(gòu)創(chuàng)建到后處理。此示例將指導您利用 PyAEDT 的強大功能在 Maxwell 2D 中設置控制程序。
1. 導入必要的模塊:首先從 PyAEDT 導入所需的 Python 模塊,這些模塊有助于文件處理、唯一文件夾生成以及與 Maxwell 2D 的交互:
from pyaedt import downloads
from pyaedt import generate_unique_folder_name
from pyaedt import Maxwell2d
?
2. 配置 AEDT 版本和模式:根據(jù)您的計算首選項或系統(tǒng)功能,指定您正在使用的 AEDT 版本,以及是在圖形模式還是非圖形模式下運行它
aedt_version = "2024.1"
non_graphical = False
?
3. 準備環(huán)境:設置一個臨時文件夾來存儲您的項目文件,并下載必要的 .aedt 和 Python 腳本文件:
temp_folder = generate_unique_folder_name()
aedt_file = downloads.download_file("maxwell_ctrl_prg", "ControlProgramDemo.aedt", temp_folder)
ctrl_prg_file = downloads.download_file("maxwell_ctrl_prg", "timestep_only.py", temp_folder)
?
4. 啟動 Maxwell 2D:使用指定的版本和會話設置初始化 Maxwell 2D:
m2d = Maxwell2d(projectname=aedt_file,specified_version=aedt_version,new_desktop_session=True,non_graphical=non_graphical)
?
5. 激活您的設計:在 Maxwell 2D 中選擇將使用控制程序的設計:
m2d.set_active_design("1 time step control")
?
6. 設置控制程序:將控制程序鏈接到活動的設計設置,將路徑傳遞給 Python 腳本或可執(zhí)行文件:
setup.enable_control_program(control_program_path=ctrl_prg_file)
?
7. 執(zhí)行模擬:使用指定的設置運行模擬:
setup.analyze()
?
8. 后處理:根據(jù)仿真結(jié)果生成繪圖,例如磁力線軌跡,以可視化隨時間變化的電磁行為:
sols = m2d.post.get_solution_data("FluxLinkage(Winding1)", variations={"Time": ["All"]}, primary_sweep_variable="Time")
sols.plot()
?
?
9. 完成并關閉:模擬和分析完成后,請確保保存您的項目并正確發(fā)布 AEDT 會話:
m2d.save_project()
m2d.release_desktop()
?
通過使用 PyAADT 將控制程序集成到 Maxwell 2D 項目中,您可以在電磁仿真任務中實現(xiàn)更高水平的自動化和精度。這種設置不僅簡化了重復性任務,還為自定義后處理和高級仿真控制策略開辟了新的可能性
?