You're trying to assign a [1, 2] vector to a [1, 1] scalar.
x_temp(stage) = abs(x_temp1).*y;
'stage' is a single value, so x_temp(stage) is also going to be a single value. 'x_temp1' has a value of [-0.4825 - 0.0181i 0.2444 - 0.3996i] on the first loop. That's two complex elements. Taking the absolute value will yield [0.4828 0.4685] - still two elements.
Did you intend for the long string of numbers to not be assigned to anything? It looks like you wanted them to be assigned to y but only the first number actually is.