这是我关于堆栈溢出的第一个问题,请评论如何改进问题。
我觉得这是我代码的相关部分。
#import libraries
from numpy import *
from matplotlib.pyplot import *
#leapfrog method
def orbit(m1=1.0e30, m2=1.0e24, a=1.0e11, e=0.1):
#conditions
G=6.67*e-11
q=m1/m2
m=m1+m2
r0=(1-e)*a/(1+q)
v0=1/(1+q)sqrt((1+e)/(1-e)*G*m/a)
导入代码时,我收到错误消息:
import hw5redo
File "hw5redo.py", line 12
r0 = (1-e)*a/(1+q)
^
SyntaxError: invalid syntax
另外,当我从代码中注释掉它时,我也会收到:
import hw5redo
File "hw5redo.py", line 12
#r0=(1-e)*a/(1+q)
^
SyntaxError: invalid syntax
我认为注释甚至不应该被视为语法错误,因为它们仅用于用户。
@rth是正确的,请检查下面的代码,您应该在sqrt函数之前使用*:
def orbit(m1=1.0e30, m2=1.0e24, a=1.0e11, e=0.1):
G = 6.67 * e - 11
q = m1 / m2
m = m1 + m2
r0 = (1 - e) * a / (1 + q)
value = (1 + e) / (1 - e) * G * m / a
# Note that value is negative in this case, and it will raise a warning
print value
v0 = 1 / (1 + q) * sqrt(value)
希望该代码对您有所帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句