русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Интерполяция сплайнами


Дата добавления: 2014-11-28; просмотров: 2548; Нарушение авторских прав


 

Под интерполяцией обычно подразумевают вычисление значений функции f(x) в промежутках между узловыми точками (линия функции получаемого интерполянта обязательно проходит через узловые точки).

Простейшим способом интерполяции является аппроксимация данных сплайном нулевого порядка (на каждом участке степень полинома равна нулю), при котором значение функции в каждой промежуточной точке принимается равным ближайшему табличному значению. В результате данные приближаются ступенчатой функцией (интерполяция по соседним точкам). Линейная интерполяция основана на соединении соседних точек отрезками прямых (сплайн первого порядка). Для получения более гладкой функции применяют интерполяцию кубическими сплайнами.

Все эти способы реализованы в функциях: interp1 (одномерная), interp2 (двумерная), interp3 (трехмерная), interpn (многомерная).

 

yi = interp1(x,Y,xi)

yi = interp1(x,Y,xi,method)

 

yi = interp1(x,Y,xi) – строит кусочно-линейную интерполирующую кривую для одномерного массива Y, заданного на сетке х; выходной массив yi может быть определен на более мелкой сетке xi. Если Y – двумерный массив, то интерполирующая кривая строится для каждого столбца, тогда результирующий массив Yi будет иметь размер length(xi)×size(Y,2). Для значения xi вне области задания x присваивается значение NaN.

yi = interp1(x,Y,xi,method) – позволяет задать метод интерполяции.

В качестве метода может быть использованы:

 

'nearest' – ступенчатая интерполяция (по соседним элементам);

'linear' – линейная интерполяция (принимается по умолчанию, если способ не задан);

'spline' – кубические сплайны;

'pchip' – интерполяция кубическими эрмитовыми сплайнами (вторая производная сплайна (в отличии от spline) может быть разрывна, т.е. сплайн имеет дефект два) .



Рассмотрим применение приближения данных с использованием функции interp1(x,Y,xi,method) на примере тех же данных.

 

» x=[0.1:0.2:1.5];

» y=[5.332 4.488 2.432 1.803 2.223 2.467 4.127 5.091];

» xi=[0.1:0.01:1.5];

» % вычисление ступенчатой функции в промежуточных точках

» ynear = interp1(x,y,xi,'nearest');

» % вычисление кусочно-линейной функции в промежуточных точках

» yline = interp1(x,y,xi,'linear'); % можно не указывать 'linear'

» % вычисление кубического сплайна в промежуточных точках

» yspline = interp1(x,y,xi,'spline');

» hold on;

» % построение графиков интерполянтов

» plot(x, y, 'ko',xi, ynear, 'k', xi, yline, 'k:', xi, yspline, 'k-.');

» legend('табличная функция', 'по соседним элементам (nearest)', ...

'линейная (linear)', 'кубические сплайны (spline)',4);

» title('Различные способы интерполяции функций');

 



<== предыдущая лекция | следующая лекция ==>
Приближение данных полиномом | Аппроксимация данных при помощи регрессии


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.