题目

从不同的初值z0出发,牛顿法求解复方程z41=0的根,并以一定的分辨率画出指定范围下不同初值的收敛结果:

1.Re[z0](1,1),Im[z0](1,1),分辨率0.01

2.Re[z0](0.4,0.6),Im[z0](0.4,0.6),分辨率0.001

3.Re[z0](0.49,0.51),Im[z0](0.49,0.51),分辨率0.0001

4.Re[z0](0.499,0.501),Im[z0](0.499,0.501),分辨率0.00001

理论分析

方程z4=1有四个解:

z1=1,z2=1,z3=1i,z4=1i

牛顿法的迭代方程为:

z=zz414z3=34z+14z3

其中,分别对收敛到1,1,1i,1i的点染蓝色,红的,黄色和绿色。没有收敛的点为白色。

程序实现

julia
N=201
center=0
lim=1
xx=range(center - lim, center + lim; length = N)
yy = range(center - lim, center + lim; length = N)

X= repeat(xx, 1, length(yy))
Y = repeat(yy, 1, length(xx))'
p=4
Z=X+Y*im
Z_origin=Z

using Plots
cond=[1,-1,1im,-1im]
color=["blue","red","yellow","green"]
for i=1:4
index=findall(x-> x<0.1,abs.(Z.-cond[i]))
scatter!(real(Z_origin[index]),imag(Z_origin[index]),legend = false,xlim=(-1, 1), ylim=(-1, 1),color=color[i],ms=1,markerstrokewidth = 0)
end
plot!()
png("100")

image

image

image

image

直观上看,可以发现:

  • 四个单位根附近的初始点收敛到该单位根本身,而在直线y=±x附近的初始点却不一定收敛到最近的单位根。
  • 随着图像的放大,初始点的收敛情况呈现出分形的特征,且并非是一直收敛到同一单位根,颜色貌似和分形的指向有关。
  • 直线y=±x上的点不收敛
  • 颜色区域由六条曲线分割,分别是y=±xy=±(2+3)xy=±(23)x

image

image

第一点和第三点可以被回答:因为这是一个二维的非线性方程,按理来说可以用作业一的方法去研究:

我们对上述的非线性方程展开:

x+iy=14(3x+x33xy2(x2+y2)3)+i4(3y+y33x2y(x2+y2)3)

辐角

Φ=3y(x2+y2)3+y33x2y3x(x2+y2)3+x33xy2

Φ=3y(x2+y2)3+y33x2y3x(x2+y2)3+x33xy2=yx

不难解得辐角不动点:

x=±yorx=0ory=0

也就是说,这四条直线上的点的辐角稳定,但是否收敛还要看模的方程:

r=116((3x+x33xy2(x2+y2)3)2+(3y+y33x2y(x2+y2)3)2)

对其进行讨论(分别取x=0,y=0,y=±x),不难发现,坐标轴上的点收敛到附近的单位根,但是直线y=±x确实永远发散的。