Skip to content

Commit b689cc3

Browse files
committed
Support scalar outputs
1 parent 559f732 commit b689cc3

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/openmdao_bridge_matlab/__init__.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,15 +128,17 @@ def compute(self, inputs, outputs, discrete_inputs=None, discrete_outputs=None):
128128
inp = inputs[var.name]
129129
input_data[var.ml_name] = var.om_to_ml(inp)
130130

131+
num_outs = len(self.options["outputs"])
131132
output_data = matlab_state.engine.feval(
132133
self.options["function_name"],
133134
*input_data.values(),
134-
nargout=len(self.options["outputs"]),
135+
nargout=num_outs,
135136
)
136137

137138
for var_idx, var in enumerate(self.options["outputs"]):
138139
# outp = output_data[var_map.ext_name]
139-
outp = var.ml_to_om(output_data[var_idx])
140+
# output_data is a scalar if only one output
141+
outp = var.ml_to_om(output_data if num_outs == 1 else output_data[var_idx])
140142
if var.discrete:
141143
discrete_outputs[var.name] = outp
142144
else:

0 commit comments

Comments
 (0)