实习内容: (1)全面理解电离层延迟误差改正,设计电离层延迟误差改正的基类和派生类,并体现虚函数的使用。基类指广义的电离层延迟误差改正,派生类为Klobuchur模型改正法。设计必要的数据结构,并输入给电离层延迟误差改正类。具体计算过程可参考RTKLIB相关代码。 (2)全面理解对流层延迟误差改正,设计对流层延迟误差改正的基类和派生类,并体现虚函数的使用。基类指广义的对流层延迟误差改正,派生类为Saastamonien模型改正法。具体计算过程可参考RTKLIB相关代码。 (3)本次实习以面向对象设计为重点,编译要求通过,但对具体计算过程及结果不作为统一要求。重点理解、运用、掌握基类、派生类、虚函数、类的交互。编写主函数main.cpp,实现对电离层误差、对流层误差改正类的编译测试。 (4)继续优化前面作业的代码以及和单点定位全流程相关的代码,为最终实现单点定位程序做准备。
时间: 2024-03-29 09:37:12 浏览: 71
基类和派生类 面向对象程序设计 C++ 实验报告
好的,你的实习内容包括两个部分:电离层延迟误差和对流层延迟误差的改正设计。这两个部分的设计都需要基类和派生类,并体现虚函数的使用。以下是具体的实习内容和流程:
1. 电离层延迟误差改正设计
电离层对卫星信号的传播会引起延迟误差,需要进行改正。设计一个电离层延迟误差改正的基类,包括以下成员函数:
- setParam():设置电离层延迟误差改正所需的参数;
- getDelay():计算电离层延迟误差改正量。
然后设计一个派生类,使用Klobuchur模型进行电离层延迟误差改正,包括以下成员函数:
- setParam():设置Klobuchur模型所需的参数;
- getDelay():计算Klobuchur模型电离层延迟误差改正量。
在设计基类和派生类时,需要使用虚函数来实现多态性,以便在调用时能够正确地执行相应的函数。
2. 对流层延迟误差改正设计
对流层对卫星信号的传播也会引起延迟误差,需要进行改正。设计一个对流层延迟误差改正的基类,包括以下成员函数:
- setParam():设置对流层延迟误差改正所需的参数;
- getDelay():计算对流层延迟误差改正量。
然后设计一个派生类,使用Saastamonien模型进行对流层延迟误差改正,包括以下成员函数:
- setParam():设置Saastamonien模型所需的参数;
- getDelay():计算Saastamonien模型对流层延迟误差改正量。
同样,需要使用虚函数来实现多态性。
3. 主函数设计
在主函数main.cpp中,需要实现对电离层误差、对流层误差改正类的编译测试。具体流程包括:
- 定义电离层延迟误差改正类的对象,使用基类指针调用其成员函数,计算电离层延迟误差改正量;
- 定义对流层延迟误差改正类的对象,使用基类指针调用其成员函数,计算对流层延迟误差改正量;
- 输出电离层延迟误差改正量、对流层延迟误差改正量。
4. 优化代码
最后,继续优化前面作业的代码以及和单点定位全流程相关的代码,为最终实现单点定位程序做准备。可以使用面向对象的思想,将代码模块化,实现更好的可读性和可维护性。
希望这些内容能够帮助你完成实习任务。
阅读全文