% 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);