[发明专利]一种采用数值法进行卫星轨道预测的异构并行计算方法在审
申请号: | 202210409337.2 | 申请日: | 2022-04-19 |
公开(公告)号: | CN114722617A | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 刘子凡;曹欢;陈岩;石晶林 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F30/20 | 分类号: | G06F30/20;G06F17/13;G06F9/50;G06F111/10 |
代理公司: | 北京泛华伟业知识产权代理有限公司 11280 | 代理人: | 王勇 |
地址: | 100190 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 采用 数值 进行 卫星 轨道 预测 并行 计算方法 | ||
1.一种采用数值法进行卫星轨道预测的异构并行计算方法,其中,所述方法基于CUDA架构的CPU+GPU构成的异构环境,其特征在于,所述方法包括如下步骤:
S1、调用CPU执行采用数值法计算卫星轨道所需的参数初始化,包括初始化轨道计算的环境和计算目标信息、轨道时间坐标系和地理坐标系的转化;
S2、调用GPU基于CPU初始化的参数、使用数值法并行计算所有卫星的轨道数据。
2.根据权利要求1所述的方法,其特征在于,所述步骤S1中,CPU执行如下步骤:
S11、获取巨型星座仿真对应的卫星数据,读取卫星数量、每颗卫星的初始位置、卫星质量、阻力系数、预测起始时刻、预测结束时刻;
S12、获取巨型星座仿真文件中与计算摄动力相关的数据;
S13、将每颗卫星的坐标数据进行坐标系转换,以将其转换到轨道计算过程所要求的坐标系下;
S14、由CPU完成内存初始化以给所有卫星分配存储其相关数据的存储空间;
S15、卫星摄动力参数计算初始化,包括计算所有卫星当前时刻的位置、地球引力系数、岁差章动矩阵、参考系转换矩阵并传输到GPU中。
3.根据权利要求2所述的方法,其特征在于,所述步骤S14中包括:
申请GPU全局显存用于存储GPU运算过程中所需要的数据;
申请CPU内存用于存储GPU运算获得的卫星轨道数据,其中,内存大小为(double)×6×Nsat,其中Nsat为巨型星座中的卫星数量,double为数据类型。
4.根据权利要求3所述的方法,其特征在于,所述步骤S2包括调用GPU时,为每个卫星分配一个线程并在预测起始时刻至预测结束时刻中的每一个时刻由所有线程并行执行如下步骤:
S21、以CPU初始化的摄动力参数为输入,使用数值法并行计算卫星的摄动力;
S22、基于步骤S21计算获得的卫星的摄动力,获得卫星基于数值法的加速度微分方程,并对微分方程进行求解得到卫星下一时刻的速度和位置向量并存入GPU内存中。
5.根据权利要求4所述的方法,其特征在于,所述步骤S22中,采用四阶龙格库塔方法对微分方程进行求解。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括如下步骤:
S3、所有线程完成轨道计算后,由CPU从GPU显存中读取所有卫星的轨道计算结果并存入CPU为其分配的内存中。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括如下步骤:
S4、由CPU将卫星轨道数据写入仿真文件,并释放为轨道计算分配的显存空间和内存空间。
8.根据权利要求4所述的方法,其特征在于,在所述CUDA架构中,每个线程块的线程数为32的整数倍,且线程块的个数设置为:
(Nsat-1)/32*n+1
其中,32*n表示每个线程块的线程数。
9.根据权利要求8所述的方法,其特征在于,所述每个线程块的线程数为128。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序可被处理器执行以实现权利要求1至9任一所述方法的步骤。
11.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1至9中任一项所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210409337.2/1.html,转载请声明来源钻瓜专利网。