问题描述
所以我最近一直在学习 Python,我想通过尝试重新创建我在硕士学位期间使用的一些 Matlab 代码来挑战自己。除了看看我是否可以这样做之外,我不会出于任何原因这样做,而且由于我不再拥有 Matlab,因此能够使用代码也很不错。该程序用于绘制环绕月球的轨道,因此,它使用轨道力学和 SpiceyPy 等特定模块。
到目前为止,我已经能够自己转换大部分代码,但我特别困在一个函数上。问题是我不完全理解代码在做什么,所以我无法重新创建它。
任何人都可以提供任何帮助,我们将不胜感激。
解决方法
看起来该函数的目的是计算来自“其他行星”(意味着除地球之外的一切)的第三体加速度或扰动。其他物体被视为点质量。该循环通过调用 JPL SPICE 文件函数之一来迭代每个点质量并提取它们的位置和“mu”项(GM 变量)。它累积所有质量的总加速度并将其返回。
有关 JPL SPICE 文件函数的更多信息,请参阅 JPL SPICE。