Why dopplershift function still output non-nan value when stellite and groundstation theoratically can't access each other?
Show older comments
I was using satellite scenario to simulate starlink satellite and predicting doppler shift of satellites to the groundstation. I set the minelevationangle of 30 degree to the groundstation to simulate the situation that only satellites that elevation>30 degree can get access to the groundstation. However I discovered when I use dopplershift() funciton, it still output valid value to any satellites that has elevation>0 degree, instead of 30 degree. Is there any way to correct this?
Below are the codes I used.
%% 定义数值
% tic
disp('begin...')
latitude=30.5288888;
longitude=114.3530555;
altitude=56;
minelevation=30;
durationtimeSeconds=120;
starttime=datetime(2025,5,17,15,44,0,'TimeZone',hours(8));
sampletime=1;
%% 模拟环境
disp('creating satellitescenario object...')
% 创建图窗
sc = satelliteScenario(starttime,starttime+seconds(durationtimeSeconds),sampletime);
%% 地面站
disp('creating groundstation...')
% 创建地面站
gs=groundStation(sc,Name='WHU',Latitude=latitude,Longitude=longitude,Altitude=altitude,MinElevationAngle=minelevation);
%% 导入卫星
disp('importing satellites...')
% 创建和读取卫星,渲染轨道
sat=satellite(sc,[pwd,'\gp2.tle'],OrbitPropagator="sgp4");
%% 预报多普勒频移
disp('Predicting Doppler shift...')
carrierFrequency=11.325e9;
[frequencyShift,timeOut,dopplerInfo] = dopplershift(sat,gs,Frequency=carrierFrequency);
frequencyRate = dopplerInfo.DopplerRate;
relativeVelocity = dopplerInfo.RelativeVelocity;
its result:

I also calculated the true elevation value. it can be seen that dopplershift() still output valid value when elevation angle is only 1-2 degree, when the satellites and groundstation theroratically can't access to each other, but accroding to the documentation, dopplershift() function should output nan if source and target cannot access to each other.
Am I using it wrong?
Accepted Answer
More Answers (0)
Categories
Find more on Reference Applications in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!