Проблема с комплексным сопряжением в нелинейной системе уравнений.
Здраствуйте, помогите решить проблему. Дело в том, что я не знаю как решить систему нелинейных уравнений , где у меня комплексные корни. При этом в системе используется комплексное сопряжение. Именно сопряжение не позволяет мне решить эту систему. До этого я решал её же без сопряжения при помощи solve. Сейчас же я пытаюсь решить систему с сопряжением использую fsolve. пока не удачно. Вот моя система:
function F = ansver3(D1,D2,D3,D4,D5,D6,Int1,Int21,Int22,Int23,x)
F(1,1) =x(1).*D1+x(2).*D2+x(3).*D3;
F(2,1) =x(1).*D4+x(2).*D5+x(3).*D6;
F(3,1)=(x(1).*conj(x(1))).*Int1+(x(2).*conj(x(2))).*Int21+(conj(x(3)).*x(2)+...
conj(x(2)).*x(3)).*Int22+(conj(x(3)).*x(3))*Int23-1;
Вот так я использую fsolve:
X0=[1+i,1+i,1+i];
Ss=fsolve(@(x)ansver3(D1,D2,D3,D4,D5,D6,Int1,Int21,Int22,Int23,x),X0);
Ответ всегда один и тот же:
Комментарии
Оптимизация комплексных функций задача непростая и не всегда работает. Вот здесь описаны ограничения и даны несколько рекомендаций:
https://www.mathworks.com/help/optim/ug/complex-numbers-in-optimization-toolbox-solvers.html
Перевод на русский:
https://docs.exponenta.ru/optim/ug/complex-numbers-in-optimization-toolbox-solvers.html
Попробуйте позадавать разные начальные значения, но все равно не факт, что оптимизация сработает с сопряжением.
Если совсем беда, попробуйте "ручную оптимизацию", а именно перебор значений в цикле for (метод Монте-Карло).
Большое спасибо. А то я уже совсем отчаялся.