C语言用广播星历求卫星坐标,GPS广播星历计算卫星位置和速度

您所在的位置:网站首页 卫星坐标计算编程 C语言用广播星历求卫星坐标,GPS广播星历计算卫星位置和速度

C语言用广播星历求卫星坐标,GPS广播星历计算卫星位置和速度

2024-07-11 14:47| 来源: 网络整理| 查看: 265

“GPS广播星历计算卫星位置和速度”

及“GPS伪距定位”计算试验

1.试验内容及上交成果

1.1 试验内容

应用C语言按预定格式(函数、输入输出变量之名称、类型)编写“GPS广播星历计算卫星位置和速度”函数SatPos_Vel( )、“GPS伪距定位”函数Positioning( )。将此两个函数组成文件F2.cpp,并包含于文件GPS_Positioning.cpp中。编译、连接并运行文件GPS_Positioning.cpp,逐一时刻读取广播星历(Ephemeris.dat)、观测时间及伪距、卫星号(Observation.dat)信息,计算WGS84坐标系中观测时刻相应的卫星位置、速度以及载体位置,结果保存于文件Position.dat中。

1.2 上交成果

磁盘文件F2.cpp、Position.dat,并存于“学号作者中文姓名”目录中。

2.函数说明

2.1 星历文件读取函数

void EFileReading(Efile)

功能:读取星历文件,给星历数据结构体Ephemeris赋值。

输入变量:EFile 字符串,文件名。

2.2 观测数据读取函数

int ObsReading(fp_Obs,Time,Rho,Mark)

功能:从文件Observation.dat中读取某一时刻的伪距、卫星号。读取成功函数值返回“1”,失败返回“-1”(读错,或至文件尾)。

输入变量:fp_Obs 文件指针;

输出变量:Time double,时间(秒);

Rho double[12],伪距(米);

Mark int[12],卫星号,“-1”表示此通道无卫星、无伪距。

2.3 最小二乘估计函数

int LeastSquareEstimation(Y,A,P,m,n, X)

功能:最小二乘方法求解观测方程Y=AX+ε,其中观测值方差阵的逆阵为P(也称为权阵),得未知参数X。成功返回“1”,失败返回“-1”(亏秩)。

输入变量:Y double[m],观测方程自由项(米);

A double[m×n],系数阵(无量纲),按第1行第1、2……n元素,

1



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3