Интерполяция широты при заданной долготе
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' | Возвращает интерполированные точки, лежащие на линиях rhumb между входными данными |
'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, которая изменяет значения широты и долготы на противоположные.