Интерполяция широты при заданной долготе
newlat = intrplat(long,lat,newlong)
newlat = intrplat(long,lat,newlong,method)
newlat = intrplat(long,lat,newlong,method,units)
newlat = intrplat(long,lat,newlong)
возвращает интерполированную широту, newlat
, соответствующий долготе newlong
. long
должен быть монотонным вектором значений долготы. Фактические значения должны быть монотонными; то есть вектор долготы [350 357 3 10]
не допускается, даже если географическое направление не изменено (используйте [350 357 363 370]
вместо этого). lat
является вектором значений широты в паре с каждой записью в long
.
newlat = intrplat(long,lat,newlong,method)
задает method
используемой интерполяции, перечисленной в таблице ниже.
Метод | Описание |
---|---|
'linear' | Линейная, или Декартова, интерполяция (по умолчанию) |
'pchip' | Кусочно-кубическая эрмитовая интерполяция |
'rh' | Возвращает интерполированные точки, которые лежат на ветвистых линиях между входными данными |
'gc' | Возвращает интерполированные точки, которые лежат на больших кругах между входными данными |
newlat = intrplat(long,lat,newlong,method,units)
определяет используемые модули, где units
- любой допустимый строковый скаляр модулей угла или вектор символов. Значение по умолчанию является 'degrees'
.
Функция intrplat
является географической аналогией данных стандарта MATLAB® функция interp1
.
Сравните результаты различных методов:
lats = [25 45]; longs = [30 60]; newlat = intrplat(longs,lats,45,'linear') newlat = 35 newlat = intrplat(longs,lats,45,'rh') newlat = 35.6213 newlat = intrplat(longs,lats,45,'gc') newlat = 37.1991
Существуют отдельные функции для интерполяции широт и долгот, поскольку, хотя случаи идентичны при использовании тех методов, поддерживаемых interp1
, когда широты и долготы обрабатываются как сферические углы, они (использование 'rh'
или 'gc'
), результаты разные. Сравните пример выше с примером ниже intrplon
, который обращает значения широты и долготы назад.