MATLAB Answers

0

Can I use an array of Simulink Buses as the initial state of a memory block?

Asked by Tucker McClure on 19 Feb 2019
Latest activity Edited by Tucker McClure on 20 Feb 2019
I have a Simulink Bus (MyBus) that has a field (a_bunch_of_sub_buses) that is an array of type SubBus. If I try to use this in a Memory block, Simulink simply says that the Memory block has an invalid parameter x0 -- the initial condition. Can I not use a bus with an array of buses inside of it as the parameter of a Memory block, or am I doing something else wrong?

  0 Comments

Sign in to comment.

1 Answer

Answer by Tucker McClure on 20 Feb 2019
Edited by Tucker McClure on 20 Feb 2019
 Accepted Answer

Ok, in the documentation, under "Integrate C Functions Using Legacy Code Tool", there's a Supported Data Types table, where it says that "Array of Simulink.Bus" is supported for input and output, and for work vectors, but not for parameters. I assume the initial condition of a memory block is a "parameter". It's unclear if this applies though since it's on a page about integrating C code, and that's not what I'm doing. That is, does the "Supported for Parameters?" column on this page just refer to s-functions, or does it apply more generally?
The following question is similar and contains an answer that says that what I'm trying to do is not supported, though it doesn't cite any sort of documentation:
The solution suggested there (use a bunch of memory blocks and concatenate them manually), however, doesn't work for my application.

  0 Comments

Sign in to comment.