计算小行星表面重力和坡度

不知道谁需要这个,但想记录下来,万一以后还能用到。先看一下得到的结果

教程来源于:Shape models, their derivatives, and relating data and tools of the asteroid Ryugu used in the paper "Hayabusa2 observations of the top-shape carbonaceous asteroid 162173 Ryugu" by Watanabe et al. (2019). (jaxa.jp)

在里面,第一段作者也总结到:

该档案包含小行星 Ryugu 的形状模型及其衍生物,以及用于生成数据的工具或工具指针。该档案准备重现 Watanabe 等人在论文“Hayabusa2 对顶部形状碳质小行星 162173 Ryugu 的观测”中提出的结果(2019)。它“按原样”提供,没有任何明示或暗示的保证。

然后往下读就能读到下面的内容:

想要计算重力势等物理量,就需要一个C++脚本“GFandSlope.cpp”点击下载,怎么用这个脚本

  1. 执行代码是:$ g++ GFandSlope.cpp

执行时,还需要

  1. 附加的头文件(GF.h vector3.h)和放GFandSlope.cpp在同一目录中
  2. 由 NAIFJPLNASA (https://naif.jpl.nasa.gov/naif/) 开发和分发的 SPICE 工具包。用法:$ GFandSlope SHAPEMODEL.dat ROTATION_PERIOD DENSITY

最后一段话说Slope_Statistics_Watanabe+2019.ipynb是一个画图的jupyter notebook脚本

别人写的教程看完了,就可以开始动手做了。

首先下载所有脚本和工具,包括

1.GFandSlope.cpp GF.h vector3.h

这三个直接点里Shape models, their derivatives, and relating data and tools of the asteroid Ryugu used in the paper "Hayabusa2 observations of the top-shape carbonaceous asteroid 162173 Ryugu" by Watanabe et al. (2019). (jaxa.jp)的对应红色字体就自动下载了

2. SPICE工具包

同样点https://naif.jpl.nasa.gov/naif/

放在同一个文件夹下,并解压SPICE的包

配置一下C的环境,保证在cmd里也能启用C命令

然后在当前文件夹下打开命令行工具,输入

cl GFandSlope.cpp -I/E:/gravity_model/cal_sample/cspice/include E:/gravity_model/cal_sample/cspice/lib/cspice.lib

这条命令由五部分组成

cl

GFandSlope.cpp

-I

E:\gravity_model\cal_sample\cspice\include

E:\gravity_model\cal_sample\cspice\lib\cspice.lib

-I 后面跟头文件地址,再空一格跟lib地址,就没了,按下enter运行好了,就可以得到一个GFandSlope.exe

接下来同样在这个文件夹的命令行里执行

GFandSlope SHAPE_SFM_49k_v20180804.dat 7.63 1200 > ./Gravity_SHAPE_SFM_49k_v20180804_7.63_1200a_fromME.txt

这样一条命令分为

执行文件              GFandSlope

输入数据              SHAPE_SFM_49k_v20180804.dat

旋转角度              7.63

密度g/cm^3            1200

输出文件              ./Gravity_SHAPE_SFM_49k_v20180804_7.63_1200a_fromME.txt

这几部分,需要修改的是除了第一行之外的所有。输入数据可以在我教程最开头给的链接里找,如果你熟悉编程,完全可以照着这个档案复现整篇文章。得到的数据可以利用gmt插值,得到一个二维的图像,比如我用了

GFandSlope itokawa_f0049152.dat 12.13 1900 > ./Itokawa_Gravity_SHAPE_SFM_49k_12_1900a.txt

输入文件,这是一个地形数据,图中第1列是点号,第2,3,4列是此点对应的x,y,z,后面还有面数据,同样也是面号,和此面对应的3个点

得到了输出文件,输出文件里有很多信息,可以去看原教程的对表头的解读

重点来了!!

全文的重点就是执行这一行代码:

cl GFandSlope.cpp -I/E:/gravity_model/cal_sample/cspice/include E:/gravity_model/cal_sample/cspice/lib/cspice.lib

是在官方教程里找到的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值