Численно решаю нелинейную систему уравнений:
которая для решения методом Ньютона принимает вид
в системе все числа комплексные:
и
комплексные константы.
комплексные переменные которые посредством определенных выражений формируются из начального приближения
, по ходу решения приближающегося к корням, где
- вещественные числа (в тех же выражениях выполняется переход от вещественных чисел к комплексным).
Разделение на вещественную и мнимую части выполняю программно, в результате получается система уравнений, которая собственно и решается методом Ньютона, но уже в обычных вещественных числах
И все это прекрасно работает, корни ищутся с высокой точностью, но есть одно но. В начальных условиях
и
всегда равны нулю, а
и
могут принимать любые числовые значения. В решении системы
и
должны остаться нулевыми, а
и
должны быть найдены. При этом такое решение совершенно точно существует (проверено)! Но метод Ньютона упорно выкидывает корни где
и
, математически они правильные (то же проверено), но это не те корни, которые нужны.
Для поиска нужных корней с
и
я пытался ввести еще 1 или 2 уравнения в решаемую систему
или
Но при этом метод Ньютона выдает ошибку (dgesv из lapack, который используется для решения СЛАУ, выдает ошибку, соответственно метод зацикливается и заканчивается неудачей).
Вопрос. Что я делаю не так или что нужно сделать для нахождения нужных мне корней?