我有个问题。我正在为我的课程做一项任务,我正在尽我最大的努力,但是老师的提示似乎没有帮助,我需要自己寻找问题所在
首先,我必须把这个任务从我的母语翻译成英语。因此,可能会有一些误解,因为很难从数学的角度解释它
“有一个Mandelbrot集,它是由曲面上由复数定义的点创建的,因此以下递推方程不会无穷大:
{z0=0//zn+1=zn^2+c
您必须创建大小为600x600的二维数组T。该数组T[k][l]中的每个元素将表示一个复数ckl=(−2+k*0.005(−1.5+l*0.005)ˆi)。接下来,对于T[k][l]中的每个元素,计算序列中的第一个n_max=100个数字,并将该值保存为n,表示| zn |>;2。”
是的,这很痛苦。我在谷歌上搜索了很多关于这一点的信息,但我无法使用所有其他Python脚本来解决这一任务。我最终使用了:LINK,并制作了以下内容:
import matplotlib.pyplot as plt
k = 600
l = 600
T = [0][0]
for i in range(k):
for j in range(k):
z = 0 + 0j
c = complex(-2 + i * 0.005, -1.5 + j * 0.005)
for g in range(100):
z = z * z + c
if abs(z) > 2.0:
T = i
break
plt.figure(dpi=200)
plt.imshow(T, cmap="hot")
plt.show()
这真的很糟糕,我真的不明白这一点。另外我得到一个错误:TypeError:Invalid shape()对于图像数据。我在几周前找到了另一个解决方案,已发送,但必须按照脚本中描述的方式完成。请帮助。提前感谢您的时间。如果您需要此任务的任何其他屏幕截图,我将提供它
目前没有回答
相关问题 更多 >
编程相关推荐