如何从ephmeris模型大卫星星座数据有效吗?

3视图(30天)
我捞到OneWeb熔丝1(648年卫星舰队)星历数据从一个excel表我做了。我确定以下代码来获取访问不同的卫星地面站但是需要永远。任何机会使其更有效率呢?
% %的视线通信卫星熔丝1
% Se definen洛杉矶parametros de la mision y las身体状况进行调整
明确增值;
StartDate可以= datetime(00 2021年12日31日,00,00);
时间=小时(24);
sc = satelliteScenario (StartDate可以StartDate可以+持续时间60);
% %轨道变量
num1 = 8;%的飞机数量如果55º倾向
num2 = 12;%的飞机数量如果50,9º倾向
RT = 6371年e3;%地球半径(米)
文件= " EphemerisData.xls”;
% %地面站
gs1 = groundStation (sc, 82.499022, -62.352439,……
“名称”“MinElevationAngle”, 10日,“警报”);
gs2 = groundStation (sc 70 0…
“名称”“MinElevationAngle”, 10日,“70º”);
gs3 = groundStation (sc, 60 0…
“名称”“MinElevationAngle”, 10日,“60º”);
gs4 = groundStation (sc, 50 0…
“名称”“MinElevationAngle”, 10日,“50º”);
gs5 = groundStation (sc 40 0…
“名称”“MinElevationAngle”, 10日,“40º”);
gs6 = groundStation (sc 30 0…
“名称”“MinElevationAngle”, 10日,“30º”);
gs7 = groundStation (sc 20 0…
“名称”“MinElevationAngle”, 10日,“20º”);
gs8 = groundStation (sc 10 0…
“名称”“MinElevationAngle”, 10日,“10º”);
gs9 = groundStation (sc, 0, 0,…
“名称”“MinElevationAngle”, 10日,“00º”);
gs10 = groundStation (sc -10 0…
“名称”“MinElevationAngle”, 10日,“-10º”);
gs11 = groundStation (sc -20 0…
“名称”“MinElevationAngle”, 10日,“-20º”);
gs12 = groundStation (sc -30 0…
“名称”“MinElevationAngle”, 10日,“-30º”);
gs13 = groundStation (sc -40 0…
“名称”“MinElevationAngle”, 10日,“-40º”);
gs14 = groundStation (sc, -55.0834, -67.0759,……
“名称”“MinElevationAngle”, 10日,“波Toro”);
% %星历表矩阵
n1 = 0 (num1, 1);
n2 = 0 (num2, 1);
idx = 1: num1
straux =“B”+ num2str (18 + idx * 4);
n1 (idx, - 1) = xlsread(文件,2,straux) -56;
结束
清楚idx;
idx = 1: num2
straux =“B”+ num2str (83 + 3 * idx);
n2 (idx, - 1) = xlsread(文件,2,straux);
结束
清楚idx;
a1 = 0 (num1, 16);% ar (m)
a2 = 0 (num2, 49);
e1 = 0 (num1, 16);%偏心距(圆形)
e2 = 0 (num2, 49);
i1 = 0 (num1, 16);%的倾向(º)
i2 = 0 (num2, 49);
RAAN1 = 0 (num1, 16);% RAAN(º)
RAAN2 = 0 (num2, 49);
Aperi1 = 0 (num1, 16);%(º)
Aperi2 = 0 (num2, 49);
Anomaly1 = 0 (num1, 16);%(º)
Anomaly2 = 0 (num2, 49);
idx = 1: num1
jdx = 1: n1 (idx)
straux =“G”+ num2str (18 + idx * 4);
a1 (idx jdx) = (xlsread(文件,2,straux) * 10 ^ 3) + RT;
straux = " C " + num2str (18 + idx * 4);
i1 (idx jdx) = xlsread(文件,2,straux);
straux =“D”+ num2str (18 + idx * 4);
RAAN1 (idx jdx) = xlsread(文件,2,straux);
straux =“K”+ num2str (21 + jdx);
Anomaly1 (idx jdx) = xlsread(文件,2,straux);
坐=卫星(sc, a1 (idx jdx) e1 (idx jdx), i1 (idx jdx) RAAN1 (idx jdx) Aperi1 (idx jdx) Anomaly1 (idx jdx),“名字”,“坐”+ (idx + jdx-1));
访问(gs1,坐);
访问(gs2,坐);
访问(gs3,坐);
访问(gs4,坐);
访问(gs5,坐);
访问(gs6,坐);
gs7访问(坐);
访问(gs8,坐);
访问(gs9,坐);
访问(gs10,坐);
访问(gs11,坐);
访问(gs12,坐);
访问(gs13,坐);
访问(gs14,坐);
结束
结束
清楚idx jdx;
idx = 1: num2
jdx = 1: n2 (idx)
straux =“G”+ num2str (83 + 3 * idx);
a2 (idx jdx) = (xlsread(文件,2,straux) * 10 ^ 3) + RT;
straux = " C " + num2str (83 + 3 * idx);
i2 (idx jdx) = xlsread(文件,2,straux);
straux =“D”+ num2str (83 + 3 * idx);
RAAN2 (idx jdx) = xlsread(文件,2,straux);
straux =“L”+ num2str (21 + jdx);
Anomaly2 (idx jdx) = xlsread(文件,2,straux);
坐=卫星(sc a2 (idx jdx) e2 (idx jdx), i2 (idx jdx) RAAN2 (idx jdx) Aperi2 (idx jdx) Anomaly2 (idx jdx),“名字”,“坐”+ (idx + jdx-1));
访问(gs1,坐);
访问(gs2,坐);
访问(gs3,坐);
访问(gs4,坐);
访问(gs5,坐);
访问(gs6,坐);
gs7访问(坐);
访问(gs8,坐);
访问(gs9,坐);
访问(gs10,坐);
访问(gs11,坐);
访问(gs12,坐);
访问(gs13,坐);
访问(gs14,坐);
结束
结束
清楚idx jdx;
access1 = (gs1 (:) .Accesses);
access2 = (gs2 (:) .Accesses];
access3 = [gs3 (:) .Accesses];
access4 = [gs4 (:) .Accesses];
access5 = [gs5 (:) .Accesses];
access6 = [gs6 (:) .Accesses];
gs7 access7 = [(:) .Accesses];
access8 = [gs8 (:) .Accesses];
access9 = [gs9 (:) .Accesses];
access10 = [gs10 (:) .Accesses];
access11 = [gs11 (:) .Accesses];
access12 = [gs12 (:) .Accesses];
access13 = [gs13 (:) .Accesses];
access14 = [gs14 (:) .Accesses];
步伐= StartDate可以:秒(60):StartDate可以+持续时间;
status1 = 0(1,元素个数(步伐));
status2 = 0(1,元素个数(步伐));
status3 = status1;
status4 = status1;
status5 = status1;
status6 = status1;
status7 = status1;
status8 = status1;
status9 = status1;
status10 = status1;
status11 = status1;
status12 = status1;
status13 = status1;
status14 = status1;
辅助= num1 * n1 (1,1) + num2 * n2 (1,1);
idx = 1:辅助
status1 = status1 + accessStatus (access1 (idx));
status2 = status2 + accessStatus (access2 (idx));
status3 = status3 + accessStatus (access3 (idx));
status4 = status4 + accessStatus (access4 (idx));
status5 = status5 + accessStatus (access5 (idx));
status6 = status6 + accessStatus (access6 (idx));
status7 = status7 + accessStatus (access7 (idx));
status8 = status8 + accessStatus (access8 (idx));
status9 = status9 + accessStatus (access9 (idx));
status10 = status10 + accessStatus (access10 (idx));
status11 = status11 + accessStatus (access11 (idx));
status12 = status12 + accessStatus (access12 (idx));
status13 = status13 + accessStatus (access13 (idx));
status14 = status14 + accessStatus (access14 (idx));
结束
清楚idx;
% %统计数据
statusTable =[表(意思是(status1, 2),…
意思是(status2, 2),…
意思是(status3, 2),…
意思是(status4, 2),…
意思是(status5, 2),…
意思是(status6, 2),…
意思是(status7, 2),…
意思是(status8, 2),…
意思是(status9, 2),…
意思是(status10, 2),…
意思是(status11, 2),…
意思是(status12, 2),…
意思是(status13, 2),…
意思是(status14, 2));…
表(min (status1)……
分钟(status2)……
分钟(status3)……
分钟(status4)……
分钟(status5)……
分钟(status6)……
分钟(status7)……
分钟(status8)……
分钟(status9)……
分钟(status10)……
分钟(status11)……
分钟(status12)……
分钟(status13)……
分钟(status14));…
表(max (status1)……
马克斯(status2)……
马克斯(status3)……
马克斯(status4)……
马克斯(status5)……
马克斯(status6)……
马克斯(status7)……
马克斯(status8)……
马克斯(status9)……
马克斯(status10)……
马克斯(status11)……
马克斯(status12)……
马克斯(status13)……
马克斯(status14));…
statusTable.Properties。VariableNames =[“82º”……
“70º”……
“60º”,……
“50º”,…
“40º”……
“30º”……
“20º”……
“10º”,……
“00º”……
“-10º”……
“-20º”……
“-30º”……
“-40º”……
“波Toro”
];
statusTable.Properties。RowNames =[“意味着#卫星视图”,……
“敏#卫星视图”,…
“马克斯#卫星视图”);
statusTable;

答案(0)

类别

找到更多的在参考应用帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!