MATLAB: What is the criterion for being able to select individual elements from an input signal to the Bus Creator block in Simulink

demuxexpandselectorsimulinksimulink.bus

Please refer to the attached example model, which contains a Bus Creator block with two input ports. Each signal going to the input port of the Bus Creator block is a two element vector.
The first signal comes directly from a Mux block, while the second goes from the Mux block, through a Gain block, and then to the Bus Creator. In the Bus Creator block, I am able to separately choose either the first or second element of the first signal, but not of the second.

Best Answer

When a signal is attached directly from a Mux block to a Bus Creator block, the Bus Creator block is able to determine what signals went into the Mux block in order to produce the resulting signal. This is because the Mux block is a virtual block. It is this property that allows the Bus Creator to choose specific elements of the vector input.
When the Mux block output is sent through a Gain block before being sent to the Bus Creator, the Bus Creator can no longer pick specific elements of that signal because the Gain block is not a virtual block. If you want the Bus Creator block to pick specific elements of the signal, consider using a Selector block or Demux block to separate the elements into different signals again, then Mux the signals again.