我正在开展一个项目,我正在根据某些参数绘制卫星的轨道运动。 I' m绘图的等式如下:
R=r/(1+e*np.cos(phi))
其中r
是轨道半径(如果它是圆形的),e
是轨道的偏心距,phi
是从0
到{2*pi
的圆柱角度{1}}。我一直在绘制e
的不同值,如果我让e==1
,我会从Python收到此消息:
RuntimeWarning:在除法中遇到零除
在phi==pi
。
我想知道我可以做些什么来对我的代码进行错误检查,并告诉Python如果你收到这种错误,只是跳过那个计算并进入下一个计算?
答案 0 :(得分:3)
我认为避免这种情况的最佳方法是先做一个IF语句,如果phi等于pi则不进入计算。我认为你不应故意在可预测的情况下犯错误。
为了使主题更清晰,在我看来,如果无法预测错误,则只应使用try / catch。 我不同意将错误用作可接受的软件行为或设计模式。
if(phi != PI):
R=r/(1+e*np.cos(phi))
或者,如果您愿意,可以在phi == PI
时做出特殊行为