资源简介
用matlab实现导航系统中计算多普勒频移,输入接收机所在处的经纬高,(f0,d0,h0)以及间隔时间(t0),和信号对应波长频率(f),k为分析的毫秒数(此处设为1即可),利用拉格朗日差值和单位观测向量的计算实现对多普勒频移的求解。
代码片段和文件信息
function fd = exchange(f0d0h0t0fk)
%输入接收机所在处的纬、径、高(f0d0h0)以及间隔时间(t0),和信号对应波长频率(f)k为分析的毫秒数(此处设为1即可)
%坐标转换,打开存放坐标的文件,再将之从‘大地坐标系’转换成‘地心地固坐标系’。B是地心地固坐标系。
%注意:此程序每次只能在两个相邻的数据点中间插入所需量的数据
%t0= 0.001;%s
%f0 = 114.3316;
%d0 = 30.5772;
%h0 = 3963; %mile 地球椭球体长半径(赤道半径) 1mile=1.609km
%f = 1023000;
% format long g;
A = xlsread(‘MDatas_lla.xlsx‘);
%k是分析的毫秒数
% k = 1;
%===========================坐标转换开始====================================
M = size(A1);
X = zeros(1M);
Y = zeros(1M);
Z = zeros(1M);
a = 3963; % 长半径(赤道半径) 6378.2km
b = 3950; % 短半径(极轴半径) 6356.8km
e2 = (a^2 - b^2)/a^2;
B = zeros(M3);
for numb = 1:M
%N是卯酉圈曲率半径
N = a/sqrt(1 - e2*(sin(A(numb1)*pi/180))^2);
X(1numb) = (N + A(numb3)) * cos(A(numb1)*pi/180) * cos(A(numb2)*pi/180);
Y(1numb) = (N + A(numb3)) * cos(A(numb1)*pi/180) * sin(A(numb2)*pi/180);
Z(1numb) = (N*(1 - e2) + A(numb3)) * sin(A(numb1)*pi/180);
B(numb1) = X(1numb);
B(numb2) = Y(1numb);
B(numb3) = Z(1numb);
end
%本地坐标转换成地心地固坐标,C是本地坐标的地心地固坐标。
%n0也是卯酉圈曲率半径
n0 = a/sqrt(1 - e2*(sin((f0)*pi/180))^2);
x0 = (n0 + h0)*cos(f0*pi/180)*cos(d0*pi/180);
y0 = (n0 + h0)*cos(f0*pi/180)*sin(d0*pi/180);
z0 = (n0*(1-e2) + h0)*sin(f0*pi/180);
C =
- 上一篇:小波分析matlab程序
- 下一篇:Matlab实现音频降噪
相关资源
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
- k近邻算法matlab实现
- matlab识别系统
- 神经网络分类matlab程序
- matlab正弦信号发生器的设计
- matlab程序用Hopfield网络解决TSP
- 实例matlab 编程100个常用程序
- 用MATLAB(BPSK仿真 直接扩频)
- 最小二乘法曲线拟合(MATLAB)
评论
共有 条评论