问题标签 [openmdao]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 安装 OpenMDAO
我正在尝试安装 OpenMDAO,这是一个使用 python 的开源框架。所以在我开始之前,它需要 3 个包:
- Fortran 编译器
- 数字货币
- ScyPy
我使用自制软件安装的:
现在,要安装 OpenMDAO,我应该在 OpenMDAO 文件夹中,在那个级别我应该运行这个脚本:
但我不断收到此错误:
所以我在与 OpenMDAO 的人交谈,似乎我需要使用的是 python2.6 - 虽然我不确定,所以我的猜测是我安装的所有包都是我下载的 python 2.7,因为它是在python网站上推荐。
Mac 自带的不是。因此,当我在终端中输入以下内容时:
它实际上运行该版本。所以此时我不知道是否必须在 python 2.6 中运行脚本,但如果是这样,我不知道该怎么做。我试过这样做,但没有奏效:
如果有人熟悉环境或只是对 python 本身有任何建议,我将不胜感激。
python - 在 IDE 中使用 Python OpenMDAO (PyScripter)
我正在尝试在 PyScripter IDE 中使用 OpenMDAO 包,在 Windows 8 上运行 Python2.7。但尝试import openmdao
返回错误“没有名为 openmdao 的模块”。OpenMDAO安装说明说 (i) 运行 go-openmdao.py 脚本,并且 (ii) 输入Scripts\activate.bat
. 我如何在 PyScripter 或任何 IDE 中执行 (ii) ?
谢谢你,亚历克斯
visual-studio - OpenMDAO 可以安装在 Visual Studio 中吗?
这可能吗?我知道您可以在 VS 中拥有 Python 环境。
我在 Visual Studio 和 OpenMDAO 中添加了 Python 环境,但它们充当不同的环境,所以如果我在 OpenMDAO 中调用 Numpy(例如),它找不到它,因为它安装在 python2.7 环境中。
在 Python 环境中也会发生同样的事情。我无法运行 OpenMDAO 功能,因为该环境未处于活动状态。知道如何使用这两个库吗?
openmdao - 在 OpenMDAO 中为 CaseIteratorDriver 设置输入
在 CaseIteratorDriver 中设置输入的最佳方法是什么?一个示例显示了通过以下方式直接分配:self.driver.case_inputs.param_name = [0,1,2]
并行运行 CaseIteratorDriver 时似乎没有正确处理。我尝试通过设置它们,self.driver.setsinputs(CaseArray({'x':[0,1,2]})
但也失败了。CaseArray 似乎没有生成 set_inputs 期望的“生成器”对象。哪些类会生成正确的对象?
python - Easy_install sphinx 期间的 OSX Yosemite Openmdao 错误 - NameError: name 'sys_platform' is not defined
是什么NameError: name 'sys_platform' is not defined
意思?此错误的原因可能是什么?
编辑
这似乎是 openMDAO 的一个问题。当我在 openMDAO 0.10.3 环境中运行 easy_install 时会出现此错误。
无论出于何种原因,我都无法重新创建easy_install sphinx
我最初发布的错误。但是,我从easy_install zope.interface
. 这是输出(test
仍然没有返回错误):
输出envdump
:
optimization - OpenMDAO v0.10.3.2:在优化器驱动程序的工作流程中使用案例迭代器驱动程序的问题
出于兼容性原因,我使用的是 OpenMDAO v0.10.3.2
我正在尝试在 OpenMDAO 中设置一个优化问题,该问题需要在优化器的工作流程中使用案例迭代器驱动程序。为了说明,我创建了如下所示的简单示例。代码似乎可以运行,但优化器似乎没有更改参数并在其工作流运行两次后退出。
我正在寻找有关设置此类问题的建议,以及对我当前的表述可能出现的问题的见解。
openmdao - OpenMDAO ShelveRecorder 以奇怪的顺序保存迭代:第 1 次迭代、第 3 次、第 2 次、第 5 次、第 4 次、第 6 次
我刚刚开始使用 OpenMDAO 1.0 alpha,并且在导入记录的搁置数据时注意到了这种行为。所以这里没有问题,只是一个评论,看看我是否做错了什么。
干杯!
更新:虽然字典中包含一个“顺序”条目,并且顺序正确!
loops - OpenMDAO v0.13:在使用循环中启动的多个组件实例时执行优化
我正在使用多个多次使用的组件在 OpenMDAO v0.13 中设置优化。我的程序集似乎与默认驱动程序一起工作得很好,但是当我使用优化器运行时,它并没有解决。优化器只需使用给定的输入运行,并使用这些输入返回答案。我不确定问题是什么,但我会很感激任何见解。我包含了一个模仿我的结构的简单代码,它重现了错误。我认为问题出在连接上,summer.fs 在初始化后没有更新。
arrays - OpenMDAO v0.13:将组件中的 nxm 数组的切片连接到 n 个单独组件中的 1xm 数组
我正在尝试将数组的行连接nxm
到单个组件中的数组,或者将1xm
数组的切片n
连接到单个组件中的1xn*m
数组。然后将原始或数组用作优化参数。问题是当我这样做时,程序集似乎有一些严重的问题。我要么得到明显错误的答案,要么得到尺寸不匹配的错误。1xm
n
nxm
1xn*m
我已经能够通过使用 传入n
1xm
数组来使程序集工作exec()
,但我更喜欢前面解释的方法。如果有人能告诉我如何以适当的方式完成这项工作,我将不胜感激。
我提供了一个简化的代码示例,说明什么是有效的,什么是我想做的。首先显示我想使用的方法,然后显示我已经开始工作但严重不喜欢的方法。
我想做的事
什么有效
simulation - 是否可以使用 OpenMDAO 进行控制系统仿真?如果是这样,怎么做?
我想运行一个类似于此处演示的控制系统模拟。由于 OpenMDAO 似乎具有基于组件的建模的良好特性,是否可以使用 OpenMDAO 运行这样的模拟?
更具体地说,我现在试图完成的是更简单的动态系统和各种 PID 控制器的连续时间模拟,以适应系统不同点的无数干扰组合。
我现在所做的是通过该lsim()
函数完成的,该函数在 Scipy ( lsim() doc ) 和 Matlab ( lsim() doc ) 中都可用。然而,这些工具很麻烦,因为它们需要将整个系统建模为单个集总输入输出系统。使用多个输入点时的转换是耗时的,并且根据系统的复杂性很难实现。此外,lsim()
不适用于非线性问题。
理想情况下,我还想混合使用连续时间模拟(针对工厂)和离散时间模拟(针对控制器,我将在未来对其进行转换,以便更轻松地模拟时间延迟)。希望支持非线性行为的另一个原因是模拟未来的滞后。
一个简单的方法是使用 Simulink(如此处所述),但我宁愿在 Python 中使用它,因为我正在尝试构建一个与其他 Python 工具交互的解决方案。