Данная библиотека использует международную систему единиц. Для удобства понимания разработчиками углы указаны в градусах (deg), а преобразование из градусов в радианы полностью заключено внутри библиотеки, что позволяет разработчику не беспокоиться об этом.
Пример вызова скорости света: constants.AstroConstants.c
Инициализация объекта системы времени требует UTC (координированное время по всемирному временщику) и долготу местоположения. Тип данных времени может быть как datetime, так и double (в секундах).
UTC может быть массивом значений, а долгота должна быть скалярной величиной.
UTC = datetime(2019, 11, 27, 21, 10, 10);
longitude = 24.583;
time_system = timeSystem.TimeSystem(UTC, longitude)
time_system =
TimeSystem with properties:
UTC: 2019-11-27 21:10:10
longitude: 24.5830
lambda: 24.5830
TAI: 2019-11-27 21:10:11
TT: 2019-12-30 01:35:08
TDT: 2019-12-30 01:35:08
ET: 2019-12-30 01:35:08
UT1: 2019-11-27 21:10:10
Smean: 6.2995e+08
S: 6.2995e+08
smean: 6.2995e+08
s: 6.2995e+08
```## 3. Определение орбиты
### 3.1 Предварительная обработка данных наблюдательных станций
На основе следующих данных:
- Широта станции, истинное солнечное время, высота над уровнем моря (или высота)
- Угол направления спутника, угол элевации, расстояние до спутника, скорость изменения угла направления, скорость изменения угла элевации и скорость изменения расстоянияВычисляются следующие характеристики:
- Положение станции в земном центрированном инерциальном координатном пространстве
- Косинусы направлений спутника в координатах горизонтальной системы координат станции
- Положение спутника в земном центрированном инерциальном координатном пространстве
- Скорость спутника в земном центрированном инерциальном координатном пространстве
Обратите внимание, что данные широты и высоты должны быть скалярными значениями, остальные могут быть массивами.
```matlab
preprocessing = orbitDefine.Preprocessing(latitude, timesystem.s / 3600 * 15, altitude, azimuth, elevation, distance, Dazimuth, Delevation, Ddistance)
preprocessing =
Preprocessing with properties:
latitude: 0.1024
s: [30x1 double]
altitude: 0
azimuth: [30x1 double]
elevation: [30x1 double]
distance: [30x1 double]
Dazimuth: [30x1 double]
Delevation: [30x1 double]
Ddistance: [30x1 double]
stationPos: [30x3 double]
spacecraftDir: [30x3 double]
spacecraftPos: [30x3 double]
spacecraftVel: [30x3 double]
orbitDefine.usingSinglePosVel(r0, v0, UTC(1))
ans =
usingSinglePosVel with properties:
Использует положение станции в земной неподвижной системе координат и направление спутника, а также истинное местное время и UTC начального момента времени, чтобы получить элементы орбиты.```matlab orbit_L = orbitDefine.LaplaceMethod(preprocessing.stationPos, preprocessing.spacecraftDir, timesystem.s)
```matlab
orbit_L =
LaplaceMethod с свойствами:
r0: [3x1 double]
v0: [3x1 double]
orbitDefine.usingSinglePosVel(orbit_L.r0, orbit_L.v0, timesystem.UTC(1))
orbit_L =
LaplaceMethod с свойствами:
r0: [3x1 double]
v0: [3x1 double]
a: 8.2619e+06
e: 0.0456
Omega: 60.2791
omega: 129.6670
i: 54.9207
tao: '2019-11-27 19:53:45'
f0: 217.5681
E0: 219.1920
M0: 220.8440
Использует положение спутника в земной неподвижной системе координат и UTC начального момента времени, чтобы получить элементы орбиты.
orbit = orbitDefine.usingMultiPos(preprocessing.spacecraftPos, UTC)
orbit =
usingMultiPos с свойствами:
a: 8.2099e+06
e: 0.0491
Omega: 60.2193
omega: 134.1086
i: 54.9040
tao: '2019-11-27 19:56:00'
f0: 213.2022
E0: bk
M0: 216.3779
p: 8.1901e+06
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )