如何理解三体问题中的语法错误?

2024-09-27 21:24:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个Python代码来表示一个三体问题:当重力公式出现时,问题就出现了:它说“无效语法”。下面是代码片段

from pylab import *
"""
orbita vV variable tau
"""
Tmax=2.2; GM=4*pi**2
GMg=4*pi**2*9.54e-4; GMt=4*pi**2*3.015e-6          


x=1; y=0.; xg=5,26; yg=0; vx=0.; vy=pi
r=sqrt(x**2+y**2)   
rgt=sqrt((xg-x)**2+(yg-y)**2     
Fx=-GM*x/r**3; Fy = -GM*y/r**3                              
Fgtx=-GMg*(xg-x)/rgt**3; Fgty =-GMg*(yg-y)/rgt**3  

aa=0.1
v=abs(sqrt(vx**2 + vy**2))
a=abs(sqrt(Fx**2 + Fy**2)+abs(sqrt(Fgtx**2 + Fgty**2))
tau=(-v + sqrt(v**2 + 2*a*aa*abs(r)))/a 
File "<ipython-input-1-54f667811fbf>", line 21
tau=(-v + sqrt(v**2 + 2*a*aa*abs(r)))/a   
SyntaxError: invalid syntax

Tags: 代码piabssqrtaafxygtau
1条回答
网友
1楼 · 发布于 2024-09-27 21:24:45

问题是上一行缺少)

a=abs(sqrt(Fx**2 + Fy**2)+abs(sqrt(Fgtx**2 + Fgty**2))

应该是:

a=abs(sqrt(Fx**2 + Fy**2))+abs(sqrt(Fgtx**2 + Fgty**2))

或者

a=abs(sqrt(Fx**2 + Fy**2)+abs(sqrt(Fgtx**2 + Fgty**2)))

相关问题 更多 >

    热门问题