微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法获得类似于 get_val() 的特定部分?

如何解决有没有办法获得类似于 get_val() 的特定部分?

正如标题所述,get_val() 函数允许用户检索输入、输出或残差的值。是否有类似 get_partial(of=...,wrt=...) 之类的东西允许用户检索衍生品?或者从问题或模型中检索它的最佳方法是什么?

解决方法

要获得系统中的一般导数,推荐的做法是使用 compute_totals 方法。 即使您只想查看偏导数,您也可以使用 ofwrt 参数来仅指向特定的偏导数。你会得到一个总数,但它应该等于部分。

查看部分的一般调试实践是使用 check_partials。这将为您提供所有要查看的部分的完整值。但是,如果您需要将算法方法作为运行脚本的一部分,请使用 compute_totals。

OpenMDAO 存储输出,因此获取这些是获取已经存在的值(因此 get_val)的问题。 对于导数,根据使用 OpenMDAO 的方式,不能保证总数存在于内存中,因此必须在需要时进行计算。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。