Questions tagged [openmdao]

a Python-based, open-source, multidisciplinary optimization framework with support for analytic derivatives and distributed HPC computing

OpenMDAO is a Python-based open-source multidisciplinary design, analysis, and optimization (MDAO) framework which specializes in large-scale problems requiring parallel execution, distributed memory, and complex problem formulations.

OpenMDAO has been used to solve a number of interesting design problems, including optimization of a cubesat platform (CADRE) (paper), wind turbine and wind farm design (paper), aircraft trajectory optimization, and turbomachinery design for jet engines (paper).

The OpenMDAO project is managed by a development team at the NASA John H. Glenn Research Center in Cleveland OH.

For more information, visit our site at http://openmdao.org.

For documentation, see http://openmdao.org/docs.

Our code base is hosted at Github: http://github.com/OpenMDAO/OpenMDAO-Framework

516 questions
0
votes
1 answer

Inheriting units in OpenMDAO

I have a series of components in a group where some of the components are written to be general purpose rather than specific to my application. I would like to have the inputs and outputs of these general components inherit units from the params…
jthomas
  • 2,437
  • 1
  • 13
  • 15
0
votes
1 answer

Wall time dominated by setup()

I have created an OpenMDAO problem where the total wall time is being dominated by the prob.setup(). The time that it takes to call prob.run() is 10 seconds while the time that it takes to call the prob.setup() is 1916 seconds. There are 8…
Ry10
  • 87
  • 4
0
votes
1 answer

OpenMDAO: First Steps

I am new in the world of OpenMDAO (and also on Python) and I am having some problems to understand the use of the software. I have already installed Anaconda (pyth v2.7) and the OpenMDAO, but I don't know how to run it. I am following this tutorial…
0
votes
1 answer

OpenMDAO add_desvar default lower bound

If I do not specify a lower bound when defining a design variable via the add_desvar method, it looks like the default lower bound of the variable is set equal to sys.float_info.min (which on my machine is 2.2250738585072014e-308) (It looks like…
DannyT
  • 1
  • 1
0
votes
1 answer

OpenMDAO: unit conversion with pass_by_obj

Is unit conversion with pass_by_obj supported in OpenMDAO 1.4? I have a small repro case: from openmdao.api import Component, Problem, Group, IndepVarComp pass_by_obj=True class PassByObjParaboloid(Component): def __init__(self): …
Kevin Smyth
  • 1,892
  • 21
  • 22
0
votes
1 answer

Passing gradients between components; pass_by_obj output

I have a situation where the gradient of one component is by necessity calculated in another component. What I have attempted to do is just have the gradient be an output from the first component and an input to the second component. I have set it…
Ry10
  • 87
  • 4
0
votes
1 answer

Check Partial Derivatives with pass_by_obj

I have a component that has an input that is an int so I am setting pass_by_obj = True. However, when I check derivatives with check_partial_derivatives(), it throws this error: data = prob.check_partial_derivatives(out_stream=sys.stdout) File…
Ry10
  • 87
  • 4
0
votes
1 answer

OpenMDAO v1.x: output of sub Group in ParallelGroup does not exist

When running in parallel I am unable to connect unknowns of subgroups in a ParallelGroup() even though I can connect to the subgroups' params. The code causing the problem (with names changed for clarity) is below. This code is within a group of a…
jthomas
  • 2,437
  • 1
  • 13
  • 15
0
votes
2 answers

Connecting an element of array to another Component's input

I am trying to connect the last element of an output of one component to the input of another component. An example is shown below: import numpy as np from openmdao.api import Component, Problem, Group class C1(Component): def __init__(self): …
Ry10
  • 87
  • 4
0
votes
2 answers

OpenMDAO 1.x relevance reduction

I have a component in OpenMDAO without outputs that serves to provide inputs to the rest of the group. apply_linear in that component is being called despite the fact that the output of it is not connected. Shouldn't the relevance reduction…
Rob Falck
  • 2,324
  • 16
  • 14
0
votes
1 answer

OpenMDAO1.x: Feedback a variable for several runs (runlist)

I have two components comp1 and comp2 which form a problem, which should be run several times. To do that I found that I could use the UniformDriver (I don't know if this is the most appropriate one for my purpose). However, I would like to feedback…
maxbec
  • 1
  • 2
0
votes
2 answers

OpenMDAOv1.x: warning: parallel derivs not running under MPI

I just finished installing OpenMDAOv1.3 on our super computer. The installation was successful and all tests either passed or skipped. However, when I ran the tests I got the following warning: *path/OpenMDAO/openmdao/core/driver.py:228:…
jthomas
  • 2,437
  • 1
  • 13
  • 15
0
votes
1 answer

OpenMDAO1.x: Difficulty accessing variables implicitly linked through multiple Groups

I am having trouble accessing variables that are implicitly linked through multiple layers of groups. According to the documentation: In new OpenMDAO, Groups are NOT Components and do not have their own variables. Variables can be promoted to the…
jthomas
  • 2,437
  • 1
  • 13
  • 15
0
votes
1 answer

ValueError: shapes (6,108) and (36,) not aligned: 108 (dim 1) != 36 (dim 0)

I am seeing some dimension errors from the linearize method. Specifically, File "/usr/local/lib/python2.7/site-packages/openmdao/core/system.py", line 726, in _apply_linear_jac arg_vec[param] +=…
jthomas
  • 2,437
  • 1
  • 13
  • 15
0
votes
1 answer

FD step size on individual design variables

I'm a little bit confused about how to specify FD step sizes on the individual design variables. In the old OpenMDAO it was possible to specify the step size when adding the desvar. In the new version add_desvar does not have this argument, so I…
frza
  • 56
  • 4