How do I output an array from my level 2 S Function? Please help!

Hi there,
I have a S function that takes arrays as inputs from an excel file and does computations using the arrays. The ultimate result in the S function block is a Nx1 array. I have tried assigning the Nx1 array to the sFunc.OutputPort(1).Data, but it gives me error saying I am attempting to assign a length N vector to a length 1 vector.
I want to be able to output the array and feed it into another S function in Simulink and to a scope to plot the data against another array (time).
Any help would be greatly appreciated!
Thanks!

1 个评论

Are you attempting to use the variable, N, to assign the length of the array or a number?

请先登录,再进行评论。

回答(1 个)

Have you configured block.OutputPort(1).Dimensions to N?

2 个评论

Hey Kaustubha,
I tried defining block.OutputPort(1).Dimensions to -1 (inherited or dynamic) and also to N, but it still doesn't work. It shows the same error message.
What is the S-function output connected to? Is it a block that is expecting a scalar somehow? Try connecting it to an Outport block to make sure that there is no backward propagation happening.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Simulink Functions 的更多信息

产品

提问:

2012-7-16

Community Treasure Hunt

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

Start Hunting!

Translated by