update task4

This commit is contained in:
2024-09-07 23:52:51 +08:00
parent 34250d6344
commit eef587ca52
2 changed files with 16 additions and 4 deletions

View File

@@ -13,7 +13,13 @@ class GoodOrbit(Orbit):
def __init__(self):
self.kAlpha = mp.mpf("1.7") / (2 * mp.pi)
self.kCriticalTheta = 2.86 / ((2 / 3) * self.kAlpha)
def f(x):
r=(1/3)*self.kAlpha*mp.sqrt(1+x**2)
phi=mp.atan(x)
L=mp.mpf("2.86")
return (r+3*r*mp.cos(mp.pi-2*phi)-L)**2+(3*r*mp.sin(mp.pi-2*phi))**2-L**2
self.kCriticalTheta = mp.findroot(f, 15, solver='secant')
print(f"CriticalTheta={self.kCriticalTheta}", file=sys.stderr)
self.r = (1 / 3) * self.kAlpha * mp.sqrt(1 + self.kCriticalTheta**2)
self.point_A_cartesian = (
self.kAlpha * self.kCriticalTheta * mp.cos(self.kCriticalTheta),