首页 > 其他分享 >PyAEDT:Ansys Electronics Desktop API 简介

PyAEDT:Ansys Electronics Desktop API 简介

时间:2024-11-14 12:43:22浏览次数:3  
标签:Python Maxwell 控制程序 Desktop 2D AEDT API Ansys PyAEDT

在本文中,我将向您介绍 PyAEDT,这是一个 Python 库,旨在增强您对 Ansys Electronics Desktop 或 AEDT 的体验。PyAEDT 通过直接与 AEDT API 交互来简化脚本编写,从而允许在 Ansys 的电磁、热和机械求解器套件之间无缝集成。通过利用 PyAADT 的强大功能,您可以将分析提升到一个新的水平,例如直接从网格节点提取场信息或创建自定义核心损耗模型,从而在仿真准确性和定制方面开辟新的维度。

了解 Ansys Electronics Desktop 中的 PyAEDT 和 Python 环境

  • PyANSYS 和 PyAEDT:PyANSYS 是一个全面的 Python 库,支持跨各种 Ansys 应用程序编写脚本和实现自动化。PyAEDT 是专注于 Ansys Electronics Desktop 的专用子集,旨在通过直接 API 交互简化电磁、热和机械分析任务。

  • AEDT 中的 IronPython:IronPython 是一种与 .NET 框架集成的 Python 实现,允许脚本直接与 AEDT 交互。它非常适合在 AEDT 环境中运行脚本,提供对 Ansys 功能的无缝访问,但由于 .NET 对齐,它可能不支持某些外部 Python 库。

  • 使用 AEDT 的 CPython:CPython 是标准的 Python 解释器,以其对科学和工程库的广泛支持而闻名。对于 AEDT,CPython 通常用于外部脚本,使用 numpy、scipy 和 matplotlib 等库实现复杂的数据处理和可视化任务。

  • 选择合适的环境:IronPython 和 CPython 之间的选择取决于项目的具体要求。IronPython 提供与 AEDT 的直接集成,使其适用于简单的脚本任务。相比之下,CPython 更适合需要密集数据分析或在 .NET 框架之外使用大量 Python 库的任务。

 

在 Maxwell Transient Solutions 中激活控制程序

Maxwell 中的控制程序是功能强大的脚本或可执行文件,可以通过直接与求解器的每个时间步进行交互来显著扩展仿真的功能。无论您使用的是 Maxwell 2D 还是 3D,这些程序都可以修改源输入、调整电路元件、控制机械数量,甚至根据实时解决方案更新重新定义停止标准。此功能对于需要精确控制仿真过程的自定义磁芯损耗计算等应用特别有用。

以下是在 Maxwell 瞬态求解器设置中指定和使用控制程序的方法:

  1. 启用控制程序:在 Solve Setup 对话框中,选中 Use Control Program 框以激活可在其中输入控制程序名称的字段。

    174ce9ec43d2fde3680a087e1e4dd194.png

  2. 选择您的程序:单击 ... 按钮以打开文件选择对话框。导航到控制程序的位置,该位置可以是 Python 脚本 (.py) 或可执行文件 (.exe),然后选择它。

    3acc8664b4c79184a2c044797545f29c.png

  3. 配置程序参数:在 Solve Setup 对话框的 Arguments 文本框中,输入控制程序所需的任何参数。Maxwell 使用这些格式为 .对于 Python 脚本,如果脚本应在最后一个时间步之后执行后处理,则参数可以包含标志。program_name specified_arguments--post

    20de18ef5f0c19564604abd48854ae7d.png

  4. 后处理选项:如果您的仿真需要在最后一个时间步长之后运行控制程序进行后处理(例如,用于最终状态分析或其他计算),请选中 Call after last timestep for post processing 复选框。对于 Python 脚本,请使用 标志,对于已编译的程序,请使用 .--post-post

  5. 应用设置:单击 OK 应用这些设置并返回到 Solve Setup 主窗口

将 Maxwell 2D 中的控制程序与 PyAEDT 集成

通过控制程序将自动化引入 Maxwell 2D 项目可以显著提高电磁仿真的效率和精度。使用PyAEDT(为Ansys Electronics Desktop量身定制的Python库),您可以自动化仿真过程的各个方面,从几何结构创建到后处理。此示例将指导您利用 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 版本和模式:根据您的计算首选项或系统功能,指定您正在使用的 AEDT 版本,以及是在图形模式还是非图形模式下运行它

aedt_version = "2024.1"
non_graphical = False   

 

3. 准备环境:设置一个临时文件夹来存储您的项目文件,并下载必要的 .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 脚本或可执行文件:

setup.enable_control_program(control_program_path=ctrl_prg_file)

 

7. 执行模拟:使用指定的设置运行模拟:

setup.analyze()    

 

8. 后处理:根据仿真结果生成绘图,例如磁力线轨迹,以可视化随时间变化的电磁行为:

sols = m2d.post.get_solution_data("FluxLinkage(Winding1)", variations={"Time": ["All"]}, primary_sweep_variable="Time")
sols.plot()  

 

 

c62a9740615900234a39d0786550b0e1.png

9. 完成并关闭:模拟和分析完成后,请确保保存您的项目并正确发布 AEDT 会话:

m2d.save_project()
m2d.release_desktop()

 

通过使用 PyAADT 将控制程序集成到 Maxwell 2D 项目中,您可以在电磁仿真任务中实现更高水平的自动化和精度。这种设置不仅简化了重复性任务,还为自定义后处理和高级仿真控制策略开辟了新的可能性

 

标签:Python,Maxwell,控制程序,Desktop,2D,AEDT,API,Ansys,PyAEDT
From: https://blog.csdn.net/jkh920184196/article/details/143419510

相关文章

  • Greenlight - API versioning
    APIversioningAPIswhichsupportreal-worldbusinessesandusersoftenneedtochangetheirfunctionality andendpointsovertime—sometimesinabackwards-incompatibleway.So,toavoid problemsandconfusionforclients,it’sagoodideatoalwaysimp......
  • 使用Python爬虫获取商品订单详情:从API到数据存储
    在电子商务日益发展的今天,获取商品订单详情成为了许多开发者和数据分析师的需求。无论是为了分析用户行为,还是为了优化库存管理,订单数据的获取都是至关重要的。本文将详细介绍如何使用Python编写爬虫,通过API获取商品订单详情,并将数据存储到本地。环境搭建在开始编写爬虫之前......
  • 获取购买到的商品订单详情API返回值说明
    在代购系统中,用户常常需要查看自己购买商品的订单详情,这对于提升用户体验和满意度至关重要。本文将详细介绍如何设计和实现一个获取订单详情API,并提供相应的代码示例。系统设计订单详情API需要提供关于特定订单的详尽信息,包括订单状态、商品信息、支付详情、物流信息等。这......
  • python爬虫获得淘宝商品类目 API 返回值说明
    哎呀,说到淘宝商品类目API,这可真是个技术活。想象一下,你坐在电脑前,敲打着键盘,就像是探险家一样,准备深入淘宝这个巨大的宝藏岛。不过,别担心,我们的Python爬虫就是一把锋利的铲子,能帮你挖掘出那些闪闪发光的宝贝信息。首先,得有个计划。我们要用Python,这个强大的工具,来编写一个爬......
  • java 使用开源免费API实现翻译功能 - 代码基于spring ai和国产大模型
    大模型技术推动翻译进入新阶段过去,我们主要依赖百度或其他团队提供的翻译API来实现中英、英中、日中、中日等多种语言间的翻译。然而,随着大模型技术的发展,其在内容理解能力上已远超传统翻译工具。现在,我们可以完全依靠这些先进的大模型来进行更准确、自然的多语言翻译工作,这......
  • 开源免费翻译API实现英译中 - 含详细可运行代码样例
    大模型提升翻译质量拓宽应用过去我们主要依赖百度或其他团队提供的翻译API来实现中英、英中、日中、中日等多种语言间的翻译。如今,随着大模型技术的发展,其在内容理解方面的能力已经远远超过了上一代的翻译软件。这意味着我们现在可以完全依靠大模型来提供更加精准流畅的翻译服......
  • Java API笔记
    JavaAPI(ApplicationProgrammingInterface)是一组预先定义好的类和接口,帮助开发者快速开发应用程序。常用的packagejava.lang:包含了一些基础类,如Object、String、System等。java.util:提供了许多实用工具类,如集合框架(List、Set、Map)、日期/时间处理等。javafx:用于创建富客......
  • 如何使用PHP开发API接口?
    在当今数字化时代,API(ApplicationProgrammingInterface,应用程序编程接口)成为前后端交互的核心桥梁。PHP作为一种流行的服务器端脚本语言,被广泛用于开发API接口。本文将详细介绍如何使用PHP开发API接口,从基础概念到实战步骤,帮助读者掌握这一重要技能。一、API接口基础介绍AP......
  • API接口对淘宝的深远影响有什么?
    在数字化时代,API(ApplicationProgrammingInterface)接口已经成为连接不同系统和应用的重要桥梁。对于电商巨头淘宝而言,API接口更是其实现自动化运营、优化用户体验、拓展业务范围、促进数据分析和精准营销的关键工具。本文将深入探讨API接口对淘宝的深远影响,揭示其在电商新时......
  • API接口对电商的深远影响
    在当今数字化商业时代,电子商务行业竞争日益激烈,创新和效率成为企业成功的关键因素。应用程序编程接口(API)在电商领域的应用正逐渐改变着企业的运营模式,为其带来了众多的机遇与显著的收益。一、API接口在电商中的应用概述API接口是一种允许不同软件系统之间相互通信和交互的......