You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
1.8 KiB
Matlab
73 lines
1.8 KiB
Matlab
% function check_main()
|
|
clc
|
|
clear
|
|
close all
|
|
|
|
% 从参数文件读取数据
|
|
fileID = fopen("input.txt");
|
|
C = textscan(fileID,'%s %s %f %f %f %f %f %f %f %f %f %f');
|
|
fclose(fileID);
|
|
|
|
%AOC_t0=(datenum(2017,3,15,12,0,0)-datenum(2000,1,1,12,0,0))*86400;
|
|
AOC_t0=etime(datevec(sprintf("%s %s", C{1}{1},C{2}{1}), "yyyy/MM/dd HH:mm:ss"), datevec("2000/01/01 12:00:00", "yyyy/MM/dd HH:mm:ss"));
|
|
disp(AOC_t0);
|
|
|
|
AOC_fai = (C{3}*pi)/180;
|
|
AOC_thita = (C{4}*pi)/180;
|
|
AOC_pusai = (C{5}*pi)/180;
|
|
AOC_a0 = C{6};
|
|
AOC_e0 = C{7};
|
|
AOC_i0 = C{8};
|
|
AOC_OMG0 = C{9};
|
|
AOC_os0 = C{10};
|
|
AOC_u0 = C{11};
|
|
AOC_Tstep = C{12};
|
|
|
|
% AOC_fai=0;
|
|
% AOC_thita=0;
|
|
% AOC_pusai=0;
|
|
% AOC_a0=42164.2;
|
|
% AOC_e0=0;
|
|
% AOC_i0=0;
|
|
% % AOC_OMG0=0.359763 ;
|
|
% AOC_OMG0=1.30588;
|
|
% AOC_os0=0;
|
|
% AOC_u0=0;
|
|
% AOC_Tstep=10;
|
|
|
|
% 以下参数为常量 或者 根据输入和常量计算所得
|
|
AOC_dTime=86400;
|
|
AOC_Tin=0:AOC_Tstep:AOC_dTime;
|
|
Mu=3.986005e5; %地球引力常数
|
|
w0=(Mu/AOC_a0^3)^0.5; %卫星轨道角速度
|
|
we=7.29211585530487e-5; %地球自转角速度
|
|
Re=6371.23; %地球平均半径
|
|
Len=length(AOC_Tin);
|
|
%Thita=linspace(-8.6,8.6,Len);
|
|
for num=1:Len
|
|
Tin=AOC_Tin(num);
|
|
AOC_u=AOC_u0+we*Tin;
|
|
%Rp_b=[sind(Thita(num)),0,cosd(Thita(num))].';
|
|
Rp_b=[0,0,1];
|
|
[Tmp_Lon,Tmp_Lat]=SightPoint(Tin,AOC_fai,AOC_thita,AOC_pusai,AOC_a0,AOC_e0,AOC_i0,AOC_OMG0,AOC_os0,AOC_u,Rp_b);
|
|
Lon(num,1)=Tmp_Lon;
|
|
Lat(num,1)=Tmp_Lat;
|
|
end
|
|
plot(Lon,Lat,'-o')
|
|
|
|
% 将结果数据写入文件
|
|
% 将两个数组转置为列向量
|
|
col1 = Lon(:);
|
|
col2 = Lat(:);
|
|
|
|
% 将两个列向量连接成矩阵
|
|
matrix = [col1, col2];
|
|
|
|
% 打开文件以进行写入
|
|
outFileID = fopen('output.txt', 'w');
|
|
|
|
% 将矩阵写入文件
|
|
fprintf(outFileID, '%d %d\n', matrix');
|
|
|
|
% 关闭文件
|
|
fclose(outFileID); |