Repository navigation
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.pycore/trainer_process.pycore/surrogate.pycore/surrogate_hotswap.pygui.pyutils/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+ |
⚠️ 已知问题
-
Clear solution cache 警告
[WARN] Clear solution cache: Failed to execute gRPC AEDT command: DeleteSetupData不影响优化结果,可能是 HFSS 权限问题。
-
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