I would like to note that, for my input matrix ("B" matrix), which is a vector, the "Assignment" block works exactly as I would expect.
x = 1;
y = 2;
Y0 = [0; 99; 0; 99];
U = [x , y];
Indx1 = [2 , 4];
Output:
[0 , 1 , 0 , 2]
This is the behavior I had expected from the Assignment block. If I make Y0 a matrix, though, everything breaks.
x = 1;
y = 2;
Y0 = [0 , 99; 0 , 99];
U = [x , y];
Indx1 = [3 , 4];
Output:
"Invalid input dimensions specified for input port <Y0> of 'untitled/Assignment'. None of the input ports accept a matrix when the number of output dimension is 1"
"Error in port widths or dimensions. Output port 1 of 'untitled/Empty A Matrix' is a [2x2] matrix."
Note that both errors are from changing Y0 from a 4x1 vector to a 2x2 matrix. I changed the indices to refer to the '99' elements (which is a value that, if I see, I will know that the element was not updated correctly).
The most irritating thing about this is that a vector is still a two dimensional matrix, just with one of the dimensions set to one. A two dimensional matrix of m x n can be a column vector if n = 1 or a row vector if m = 1. In this instance it is understood that m or n = 1 for all indices, but they still exist!