basically finished calc
This commit is contained in:
@@ -105,7 +105,7 @@ class GoodOrbit(Orbit):
|
||||
def f(idx):
|
||||
return self.Idx2C(idx) - C
|
||||
|
||||
return mp.findroot(f, 0, solver='secant')
|
||||
return mp.findroot(f, (-100*2*mp.pi,100*2*mp.pi), solver='bisect')
|
||||
|
||||
def GenerateNextPointIdx(self, cur_point_idx, expected_distance, guess=None):
|
||||
if guess is None:
|
||||
@@ -124,7 +124,7 @@ class GoodOrbit(Orbit):
|
||||
fig = plt.figure(figsize=(12, 12))
|
||||
|
||||
# 绘制轨道线
|
||||
idx_list = np.linspace(-8 * 2 * np.pi, 8 * 2 * np.pi, 10000)
|
||||
idx_list = np.linspace(-12 * 2 * np.pi, 8 * 2 * np.pi, 10000)
|
||||
x = [float(self.Idx2Cartesian(t)[0]) for t in idx_list]
|
||||
y = [float(self.Idx2Cartesian(t)[1]) for t in idx_list]
|
||||
plt.plot(x, y, color='gray', linewidth=0.5)
|
||||
@@ -182,8 +182,8 @@ if __name__ == "__main__":
|
||||
orbit = GoodOrbit()
|
||||
loong = Loong(orbit, 224, mp.mpf("2.0"), mp.mpf("1e-8"))
|
||||
res_list = []
|
||||
for ti in range(-10, 2):
|
||||
print(f"calculating time_point={ti}")
|
||||
for ti in range(-100, 101):
|
||||
print(f"calculating time_point={ti}", file=sys.stderr)
|
||||
res_list.append(loong.CalcStatusListByTime(mp.mpf(ti)))
|
||||
# 转换成内置浮点数并保留6位
|
||||
float_res_list = [[{
|
||||
@@ -198,4 +198,4 @@ if __name__ == "__main__":
|
||||
with open("A4_res.json", "w") as file:
|
||||
json.dump(float_res_list, file, indent=4)
|
||||
img_list = [orbit.GenerateImg(res) for res in res_list]
|
||||
img_list[0].save("A4.gif", save_all=True, append_images=img_list[1:], duration=1000, loop=0)
|
||||
img_list[0].save("A4.gif", save_all=True, append_images=img_list[1:], duration=100, loop=0)
|
||||
|
Reference in New Issue
Block a user