• 大小: 2.9MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-04
  • 语言: C/C++
  • 标签: C++  星历  导航定位  

资源简介

利用C++编写的卫星的实时坐标计算程序。

资源截图

代码片段和文件信息

#include
#include
#include
#include
#include
#include
#include
#define maxsize 5
using namespace std;
double power(double x double n)
{
double val = 1.0;
while (n--)
val *= x;
return val;
}
const double PI = 3.1415926;
const double we = 7.2921151467 / power(10 5);
const double GM = 3.986005*power(10 14);
class KK
{
public:
double dn Mo e w Cuc Cus Crc Crs Cis Cic Wo W n0;
double n Ek Ek0 Mk Vk Ok du di dr uk rk ik xk yk zk Lk Xk Yk Zk Qk a UT io wo I JD tk toe Idot t;
int w_n Y M D H min;
double sec a1 a2 a0 aode L2 GPSn_week L2P wxjd MSB TGD IODC sendtime wm ek1 ek2 cosVk sinVk;
};
void main()
{
int j = 1 i = 0;
KK hhd[maxsize];
ifstream in;
in.open(“E:\\fifth\\123.txt“);
ofstream out(“E:\\fifth\\5.txt“);

in >> hhd[j].w_n>> hhd[j].Y >> hhd[j].M >> hhd[j].D >> hhd[j].H >> hhd[j].min >> hhd[j].sec
>> hhd[j].a0 >> hhd[j].a1 >> hhd[j].a2 >> hhd[j].aode >> hhd[j].Crs >> hhd[j].dn >> hhd[j].Mo >> hhd[j].Cuc >> hhd[j].e >> hhd[j].Cus >> hhd[j].a >>
hhd[j].toe >> hhd[j].Cic >> hhd[j].Wo >> hhd[j].Cis >> hhd[j].I >> hhd[j].Crc >> hhd[j].w >> hhd[j].W >> hhd[j].Idot >> hhd[j].L2 >> hhd[j].GPSn_week >>
hhd[j].L2P >> hhd[j].wxjd >> hhd[j].MSB >> hhd[j].TGD >> hhd[j].IODC >> hhd[j].sendtime;
cout << hhd[j].w_n << hhd[j].Y << hhd[j].M << hhd[j].D << hhd[j].a0;
hhd[j].n0 = sqrt(GM) / pow(hhd[j].a 3);
hhd[j].n = hhd[j].n0 + hhd[j].dn;

for (int k = 0; k< 21; k++)
{
hhd[j].tk = k*  60+28800;
hhd[j].Mk = hhd[j].Mo + hhd[j].n*hhd[j].tk;
hhd[j].ek1 = hhd[j].Mk;

do{

hhd[j].Ek0 = hhd[j].ek1;
hhd[j].ek1 = hhd[j].Mk + hhd[j].e*sin(hhd[j].Ek0);
} while (fabs(hhd[j].Ek0 - hhd[j].ek1)>1e-15);

hhd[j].Ek = hhd[j].ek1;
//计算观测时刻的偏近点角Ek
hhd[j].cosVk hhd[j].sinVk;
hhd[j].cosVk = (cos(hhd[j].Ek) - hhd[j].e) / (1 - hhd[j].e*cos(hhd[j].Ek));
hhd[j].sinVk = sqrt(1 - hhd[j].e*hhd[j].e)*sin(hhd[j].Ek) / (1 - hhd[j].e*cos(hhd[j].Ek));
if (hhd[j].cosVk > 0 && hhd[j].sinVk > 0)
hhd[j].Vk = atan(hhd[j].sinVk / hhd[j].cosVk);
else if (hhd[j].sinVk > 0 && hhd[j].cosVk < 0)
hhd[j].Vk = acos(hhd[j].cosVk);
else if (hhd[j].sinVk < 0 && hhd[j].cosVk < 0)
hhd[j].Vk = PI - asin(hhd[j].sinVk);
else
hhd[j].Vk = 2 * PI - acos(hhd[j].cosVk);

/*Vk=atan((sqrt(1-e*e)*sin(Ek))/(cos(Ek)-e));*///计算真近点角Vk
hhd[j].Qk = hhd[j].Vk + hhd[j].w;                                              //计算升交距角Qk
hhd[j].du = hhd[j].Cuc*cos(2 * hhd[j].Qk) + hhd[j].Cus*sin(2 * hhd[j].Qk);
hhd[j].dr = hhd[j].Crc*cos(2 * hhd[j].Qk) + hhd[j].Crs*sin(2 * hhd[j].Qk);
hhd[j].di = hhd[j].Cic*cos(2 * hhd[j].Qk) + hhd[j].Cis*sin(2 * hhd[j].Qk);//计算摄动改正项rurrri
hhd[j].uk = hhd[j].Qk + hhd[j].du;
hhd[j].rk = (1 - hhd[j].e*cos(hhd[j].Ek))*hhd[j].a*hhd[j].a + hhd[j].dr;
hhd[j].ik = hhd[j].I + hhd[j].di + hhd[j].Idot*hhd[j].tk;        //计算摄动改正的

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-10-25 20:36  作业一程序--C++\Debug\
     文件      103424  2015-11-03 11:24  作业一程序--C++\Debug\WGS.exe
     文件      677068  2015-11-03 11:24  作业一程序--C++\Debug\WGS.ilk
     文件     1305600  2015-11-03 11:24  作业一程序--C++\Debug\WGS.pdb
     文件     7471104  2015-11-03 11:26  作业一程序--C++\GNSS作业--C++.sdf
     文件         955  2015-10-24 18:34  作业一程序--C++\GNSS作业--C++.sln
     文件       20480  2015-11-03 11:26  作业一程序--C++\GNSS作业--C++.v12.suo
     目录           0  2015-11-03 11:24  作业一程序--C++\WGS\
     目录           0  2015-11-03 11:24  作业一程序--C++\WGS\Debug\
     文件      388096  2015-11-03 11:24  作业一程序--C++\WGS\Debug\vc120.idb
     文件      430080  2015-11-03 11:24  作业一程序--C++\WGS\Debug\vc120.pdb
     文件        1466  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.log
     目录           0  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\
     文件        1242  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\cl.command.1.tlog
     文件       26956  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\CL.read.1.tlog
     文件         404  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\CL.write.1.tlog
     文件        2162  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\link.command.1.tlog
     文件        2536  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\link.read.1.tlog
     文件         374  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\link.write.1.tlog
     文件         184  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS.tlog\WGS.lastbuildstate
     文件      279000  2015-11-03 11:24  作业一程序--C++\WGS\Debug\WGS--C++.obj
     文件        4084  2015-10-24 19:50  作业一程序--C++\WGS\WGS.vcxproj
     文件         949  2015-10-24 19:50  作业一程序--C++\WGS\WGS.vcxproj.filters
     文件        3741  2015-11-03 11:24  作业一程序--C++\WGS\WGS--C++.cpp

评论

共有 条评论