Мне нужно вычислить это уравнение с MATLAB:

где Sn
может быть как матрицей, так и скаляром, и я попытался сделать это с помощью
S_A = S_3*S_5*((ones-(S_1*S_5)).^(-1))*S_2+S_4
Проблема в том, что это не дает мне правильный результат, и проблема, похоже, в разнице
, но я не могу понять, почему она дает мне неправильные результаты.
Результат должен быть таким

но результат MATLAB

Я не понимаю, почему два результата не совпадают.
Единственный способ, который я понял, - это
diff = ones-(S_1*S_5);
if S_1*S_5 == zeros %Perchè senza non funziona?
diff = ones;
else
diff = (ones-(S_1*S_5)).^(-1)
end
S_A = S_3*S_5*diff*S_2+S_4;
Но я не думаю, что это разумное решение. Кто-нибудь знает, почему я не получаю правильные результаты?