gpt4 book ai didi

sqlite - 无法访问 openmdao 生成的 sqlite 数据库 key

转载 作者:行者123 更新时间:2023-12-03 19:31:03 24 4
gpt4 key购买 nike

我正在使用 OpenMDAO 和普通的 omdao 记录器来解决 Unix 和 Linux 中的问题,即在我的基于 OpenMDAO 的 python 脚本中我这样做:

    from openmdao.api import SqliteRecorder
recname = 'DLCS_5MW.sqlite'
recorder = SqliteRecorder(recname)
top.driver.add_recorder(recorder)

在我的 Unix 设置中运行问题后,我可以按预期访问数据库:
    >>> import sqlitedict
>>> db = sqlitedict.SqliteDict('DLCS_5MW.sqlite','openmdao')
>>> db.keys()
['metadata', 'rank0:Driver/1']

但是当我在我的 Linux 设置中运行问题并以相同的方式加载数据库时,我得到了这个:
    >>> db.keys()
[]

即无 key 字典。我可以看到 sqlite 文件本身确实有信息(比如 1 GB);我似乎可以访问它。我可以验证问题出在文件本身,而不是我在哪个操作系统上检查它(即,我可以在我的 Linux 设置上成功检查 Unix 生成的文件,但不能在我的 Unix 设置上检查 Linux 生成的文件) .这让我相信 OpenMDAO 和 sqlite 之间存在一些脱节。

最初我以为问题与我的 Linux 机器上的 Python 安装(包括 sqlite,是吗?)和 OpenMDAO 安装有关,但我重新安装了两者都无济于事(使用 Anaconda python)。我试图在 OpenMDAO 之外找到类似问题的出现——仅在 sqlite 上下文中——但不幸的是,我不太精通 sqlite,也无法找到任何有用的东西。任何想法将不胜感激!

最佳答案

很抱歉听到您遇到问题。

我们一直在改变我们做案例记录的方式,所以这可能就是你遇到问题的原因,但我不知道为什么你在 Linux 和 Unix 上会有不同的结果。

我们没有 openmdao表了。这些表格现在是 metadata , iterations , 和 derivs .

为了查看案例记录是否存在问题,我在 Ubuntu 系统上安装了 OpenMDAO 1.7.3,并在 http://openmdao.readthedocs.io/en/1.7.3/usr-guide/tutorials/recording.html 上运行了示例。 .

要查看迭代数据是否在 sqlite 文件中,我做了:

import sqlitedict
db = sqlitedict.SqliteDict('paraboloid','iterations')
print db.keys()

结果是
['rank0:SLSQP|1', 'rank0:SLSQP|2', 'rank0:SLSQP|3', 'rank0:SLSQP|4', 'rank0:SLSQP|5', 'rank0:SLSQP|6']

这有帮助吗?

谢谢

关于sqlite - 无法访问 openmdao 生成的 sqlite 数据库 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41070315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com