stk与matlab联合仿真(10)——STK链路分析

1、STK链路分析
STK 的链路分析模块为多对象综合分析提供了有效的支持,利用链路分析模块,即可突破只能进行两点间分析的局限,而且可以真正进入立体仿真环境分析,大幅度提高分析工作的效率。
链路分析模块主要由两个对象进行支持,分别是链路对象Chains和星座对象Constellations。链路对象主要用来确定一系列关联对象之间的关系,而星座对象则用来提供一个对象的集合。(引自《stk在计算机仿真中的应用》)。

2、STK链路分析代码
具体的分析代码如下所示:

创建卫星
stkExec(conid,'New / */Satellite Sat1'); %创建卫星,也可以用stkNewObj函数来创建
stkExec(conid,'SetState */Satellite/Sat1 Classical HPOP UseScenarioInterval 60 J2000 "30 Aug 2024 00:00:00.00" 26553374.57 0 63.4 0 -29.7859 0'); 
stkExec(conid,'Graphics */Satellite/Sat1 SetColor red'); %设置卫星颜色
stkExec(conid,'New / */Satellite Sat2'); %创建卫星,也可以用stkNewObj函数来创建
stkExec(conid,'SetState */Satellite/Sat1 Classical HPOP UseScenarioInterval 60 J2000 "30 Aug 2024 00:00:00.00" 26553374.57 0 63.4 120 -29.7859 0'); 
stkExec(conid,'Graphics */Satellite/Sat1 SetColor yellow'); %设置卫星颜色
stkExec(conid,'New / */Satellite Sat3'); %创建卫星,也可以用stkNewObj函数来创建
stkExec(conid,'SetState */Satellite/Sat1 Classical HPOP UseScenarioInterval 60 J2000 "30 Aug 2024 00:00:00.00" 26553374.57 0 63.4 240 -29.7859 0'); 
stkExec(conid,'Graphics */Satellite/Sat1 SetColor blue'); %设置卫星颜色

%设置地面站
stkNewObj('*/','Facility','Fac1');
stkExec(conid,'SetPosition */Facility/Fac1 Geodetic 40 90 0'); %设置地面站位置
stkNewObj('*/','Facility','Fac2');
stkExec(conid,'SetPosition */Facility/Fac2 Geodetic 30 110 0'); %设置地面站位置
stkNewObj('*/','Facility','Fac3');
stkExec(conid,'SetPosition */Facility/Fac3 Geodetic 35 120 0'); %设置地面站位置

stkExec(conid,'Graphics */Facility/Fac1 SetColor white'); %设置颜色
stkExec(conid,'Graphics */Facility/Fac2 SetColor white'); %设置颜色
stkExec(conid,'Graphics */Facility/Fac3 SetColor white'); %设置颜色

%创建星座
stkExec(conid,'New / */Constellation Cons1'); %创建星座
stkExec(conid,'New / */Constellation Cons2'); %创建星座
stkExec(conid,'Chains */Constellation/Cons1 Add Satellite/Sat1')  %将对象加入星座
stkExec(conid,'Chains */Constellation/Cons1 Add Satellite/Sat2')  %将对象加入星座
stkExec(conid,'Chains */Constellation/Cons1 Add Satellite/Sat3')  %将对象加入星座
stkExec(conid,'Chains */Constellation/Cons2 Add Facility/Fac1')  %将对象加入星座
stkExec(conid,'Chains */Constellation/Cons2 Add Facility/Fac2')  %将对象加入星座
stkExec(conid,'Chains */Constellation/Cons2 Add Facility/Fac3')  %将对象加入星座

%创建链路
stkExec(conid,'New / */Chain chain1'); %创建链路
stkExec(conid,'New / */Chain chain2'); %创建链路
stkExec(conid,'New / */Chain chain3'); %创建链路

%关联链路
stkExec(conid,'Chains */Chain/chain1 Add Constellation/Cons1'); %chain1关联2个星座
stkExec(conid,'Chains */Chain/chain1 Add Constellation/Cons2');


stkExec(conid,'Chains */Chain/chain2 Add Satellite/Sat1'); %chain2关联
stkExec(conid,'Chains */Chain/chain2 Add Satellite/Sat2');
stkExec(conid,'Chains */Chain/chain2 Add Facility/Fac1');
stkExec(conid,'Chains */Chain/chain2 Add Facility/Fac2');

stkExec(conid,'Chains */Chain/chain3 Add Satellite/Sat1'); %chain3关联
stkExec(conid,'Chains */Chain/chain3 Add Satellite/Sat2');
stkExec(conid,'Chains */Chain/chain3 Add Satellite/Sat3');

%设置计算时间周期
stkExec(conid,'Chains */Chain/Chain1 SetComputeTime UseScenario');%使用场景时间
stkExec(conid,'Chains */Chain/Chain2 SetComputeTime UserSpecified "30 Aug 2024 02:00:00.00" "30 Aug 2024 06:30:00.00"');%使用自定义时间
stkExec(conid,'Chains */Chain/Chain3 SetComputeTime UseObjects');%使用对象时间

%计算报告
stkExec(conid,'ReportCreate */Chain/Chain1 Type Save Style "Access AER" File "D:\model\MATLAB\Stk_Matlab\data\chain1report.txt" ');%生成方位、俯仰和距离访问.
stkExec(conid,'ReportCreate */Chain/Chain2 Type Save Style "Access Data" File "D:\model\MATLAB\Stk_Matlab\data\chain2report.txt" ');%生成过境数据.
stkExec(conid,'ReportCreate */Chain/Chain3 Type Save Style "Angle Between" File "D:\model\MATLAB\Stk_Matlab\data\chain3report.txt" ');%生成夹角数据.
在这里插入代码片
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值