Implicit scalar expansion doesn't work in MATLAB function block.

2 次查看(过去 30 天)
I spent quite a lot of time trying to figure out why the same piece of function runs in MATLAB but not in a MATLAB function block called by Simulink. Then, I saw this post made two years ago about how implicit scalar expansion doesn't work for MATLAB function blocks for some reason and using bsxfun is one way to get around that. I just wanted to check if there's any update on this issue.. I'd rather not write two separate versions of the same thing if I can avoid it.
function ans = fcn()
ans = ones(4,3) .^ ones(4,1);

采纳的回答

Fangjun Jiang
Fangjun Jiang 2022-8-8
Good news. It seems it is available in R2021b, but not in R2021a. Check
  2 个评论
Rik
Rik 2022-8-8
Although since there are no plans to remove bsxfun, you can safely write the one version with that.
And @Kaung, please don't use ans as a variable. Those code tricks you learn from Cody are terrible in every other situation.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulink Functions 的更多信息

产品


版本

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by