一种采用数值法进行卫星轨道预测的异构并行计算方法技术

技术编号:34108880 阅读:16 留言:0更新日期:2022-07-12 00:59
本发明专利技术的一种采用数值法进行卫星轨道预测的异构并行计算方法,基于CUDA架构的CPU+GPU构成的异构环境,所述方法包括如下步骤:S1、调用CPU执行采用数值法计算卫星轨道所需的参数初始化,包括初始化轨道计算的环境和计算目标信息、轨道时间坐标系和地理坐标系的转化;S2、调用GPU基于CPU初始化的参数、使用数值法并行计算所有卫星的轨道数据。本发明专利技术通过将与卫星位置无关的计算过程分离出来由CPU来执行一次运算,并将结果以参数的方式传入GPU进行轨道并行计算,使得摄动力求解过程中减少了大量的重复计算,降低了整个计算过程的计算量,同时也降低了摄动力运算过程并行化的难度。度。度。

【技术实现步骤摘要】
一种采用数值法进行卫星轨道预测的异构并行计算方法


[0001]本专利技术涉及卫星通信领域,具体来说,涉及卫星通信网络构建之前仿真模拟过程中的卫星轨道预测,更具体地说,涉及一种采用数值法进行卫星轨道预测的异构并行计算方法。

技术介绍

[0002]卫星互联网是目前全球卫星通信系统的热点发展方向,其中,卫星轨道预测对于卫星星座设计、网络拓扑计算有着重要意义。
[0003]卫星轨道计算的原理为:卫星在运行过程中会受到地球引力等多种摄动力的影响做圆周运动,对卫星的所受到的摄动力进行分析,然后建立加速度微分方程并进行求解即可得到任一时刻卫星的速度和位置,由此实现卫星轨道预测。
[0004]现有技术下,关于卫星轨道的计算方法主要分为三类:解析法、数值法和半解析法。其中:解析法的原理是将卫星的运动模型和摄动力模型进行简化,如将卫星的运动模型简化到只包含卫星和地心的二体模型,从而能得到卫星轨迹的解析式,直接通过解析式进行求解,另外如常见的简化常规摄动模型(Simplified General Perturbations,SGP4)也属于解析法,解析法能快速计算卫星的轨道位置,但精度较低且依赖两行轨道要素(Two Line Element,TLE)文件;数值法是目前精密轨道预测的主要方法,其原理是通过计算对卫星运动产生影响的主要摄动力,如地球引力、太阳引力、月球引力、大气阻力、太阳光压力等摄动力,通过摄动力模型得到卫星的加速度微分方程,再通过各种积分方法(例如Runge

Kutta方法)进行积分求解,从而得到卫星的运动轨道,其特点是计算精度高,但是计算复杂度高、计算速度慢;而半解析法的原理与数值法类似,其特点是对一些影响短周期运动的摄动力进行简化,从而降低了长周期轨道预测的计算复杂度,因此其主要用于长周期的轨道计算,而并不适合进行短周期轨道计算。目前已有基于GPU的SGP4并行计算方法方面的技术,但缺少对于精度更高的数值法轨道并行计算相关的技术。
[0005]目前主流的卫星轨道精确预测方法是数值法,通过求解卫星所受的各种摄动力,建立加速度微分方程,并求解积分的方式求解卫星轨道,但是该方法存在求解过程复杂、计算速度慢、导致不能满足上千颗卫星的实时轨道预测需求的问题,究其原因,是现有技术没有实现数值法的并行计算。
[0006]现有的轨道并行计算相关技术主要是SGP4模型的并行化算法,缺少数值法的并行化方案,但是,SGP4主要存在以下问题:(1)SGP4属于解析法,计算精度较低,计算24小时后的轨道误差约为2km;(2)SGP4依赖TLE文件,TLE是卫星的平根数只能由观测得到,使用瞬时根数会造成更大的误差,因此该方法只能预测已发射卫星的轨道,无法预测未发射卫星的轨道。
[0007]因此,为了满足目前卫星互联网巨型星座的轨道预测仿真需求,急需解决数值法的轨道并行计算问题。

技术实现思路

[0008]因此,本专利技术的目的在于克服上述现有技术的缺陷,提供一种采用数值法进行卫星轨道预测的异构并行计算方法,解决数值法的轨道并行计算问题。
[0009]本专利技术的一种采用数值法进行卫星轨道预测的异构并行计算方法,基于CUDA架构的CPU+GPU构成的异构环境,所述方法包括如下步骤:S1、调用CPU执行采用数值法计算卫星轨道所需的参数初始化,包括初始化轨道计算的环境和计算目标信息、轨道时间坐标系和地理坐标系的转化;S2、调用GPU基于CPU初始化的参数、使用数值法并行计算所有卫星的轨道数据。
[0010]在本专利技术的一些实施例中,所述步骤S1中,CPU执行如下步骤:S11、获取巨型星座仿真对应的卫星数据,读取卫星数量、每颗卫星的初始位置、卫星质量、阻力系数、预测起始时刻、预测结束时刻;S12、获取巨型星座仿真文件中与计算摄动力相关的数据;S13、将每颗卫星的坐标数据进行坐标系转换,以将其转换到轨道计算过程所要求的坐标系下;S14、由CPU完成内存初始化以给所有卫星分配存储其相关数据的存储空间;S15、卫星摄动力参数计算初始化,包括计算所有卫星当前时刻的位置、地球引力系数、岁差章动矩阵、参考系转换矩阵并传输到GPU中。
[0011]在本专利技术的一些实施例中,所述步骤S14包括:申请GPU全局显存用于存储GPU运算过程中所需要的数据;申请CPU内存用于存储GPU运算获得的卫星轨道数据,其中,内存大小为(double)
×6×
N
sat
,其中N
sat
为巨型星座中的卫星数量,double为数据类型。
[0012]在本专利技术的一些实施例中,所述步骤S2包括调用GPU时,为每个卫星分配一个线程并在预测起始时刻至预测结束时刻中的每一个时刻由所有线程并行执行如下步骤:S21、以CPU初始化的摄动力参数为输入,使用数值法并行计算卫星的摄动力;S22、基于步骤S21计算获得的卫星的摄动力,获得卫星基于数值法的加速度微分方程,并对微分方程进行求解得到卫星下一时刻的速度和位置向量并存入GPU内存中。优选的,采用四阶龙格库塔方法对微分方程进行求解。
[0013]优选的,所述方法还包括如下步骤:S3、所有线程完成轨道计算后,由CPU从GPU显存中读取所有卫星的轨道计算结果并存入CPU为其分配的内存中;S4、由CPU将卫星轨道数据写入仿真文件,并释放为轨道计算分配的显存空间和内存空间。
[0014]在本专利技术的一些实施例中,在所述CUDA架构中,每个线程块的线程数为32的整数倍,且线程块的个数设置为:
[0015](N
sat

1)/32*n+1
[0016]其中,32*n表示每个线程块的线程数。
[0017]优选的,所述每个线程块的线程数为128。
[0018]与现有技术相比,本专利技术的优点在于:本专利技术使用CPU+GPU异构并行计算,通过调用大量线程将摄动力加速度计算和积分过程由串行改为并行,大大提升了计算速度。同时,本专利技术采用了摄动力加速度计算过程并行化,将数值法计算卫星轨道过程中最复杂的计算部分

摄动力的求解并行化。本专利技术将摄动力的计算过程分解为摄动力求解初始化和摄动力计算两个过程,通过将与卫星位置无关的计算过程(如极差矩阵、岁差章动矩阵等运算过程)分离出来由CPU来执行一次运算,并将结果以参数的方式传入GPU,使得摄动力求解过程中减少了大量的重复计算,降低了整个计算过程的计算量,同时也降低了摄动力运算过程
并行化的难度。由此将数值法计算卫星轨道过程分解,将卫星所受加速度和积分过程并行化,使用CPU+GPU异构计算方法计算多卫星轨道,加快了数值法计算卫星轨道的过程。
附图说明
[0019]以下参照附图对本专利技术实施例作进一步说明,其中:
[0020]图1为根据本专利技术实施例的一种采用数值法进行卫星轨道预测的异构并行计算方法流程示意图;
[0021]图2为根据本专利技术实施例的GPU并行计算原理示意图;
[0022]图3为根据本专利技术实施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
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×
N
sat
,其中N
sat
为巨型星座中的卫星数量,double为数据类型。4.根据权利要求3所述的方法,其特征在于,所述步骤S2包括调用GPU时,为每个卫星分配一个线程并在预测起始时...

【专利技术属性】
技术研发人员:刘子凡曹欢陈岩石晶林
申请(专利权)人:中国科学院计算技术研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1