Интерполируйте широту в данной долготе
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
, который инвертирует значения широты и долготы.