Я написал программу, которая находит корни двухфункциональной системы, используя метод Ньютона-Рафсона. Его цель — найти два неизвестных замкнутого векторного цикла (эскизы ниже). Проблема в том, что он работает только при погрешности 0,01 и выше, в остальных случаях (например, при 0,001) он попадает в колебание и, похоже, никогда не сходится. Я нахожу такое поведение странным, поскольку тот факт, что ему удается достичь точности 0,01, должен доказывать его способность делать предположения внутри радиуса сходимости, и с этого момента дальнейшее приближение не должно сталкиваться с какими-либо проблемами...
Я написал программу, которая находит корни двухфункциональной системы, используя метод Ньютона-Рафсона. Его цель — найти два неизвестных замкнутого векторного цикла (эскизы ниже). Проблема в том, что он работает только при погрешности 0,01 и выше, в остальных случаях (например, при 0,001) он попадает в колебание и, похоже, никогда не сходится. Я нахожу такое поведение странным, поскольку тот факт, что ему удается достичь точности 0,01, должен доказывать его способность делать предположения внутри радиуса сходимости, и с этого момента дальнейшее приближение не должно сталкиваться с какими-либо проблемами...[code]import numpy as np import random as rnd
def compute_newton_raphson(x0, y0): for i in range(ITER_LIMIT): result = -np.matmul(np.array([f1(x0, y0), f2(x0, y0)]), np.linalg.inv(jacobian_mat(x0, y0))) + np.array([x0, y0]) x = result[0] y = result[1]