МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


Как цель узнает о ваших желаниях прежде, чем вы начнете действовать. Как компании прогнозируют привычки и манипулируют ими


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


Как победить свой возраст? Восемь уникальных способов, которые помогут достичь долголетия


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


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

Интерполяционный многочлен Лагранжа





Лабораторная работа №1

Интерполирование функций в MathCAD

Цель работы:изучить некоторые возможности аппроксимации опытных данных, которые предоставляются программной средой MathCAD; получить представление об интерполировании функций как классическом методе аппроксимации; осуществить сравнительный анализ различных способов интерполяции и научиться оценивать погрешность многочленной интерполяции.

Интерполяция

Для построения интерполяции-экстраполяции в MathCAD имеются несколько встроенных функций, позволяющих "соединить" точки выборки данных кривой разной степени гладкости. По определению, интерполяция означает построение функции , аппроксимирующей зависимость в промежуточных точках отрезка . Поэтому интерполяция есть один из методов аппроксимации. В точках значения интерполяционной функции должны совпадать с исходными данными, т. е. .

Примечание. Будем использовать вместо обозначения другое имя ее аргумента , чтобы не путать вектор данных и скалярную переменную .

Линейная интерполяция

Самый простой вид интерполяции - линейная, которая представляет искомую зависимость в виде ломаной линии. Интерполирующая функция состоит из отрезков прямых, соединяющих точки (рис. 1).

Для построения линейной интерполяции служит встроенная функция linterp.

- linterp ( , , ) - функция, аппроксимирующая данные векторов и кусочно-линейной зависимостью;

- вектор действительных данных аргумента;

- вектор действительных данных значений того же размера;

- значение аргумента, при котором вычисляется интерполирующая функция.

Элементы вектора должны быть определены в порядке возрастания, т. е. .

Пример 1. Линейная интерполяция (рис. 1)

 

Рис. 1. Линейная интерполяция (пример 1)

Как видно из примера 1, чтобы осуществить линейную интерполяцию, надо выполнить следующие действия:

1) Введите векторы данных и (первые две строки примера 1).

2) Определите функцию linterp ( , , ).

3) Вычислите значения этой функции в требуемых точках, например linterp( , ,2.4)=3.52, или linterp(х, ,6) =5.9, или постройте ее график, как показано на рис. 1.

Примечание. Обратите внимание, что функция на графике имеет аргумент , а не . Это означает, что функция вычисляется не только при значениях аргумента (т.е. в семи точках), а при гораздо большем числе аргументов в интервале (0,6), что автоматически обеспечивает MathCAD. Просто в данном случае эти различия незаметны, т. к. при обычном построении графика функции от векторного аргумента MathCAD, по умолчанию, соединяет точки графика прямыми линиями (т. е. скрытым образом осуществляет их линейную интерполяцию).

Сплайн-интерполяция

Сплайн — это функция, которая на каждом частичном отрезке интерполяции является алгебраическим многочленом, а на всем заданном отрезке непрерывна вместе с несколькими своими произ­водными.

В большинстве практических приложений желательно соединить экспериментальные точки не ломаной линией, а гладкой кривой. Лучше всего для этих целей подходит интерполяция кубическими сплайнами, т. е. отрезками кубических парабол. Смысл кубической сплайн-интерполяции заключается в том, что в промежутках между точками осуществляется аппроксимация в виде зависимости . Коэффициенты a, b, c, d рассчитываются независимо для каждого промежутка, исходя из значений в соседних точках. Этот процесс скрыт от пользователя, поскольку смысл задачи интерполяции состоит в выдаче значения в любой точке t (рис.2).



- interp(s, , , ) - функция, аппроксимирующая данные векторов и кубическими сплайнами;

s - вектор вторых производных, созданный одной из сопутствующих функций

cspline, pspline или lspline;

- вектор действительных данных аргумента, элементы которого расположены в

порядке возрастания;

- вектор действительных данных значений того же размера;

- значение аргумента, при котором вычисляется интерполирующая функция.

Пример 2. Кубическая сплайн-интерполяция (рис.2)

Рис.2. Кубическая сплайн-интерполяция (пример 2)

Рис.3. Примеры сплайн-интерполяций

Сплайн-интерполяция в MathCAD реализована чуть сложнее линейной. Перед применением функции interp необходимо предварительно определить первый из ее аргументов - векторную переменную s. Делается это при помощи одной из трех встроенных функций тех же аргументов .

- lspline( , ) - вектор значений коэффициентов линейного сплайна;

- pspline( , ) -вектор значений коэффициентов квадратичного сплайна;

- cspline( , ) – вектор значений коэффициентов кубического сплайна;

- , - векторы данных.

Интерполяционный многочлен Лагранжа

Пусть известные значения некоторой функции образуют следующую таблицу:

При этом требуется получить значение функции для такого значения аргумента , которое входит в отрезок , но не совпа­дает ни с одним из значений , .

Очевидный прием решения этой задачи — вычислить значение f(x), воспользовавшись аналитическим выражением функции f. Этот прием, однако, можно применить лишь в случае, когда ана­литическое выражение f пригодно для вычислений. Более того, часто аналитическое выражение функции вовсе неизвестно. В этих случаях применяется особый прием — построение по ис­ходной информации (табл.) приближающей функции F, которая в некотором смысле близка к функции и аналитическим выра­жением, которой можно воспользоваться для вычислений, считая приближенно, что

.

Классический подход к решению задачи построения прибли­жающей функции основывается на требовании строгого совпадения значений f(x) и F(x) в точках , , т. е.

, , …, .

В этом случае нахождение приближенной функции называют интерполяцией (или интерполированием), а точки - уз­лами интерполяции.

Интерполяционным многочленом Лагранжа называется многочлен, представленный в виде

,

где - вспомогательный многочлен.

Интерполяционным многочленом Лагранжа можно записать иначе:

.

По таблице исходной функции формула позволяет весьма просто сос­тавить «внешний вид» многочлена.

Пример 3.Построить интерполяционный многочлен Лагранжа для функции, заданной таблицей:

 

 

Решение:

Из таблицы следует, что (т.е. степень многочлена будет не выше, чем вторая);

,

,

+ + ,

, , ;

По формуле получим:

.

Формула Лагранжа для равноотстоящих узлов принимает вид:

,

где , , ,

Пример 4. Составить интерполяционный многочлен Лаг­ранжа для функции, заданной своими значениями наравноот­стоящих узлах (п = 2, h = 1):

 

-2

 

Решение:

Используя формулу запишем:

.

Узловые табличные значения функции (4; —2; 6) получаются по этой формуле соответственно при t = 0; 1; 2.

Оценка погрешности формулы Лагранжа находится по формуле:

,

где .

Пример 5.Для заданной функции на отрезке :

1. Построить интерполяционный многочлен Лагранжа при для равноотстающих узлов. Построить графики получившихся полиномов.

2. Используя MathCAD, выполнить интерполяцию кубическим сплайном. Оценить погрешность.
3. Для аппроксимации , использовать и соответственно. Оценить погрешность (построить графики погрешности). Оценить зависимость погрешности интерполяции от порядка многочлена.

Решение:

1.

Для составления полинома Лагранжа можно воспользоваться средствами MathCAD.

Чтобы упростить выражение, полученное по формуле, необходимо воспользоваться оператором упрощения в MathCAD.

Упрощение выражений - наиболее часто применяемая операция. Символьный процессор MathCAD стремится так преобразовать выражение, чтобы оно приобрело более простую форму. При этом используются различные арифметические формулы, приведение подобных слагаемых, тригонометрические тождества, пересчет обратных функций и др. Чтобы упростить выражение с помощью меню:

1) Введите выражение.

2) Выделите выражение целиком или его часть, которую нужно упростить.

3) Выберите команду Symbolics / Simplify (Символика / Упростить).

 

В среде MathCAD получили:

 

В среде MathCAD получили:

2)

 

3)

 

 





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.