exponenta event banner

gravitysphericalharmonic

Реализовать сферическое гармоническое представление планетарной гравитации

Синтаксис

[gx gy gz] = gravitysphericalharmonic(planet_coordinates)
[gx gy gz] = gravitysphericalharmonic(planet_coordinates, model)
[gx gy gz] = gravitysphericalharmonic(planet_coordinates, degree)
[gx gy gz] = gravitysphericalharmonic(planet_coordinates, model, degree)
[gx gy gz] = gravitysphericalharmonic(planet_coordinates, model, degree, action)
[gx gy gz] = gravitysphericalharmonic(planet_coordinates, 'Custom', degree, {datafile dfreader}, action)

Описание

[gx gy gz] = gravitysphericalharmonic(planet_coordinates) реализует математическое представление сферической гармонической планетарной гравитации на основе планетарного гравитационного потенциала. Эта функция вычисляет массивы N значения силы тяжести по осям X, Y и Z в координатах Планетоцентрированная планета (Planet-Centered Planet) - фиксированные координаты для планеты. Эти вычисления выполняются с использованием planet_coordinatesодин M-на-3 массив координат Planet-Centered Planet-Fixed. По умолчанию эта функция принимает 120-ю степень и порядок сферических коэффициентов для 'EGM2008' (Земля) планетарная модель.

[gx gy gz] = gravitysphericalharmonic(planet_coordinates, model) реализует математическое представление для планетарной модели, model.

[gx gy gz] = gravitysphericalharmonic(planet_coordinates, degree) использует степень и порядок, degree указывает.

[gx gy gz] = gravitysphericalharmonic(planet_coordinates, model, degree) использует степень и порядок, degree указывает. model определяет планетарную модель.

[gx gy gz] = gravitysphericalharmonic(planet_coordinates, model, degree, action) использует указанное action когда входной сигнал выходит за пределы диапазона.

[gx gy gz] = gravitysphericalharmonic(planet_coordinates, 'Custom', degree, {datafile dfreader}, action) реализует математическое представление для пользовательской модели планеты. datafile определяет планетарную модель. dfreader указывает устройство чтения для datafile.

Эта функция имеет следующие ограничения:

  • Функция исключает центробежные эффекты планетарного вращения и эффекты прецессирующей системы отсчёта.

  • Модель сферической гармонической гравитации действительна для радиальных положений, превышающих экваториальный радиус планеты. Незначительные ошибки могут возникнуть для радиальных положений вблизи или у планетарной поверхности. Модель сферической гармонической гравитации недопустима для радиальных положений, меньших, чем планетарная поверхность.

Входные аргументы

planet_coordinates

M-на-3 массив Planet-Centered Planet - фиксированные координаты в метрах. Ось Z положительна к Северному полюсу. Если model является 'EGM2008' или 'EGM96' (Земля), координаты планеты - координаты ECEF.

model

Планетарная модель. По умолчанию: 'EGM2008'. Укажите один из следующих параметров:

Планетарная модельПланета
'EGM2008'

Гравитационная модель Земли 2008. Координаты планеты - ECEF (WGS84).

'EGM96'

Гравитационная модель Земли 1996. Координаты планеты - ECEF (WGS84).

'LP100K'

Модель Луны 100-й степени.

'LP165P'

Модель Луны 165-й степени.

'GMM2B'

Годдард Марс модель 2B.

'Custom'

Пользовательская планетарная модель, определенная в datafile.

Примечание

Чтобы развернуть пользовательскую планетарную модель, явно включите пользовательские данные и файлы чтения в Compiler™ MATLAB ® (mcc) при компиляции. Например:

mcc -m mycustomsphericalgravityfunction...
-a customDataFile -a customReaderFile

Для других планетарных моделей используйте компилятор MATLAB как обычно.

'EIGENGL04C'

Комбинированная модель гравитационного поля Земли EIGEN-GL04C.

При вводе большого массива PCPF и значения высокой степени может возникнуть ошибка нехватки памяти. Дополнительные сведения об устранении ошибок нехватки памяти в среде MATLAB см. в разделе Устранение ошибок нехватки памяти.

При вводе большого массива PCPF можно получить ограничение максимального размера матрицы. Чтобы определить самую большую матрицу или массив, которые можно создать в среде MATLAB для вашей платформы, см. раздел Производительность и память.

degree

Скалярное значение, определяющее степень и порядок гармонической гравитационной модели.

Планетарная модельСтепень и порядок

'EGM2008'

Максимальная степень и порядок - 2159.

Степень и порядок по умолчанию - 120.

'EGM96'

Максимальная степень и порядок - 360.

Степень и порядок по умолчанию - 70.

'LP100K'

Максимальная степень и порядок - 100.

Степень и порядок по умолчанию - 60.

'LP165P'

Максимальная степень и порядок - 165.

Степень и порядок по умолчанию - 60.

'GMM2B'

Максимальная степень и порядок - 80.

Степень и порядок по умолчанию - 60.

'Custom'

Максимальная степень - это степень и порядок по умолчанию.

'EIGENGL04C'

Максимальная степень и порядок - 360.

Степень и порядок по умолчанию - 70.

При вводе большого массива PCPF и значения высокой степени может возникнуть ошибка нехватки памяти. Дополнительные сведения о предотвращении ошибок нехватки памяти в среде MATLAB см. в разделе Производительность и память.

При вводе большого массива PCPF можно получить ограничение максимального размера матрицы. Чтобы определить самую большую матрицу или массив, которые можно создать в среде MATLAB для вашей платформы, см. раздел Производительность и память.

action

Действие для входа вне диапазона. Укажите один из следующих параметров:

'Error'
'Warning' (по умолчанию)
'None'

'Custom'

Символьный вектор или строка, указывающая, что datafile содержит определения для пользовательской планетарной модели.

datafile

Файл, содержащий определения для пользовательской планетарной модели. Пример содержимого файла см. в разделе aerogmm2b.mat.

Этот файл должен содержать следующие переменные.

ПеременнаяОписание
Ре

Скаляр экваториального радиуса планеты в метрах (м)

GM

Скаляр планетарного гравитационного параметра в метрах в кубах в секунду в квадрате (м3/с2)

степень

Скаляр максимальной степени

C

(степень + 1) -by- (степень + 1) матрица, содержащая нормализованную матрицу сферических гармонических коэффициентов, C

S

(степень + 1) -by- (степень + 1) матрица, содержащая нормализованную матрицу сферических гармонических коэффициентов, S

Для этого параметра необходимо указать программу в dfreader для чтения файла данных.

dfreader

Укажите функцию MATLAB для чтения datafile. Указанный файл чтения зависит от типа файла datafile.

Тип файла данныхОписание

Файл MATLAB

Укажите MATLAB load функция, например, @load.

Другой тип файла

Укажите пользовательскую функцию чтения MATLAB. Примеры пользовательских функций чтения см. в разделе astReadSHAFile.m и astReadEGMFile.m. Обратите внимание на порядок выходных переменных в этих файлах.

Выходные аргументы

gx

Массив N значения гравитации по оси X Планеты-Центрированной Планеты - Фиксированные координаты в метрах в секунду в квадрате (м/с2).

gy

Массив N значения гравитации по оси Y Планеты-Центрированной Планеты - Фиксированные координаты в метрах в секунду в квадрате (м/с2).

gz

Массив N значения гравитации по оси Z Планеты-Центрированной Планеты - Фиксированные координаты в метрах в секунду в квадрате (м/с2).

Примеры

Вычислите гравитацию по оси X в экваторе на поверхности Земли. В этом примере используется модель EGM2008 120 градусов по умолчанию с предупреждающими действиями по умолчанию:

gx = gravitysphericalharmonic( [-6378.1363e3 0 0] )

Рассчитайте гравитацию на 25000 м над южным полюсом Земли. В этом примере используется 70-градусная модель EGM96 с ошибочными действиями:

[gx, gy, gz] = gravitysphericalharmonic( [0 0 -6381.751e3], 'EGM96', 'Error' )

Рассчитайте гравитацию на расстоянии 15000 м над экватором и 11000 м над Северным полюсом. В этом примере используется модель GMM2B Марса 30-го порядка с предупреждающими действиями:

p  = [2412.648e3 -2412.648e3 0; 0 0 3397.2e3]
[gx, gy, gz] = gravitysphericalharmonic( p, 'GMM2B', 30, 'Warning' )

Рассчитайте гравитацию на расстоянии 15000 м над экватором и 11000 м над Северным полюсом. В этом примере используется пользовательская планетарная модель 60-й степени без действий:

p       = [2412.648e3 -2412.648e3 0; 0 0 3397e3]
[gx, gy, gz] = gravitysphericalharmonic( p, 'custom', 60, ...
{'GMM2BC80_SHA.txt' @astReadSHAFile}, 'None' )

Рассчитать гравитацию на 25000 метров над южным полюсом Земли с помощью 120-й модели Земли EIGEN-GL04C с предупреждающими действиями:

p  = [0 0 -6381.751e3]
[gx, gy, gz] = gravitysphericalharmonic( p, 'EIGENGL04C', ...
120, 'Warning' )   

Совет

  • При вводе большого массива PCPF и значения высокой степени может возникнуть ошибка нехватки памяти. Дополнительные сведения о предотвращении ошибок нехватки памяти в среде MATLAB см. в разделе Производительность и память.

  • При вводе большого массива PCPF можно получить ограничение максимального размера матрицы. Чтобы определить самую большую матрицу или массив, которые можно создать в среде MATLAB для вашей платформы, см. раздел Производительность и память.

Ссылки

[1] Готлиб, Р. Г., «Быстрая гравитация, гравитационные части, нормализованная гравитация, гравитационный градиентный крутящий момент и магнитное поле: деривация, код и данные», Технический отчет NASA Contractor Report 188243, NASA Lyndon B. Johnson Space Center, Хьюстон, Техас, февраль 1993.

[2] Вальядо, Д. А., Основы астродинамики и применения, Макгроу-Хилл, Нью-Йорк, 1997.

[3] «NIMA TR8350.2: Министерство обороны, Всемирная геодезическая система 1984, ее определение и связь с местными геодезическими системами».

[4] Коноплив, А. С., С. В. Асмар, Э. Карранза, В. Л. Сджоген, Д. Н. Юань., «Недавние гравитационные модели в результате лунной поисковой миссии, Икар», том 150, № 1, стр. 1-18, 2001.

[5] Lemoine, F. G., Д. Э. Смит, D.D. Роулендс, М. Т. Цубер, Г. А. Нейман и Д. С. Чинн, «Улучшенное решение гравитационного поля Марса (GMM-2B) от Mars Global Surveyor», Journal Of Geophysical Research, Vol. 106, No. E10, стр. 23359-23376, 25 октября 2001 года.

[6] Кеньон С., Дж. Фактор, Н. Павлис и С. Холмс, «К следующей гравитационной модели Земли», Общество геофизиков-исследователей 77-е ежегодное собрание, Сан-Антонио, Техас, 23-28 сентября 2007 года.

[7] Павлис, Н.К., С.А. Холмс, С.К. Кеньон и Дж. К. Фактор, «Гравитационная модель Земли до степени 2160: EGM2008,» представлены на Генеральной Ассамблее Европейского Союза Наук о Земле 2008 года, Вена, Австрия, 13-18 апреля 2008 года.

[8] Grueber, T. и А. Кель, «Проверка Области Силы тяжести EGM2008 с Выравниванием GPS и Океанографическими Исследованиями», представленный на Международном Симпозиуме IAG по Силе тяжести, Геоиду & наблюдению Земли 2008, Ханья, Греция, 23-27 июня 2008.

[9] Förste, C., Flechtner, F., Шмидт, R., Кёниг, R., Мейер, U., Stubenvoll, R., Rothacher, M., Barthelmes, F., Neumayer, H., Biancale, R., Bruinsma, S., Lemoine, J.M., Loyer, S., «Средняя Глобальная Модель Области Силы тяжести От Комбинации Спутниковых Данных о Поверхности Миссии и Altimetry/Gravmetry - EIGEN-GL04C», Геофизические Резюме Исследования, Издание 8, 03462, 2006.

[10] Хилл, К. А. (2007). Автономная навигация на орбитах точек либрации. Докторская диссертация, Колорадский университет, Боулдер.

[11] Коломбо, Оскар Л., «Численные методы гармонического анализа на сфере», Отчеты отдела геодезических наук, Доклад № 310, Университет штата Огайо, Колумбус, ок. о., март 1981.

[12] Коломбо, Оскар Л., «Глобальное картирование гравитации двумя спутниками», Геодезическая комиссия Недерлендса, том 7 № 3, Делфт, Недерлендс, 1984., Отчеты отдела геодезических наук, Отчет № 310, Университет штата Огайо, Колумб, о

[13] Джонс, Брэндон А. (2010). Эффективные модели для оценки и оценки гравитационного поля. Докторская диссертация, Колорадский университет, Боулдер.

Представлен в R2010a