Skip to content

v2026.4.11

Latest

Choose a tag to compare

@Patisight Patisight released this 11 Apr 08:24

HFSS Optimizer v2026.4.11 Release Notes

发布日期

2026-04-11

主要更新

🔧 pyaedt 0.25.x 兼容性修复

问题: pyaedt 0.25.0+ 版本进行了重大 API 变更,导致程序无法正常运行。

解决方案:

  • 添加 PYAEDT_NEW_API 兼容层,自动检测并适配新旧版本
  • 新增 _get_solution_data_value() 函数,统一处理 SolutionData 数据获取
  • 支持新版导入方式 from ansys.aedt.core import Hfss
  • 适配新版参数命名 project/design 替代 projectname/designname

影响文件:

  • core/hfss_controller.py - 核心兼容层实现
  • tests/test_validate.py - 测试文件更新
  • tests/test_message_api.py - 测试文件更新

✨ 新功能

1. 依赖包一键升级

python setup_env.py --upgrade

新增 --upgrade 参数,可将所有依赖包升级到最新版本,包括:

  • numpy, pandas, scipy, matplotlib
  • pyaedt, scikit-learn, scikit-optimize
  • PyQt6, psutil, loguru, pydantic
  • (可选) gpflow, tensorflow

2. 改进的 HFSS 连接逻辑

  • 检测到 HFSS 已运行时,优先连接已有实例
  • 第三次重试时自动移除锁文件 (remove_lock=True)
  • 更友好的错误提示信息

🐛 Bug 修复

1. GUI 配置保存问题

问题: 点击"保存配置"后 self.config 未更新,导致自检使用旧配置。

修复:

  • 重构 save_config() 方法,确保同步更新 self.config
  • 新增 _update_config_from_gui() 独立方法
  • 点击保存时显示"配置已保存"日志确认

2. surrogate_hotswap.py 属性访问错误

问题: SurrogateModel 对象没有 X_samples 属性导致测试失败。

修复: 修正 X_samples/y_samples 的访问路径。

3. 多个文件缺少 logger 导入

问题: 部分文件使用 logger 但未导入。

修复: 添加 from loguru import logger 到:

  • config/default_config.py
  • core/trainer_process.py
  • core/surrogate.py
  • core/surrogate_hotswap.py
  • gui.py
  • utils/formula.py

4. lambda 变量捕获问题

问题: gui.py 中 lambda 表达式捕获异常变量 e 导致 UnboundLocalError。

修复: 使用默认参数捕获 lambda err=e:


📦 项目结构改进

新增文件

  • pyproject.toml - Python 项目配置 (PEP 621)
  • .github/workflows/ci.yml - GitHub Actions CI/CD 配置
  • tests/test_validate.py - 标准化测试文件

代码质量

  • 使用 black 格式化所有代码
  • 使用 isort 统一导入排序
  • 修复 flake8 检测的所有错误
  • 添加 mypy 类型检查支持

📋 兼容性

组件 支持版本
Python 3.8 - 3.11
pyaedt 0.7.0 - 0.25.x (自动适配)
HFSS 2022 R1+

⚠️ 已知问题

  1. Clear solution cache 警告

    [WARN] Clear solution cache: Failed to execute gRPC AEDT command: DeleteSetupData
    

    不影响优化结果,可能是 HFSS 权限问题。

  2. PyQt6 升级权限问题
    如果升级 PyQt6 失败,请关闭所有 GUI 程序后重试:

    pip install --upgrade PyQt6

📝 升级指南

从 v2026.4.10 升级:

# 1. 拉取最新代码
git pull origin main

# 2. 升级依赖包
python setup_env.py --upgrade

# 3. 运行测试验证
pytest tests/ -v

🙏 贡献者

感谢所有参与测试和反馈的用户!


📥 下载


完整更新日志: v2026.4.10...v2026.4.11