You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dymos中使用Jax自动微分的偏导数错误排查求助

问题:Dymos动力学模型Jax自动微分偏导数异常及相关疑问

模型背景

我在Dymos中构建了动力学模型,使用Jax通过自动微分计算偏导数。核心代码通过自定义OpenMDAO ExplicitComponent实现,利用jax.vmap和jax.jacfwd批量计算原函数与偏导数。

偏导数检查异常现象

运行prob.check_partials(method='cs', compact_print=True)时,发现偏导数存在显著且系统性的误差;但使用前向差分法时误差则小很多。此外还有两个异常:

  • 在_compute_primal函数中,输入参数k和I无法正常传递,运行check_partials时会变为0,必须手动赋值才能避免除零错误;
  • 原模型与最小工作示例中出现误差的偏导数项不一致。

额外疑问

不清楚phase中的rhs_disc和rhs_col组件有何区别,希望得到解答。

求助需求

附上完整的模型代码(包括最小工作示例与完整船舶动力学模型),请帮忙分析问题原因,是否是模型本身或Jax使用方式导致的问题?

内容的提问来源于stack exchange,提问作者LordCat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 05:32:03