1.[代码][Python]代码
# -*- coding: utf-8 -*-
"""
Newtons method for g = x**3 - y = 0 and h = y**3 - x = 0
"""
import numpy as np
[x, y] = [-2, -0.5] #选取迭代初始点,不同初始点有不同解,或者无解。。。
for i in range(10):
g = x**3 - y #函数g
h = y**3 - x #函数h
gx = 3*x**2 #g对x一阶导数
gy = -1 #g对y一阶导数
hx = -1 #h对x一阶导数
hy = 3*y**2 #h对y一阶导数
J = np.array([[gx, gy], [hx, hy]]) #雅可比矩阵
invJ = np.linalg.inv(J) #雅可比矩阵的逆
D = np.dot(invJ, np.array([[g, h]]).T)
[x, y] = [x, y] - D.T[0]
print([x, y]) #打印解