资源简介
用于读取N文件与O文件,计算某一历元的卫星位置
代码片段和文件信息
#include
#include
#include
int main(){
double D2R(double deg);
int i = 0;
double n[50] n0 nn t tk Mk Ek Vk Yk Gu Gr Gi uk rk ik xk yk zk X Y Z Lk UT yy mm JD gpsz;
FILE *fp;
fp = fopen(“gnss_gps.txt“ “r“);
if (fp == NULL){
printf (“文件打开失败!\n“);
return 0;
}
while (! feof (fp)){
fscanf(fp “%lf“ &n[i]);
i++;
}
n0 = (sqrt(3986005E+8))/pow(n[17] 3);
nn = n0 + n[12];/*计算卫星运行的平均角速度*/
UT = n[4] + (n[5] / 60) + (n[7] / 3600);/*民用日的时分秒化为实数时*/
//将6点5分06秒变成6+5/60+6/3600
n[1] = n[1] + 2000;
if (n[2] <= 2){
yy = n[1] - 1;
mm = n[2] + 12;
}
if (n[2] > 2){
yy = n[1];
mm = n[2];
}
JD = (int)(365.25 * yy) + (int)(30.6001 * (mm + 1)) + n[3] + (UT / 24) + 1720981.5;/*化为儒略日*/
gpsz = (int)((JD - 2444244.5) / 7);
t = (JD - 2444244.5 - 7 * gpsz) * 24 * 3600;
tk = 60*15 + t - n[18];/*tk1为中间值,用以判断tk与正负302400的关系,然后返回到tk上*/
while (tk > 302400 || tk < -302400){
if (tk > 302400){
tk = tk - 604800;
}
else
{
tk = tk + 604800;
相关资源
- qTox (基于 peer-to-peer )
- BOOTloder_stm32f407
- USB转LORA无线模块
- C++多线程网络编程Socket
- C++纯文字DOS超小RPG游戏
- 安科瑞智能电能表MODBUS通讯程序 VC6
- LINUX下命令行界面的C语言细胞游戏
- 电子时钟 有C语言程序,PROTEUS仿真图
- 尚观培训linux许巍老师关于c语言的课
- VC6LineNumberAddin.dll
- 我的C语言寒假作业-学生通讯录系统(
- DSDEMO-C演示(数据结构C语言版 严蔚敏
- 谭浩强C语言word版12171
- TC2.0DOSBOX
- 《Linux程序设计》第四版pdf高清电子版
- stc8g1k08特性.doc
- Wi-Fi IoT智能家居套件-Hi3861(原理图
- Quectel_EC200xEG912YEC600NEC600S系列_TCP(I
- GD32F103 在线串口Ymodem协议升级IAP
- Adobe Acrobat X Pro汉化CIDFont字体包
- 最新的魔兽世界机器人脚本NpcBot.pat
- 安卓c语言开发SDL2+opengles
- qt进度条(RoundProgressBar)
- Qt的纽带风格界面实现(Office Ribbon风
- QT Hisi demo
- Qt画图工具源码(qgraphics draw)
- qt cmd实现ping
- qt texteditor(富文本编辑器)
- C++17 In Detail
- Qt5串口通信-windows
评论
共有 条评论