MATLAB: An error occurred while running the simulation and the simulation was terminated Caused by: Domain error. To compute complex results from real x, use ‘sqrt(complex(x))’.

simulinksqrt error

I dont know why my model has this error because in my code,i have never ust SQRT function.Hope all you help me,especially Sebastian.

Best Answer

o =0.5;
R = anpha*sige1+beta*sige2*t;%2x1

s = dq +R;%2x1
s1 = s(1,1);
s2 = s(2,1);
sigs1 = [(s1^o)*sign(s1);(s2^o)*sign(s2)];
s1^0.5 is sqrt(s1), but your s1 or s2 are negative.
Your code already expects that they might be negative: otherwise it would not have the multiplication by sign() as it would have assumed that the sign is constant.
sigs1 = [(abs(s1)^o)*sign(s1);(abs(s2)^o)*sign(s2)];