atmositu
Использование эталонных атмосфер МСЭ.
| Библиотека |
|
Синтаксис
Вызов функции
-
T,P,wvden = atmositu(h)— вычисляет стандартную атмосферную модель Международного союза электросвязи (МСЭ), известную как средняя годовая глобальная эталонная атмосфера (Mean Annual Global Reference Atmosphere, MAGRA), и возвращает температуру атмосферыT, полное атмосферное давлениеPи абсолютную влажностьwvden. MAGRA аппроксимирует стандартную атмосферу США 1976 года с незначительной относительной погрешностью.
-
T,P,wvden = atmositu(h;Name=Value)— возвращает температуру атмосферы, полное давление и абсолютную влажность с дополнительными параметрами, заданными одним или несколькими аргументами типа «имя-значение».
Аргументы
Входные аргументы
#
h —
геометрические высоты
вектор
Details
Геометрические высоты, соответствующие высоте над средним уровнем моря в метрах, заданные как вектор-строка. Функция atmositu возвращает NaN для любого входного значения вне интервала [0, 100000].
| Типы данных |
|
Входные аргументы «имя-значение»
Укажите необязательные пары аргументов в формате Name = Value, где Name — имя аргумента, а Value — соответствующее значение. Аргументы типа «имя-значение» должны располагаться после других аргументов, но порядок пар не имеет значения.
Пример: atmositu(h; LatitudeModel = "High", Season = "Winter") задает эталонную модель для широт более 45° в зимний период.
#
WaterVaporDensity —
стандартная абсолютная влажность на уровне земли
7.5 (по умолчанию) | скаляр
Details
Стандартная абсолютная влажность на уровне земли в г/м3, заданная как скаляр.
Чтобы использовать этот аргумент, установите для аргумента LatitudeModel значение "Standard".
| Типы данных |
|
#
ScaleHeight —
шкала высоты
2.0e3 (по умолчанию) | скаляр
Details
Шкала высоты в метрах, заданная как скаляр.
Чтобы использовать этот аргумент, установите для аргумента LatitudeModel значение "Standard". В условиях сухой атмосферы установите для этого аргумента значение 6.0e3 м.
| Типы данных |
|
#
LatitudeModel —
эталонная модель широты
"Standard" (по умолчанию) | "Low" | "Mid" | "High"
Details
Эталонная модель широты, заданная как одно из следующих значений:
-
"Standard"— модель представляет собой стандартную глобальную атмосферу (MAGRA), характеризующуюся среднегодовыми значениями температуры и давления по всему земному шару. -
"Low"— модель предназначена для низких широт менее22градусов, где сезонные колебания незначительны. -
"Mid"— модель предназначена для средних широт от22до45градусов с сезонными профилями для значений"Summer"и"Winter", задаваемых с помощью аргументаSeason. -
"High"— модель предназначена для высоких широт более45градусов с сезонными профилями для значений"Summer"и"Winter", задаваемых с помощью аргументаSeason.
#
Season —
сезонный профиль
"Summer" (по умолчанию) | "Winter"
Details
Сезонный профиль для моделей широты "Mid" и "High", заданный как "Summer" или "Winter". Другие модели широты игнорируют этот аргумент.
#
out —
тип выходных данных
:data (по умолчанию) | :plot
Details
Тип выходных данных:
-
:data— функция возвращает данные; -
:plot— функция возвращает график.
Выходные аргументы
#
T —
температура
вектор
Details
Температура атмосферы в кельвинах, возвращаемая в виде вектора-строки длиной .
|
#
P —
полное атмосферное давление
вектор
Details
Полное или барометрическое атмосферное давление в гПа, возвращаемое в виде вектора-строки длиной .
#
wvden —
абсолютная влажность
вектор
Details
Абсолютная влажность в г/м3, возвращаемая в виде вектора-строки длиной .
Примеры
Определение температуры, давления и абсолютной влажности
Details
Вычислим температуру, давление и абсолютную влажность на высоте 5 км, используя модель высоких широт в летний период.
import EngeePhased.Functions: atmositu
h = 5e3
T, P, wvden = atmositu(h, LatitudeModel = "High")
println("T = ", T, "\nP = ", P, "\nwvden = ", wvden)
T = 259.42990000000003
P = 540.3008
wvden = 1.0095102924625434
Расчет и визуализация атмосферных профилей
Details
Рассчитаем температуру, давление и абсолютную влажность в атмосфере на средних широтах в зимний период. Зададим диапазон высот от 2 до 88 км.
import EngeePhased.Functions: atmositu
h = (2:88) * 1e3
T, P, wvden = atmositu(h, LatitudeModel = "Mid", Season = "Winter")
Выведем первые 6 значений температуры, давления и абсолютной влажности.
[T[1:6] P[1:6] wvden[1:6]]
6×3 Matrix{Float64}:
264.777 789.595 1.76014
260.276 689.453 1.13204
255.423 598.972 0.682941
250.218 518.153 0.387506
244.662 446.995 0.207357
238.753 385.499 0.104924
Построим графики профилей температуры, давления и абсолютной влажности для этой модели.
atmositu(h, LatitudeModel = "Mid", Season = "Winter"; out = :plot)