User Tools

Site Tools


courses:computational_mathematics:prac2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
courses:computational_mathematics:prac2 [2021/06/14 19:32]
andrey.suchkov
courses:computational_mathematics:prac2 [2022/06/28 18:17]
andrey.suchkov ↷ Page name changed from courses:computational_mathematics:task2 to courses:computational_mathematics:prac2
Line 1: Line 1:
-====== Практическая работа №2: Изучение понятия обусловленности вычислительной задачи ​======+====== Практическая работа №2: Интерполирование ​функций ====== 
 ===== Цель работы ===== ===== Цель работы =====
-Исследование обусловленности задачи нахождения корня уравнения на примере линейной функции. +Научиться применять интерполирование ​функции для решения ​практических задачовладеть навыками применения интерполяционных ​формул ​Лагранжа заданной степени, многочленов ​Ньютона. Научиться оценивать погрешности интерполяционных ​формул и работать в программных пакетах ​с целью проверки полученных результатов.
- +
-===== Основные теоретические положения ===== +
-Под обусловленностью вычислительной задачи понимают чувствительность ее решения к малым ​погрешностям входных данных. +
- +
-Задачу называют хорошо обусловленной,​ если малым погрешностям ​входных данных отвечают малые погрешности решения, и плохо обусловленной, если возможны сильные изменения решения. Количественной мерой степени обусловленности вычислительной ​задачи является число обусловленности, которое можно интерпретировать ​как коэффициент возможного возрастания погрешностей в решении ​по отношению к вызвавшим их погрешностям входных данных. Пусть между абсолютными погрешностями входных данных $x$ и решения $y$ установлено неравенство:​ +
-\[ +
-  \Delta(y^*) \leqslant \nu_{\Delta}\Delta(x^*),​ +
-\] +
-где $ x^* $ и $ y^* $ -- приближённые входные данные и приближённое решение соответственно. Тогда величина $ \nu_{\Delta} $ называется ​абсолютным числом обусловленности. +
- +
-Если же установлено неравенство +
-\[ +
-  \delta(y^*) \leqslant \nu_{\delta}\delta(x^*), +
-\] +
-между относительными ошибками данных и решения, то величину $ \nu_{\delta} $ называют относительным числом обусловленности. Для плохо обусловленной задачи $ \nu \gg 1 $. Грубо говоря, если $ \nu = 10^N $, где $ \nu $ -- относительное число обусловленности, то порядок $ N $ показывает число верных цифр, которое может быть утеряно в результате ​по сравнению с числом верных ​цифр входных данных+
- +
-Ответ на вопрос о том, при каком значении $ \nu $ задачу следует признать ​плохо обусловленной,​ зависит,​ с одной стороны,​ от предъявляемых требований к точности решения и, с другой, -- от уровня обеспечиваемой точности исходных ​данных. Например, если требуется найти решение с точностью 0.1%, а входная информация задается с точностью 0.02%, то уже значение $ \nu = 10 $ сигнализирует о плохой обусловленности. Однако, ​при тех же требованиях к точности результата,​ гарантия, ​что исходные данные задаются с точностью не ниже 0.0001%, означает,​ что при $ \nu = 10^3 $ задача ​хорошо обусловлена. +
- +
-Если рассматривать ​задачу вычисления корня уравнения $ y = f(x) $, то роль числа обусловленности будет играть величина +
-\[ +
-  \nu_{\Delta} = \frac1{|f'​(\xi)|},​ +
-\] +
-где $ \xi $ -- корень уравнения.+
  
 ===== Постановка задачи ===== ===== Постановка задачи =====
-Используя программу //​task2.exe//, ​исследовать обусловленность задачи ​нахождения корня ​уравнения $ f(x= 0 $ для ​линейной ​функции $ f(x) = c(- d) $. Значения функции ​f(x) $ следует вычислить приближенно ​с точностью ''​delta'',​ варьируемой в пределах 0.1÷0.000001.+Построить ​интерполяционный многочлен по 2, 3, 4, 5 и 6 узлам (равноотстоящим и чебышёвским) для функции $ f(x) = \cfrac A{x^2 + px + q} $ на промежутке [a, b] по равноотстоящим и по чебышёвским узлам. Найти фактическую погрешность и сравнить её с теоретической оценкой.
  
 ===== Порядок выполнения работы ===== ===== Порядок выполнения работы =====
-  - Графически или аналитически отделить корень уравнения $ f(x) = 0 $, т. найти отрезки $ [ab] $, на которых ​функция удовлетворяет условиям ​применимости ​метода ​бисекции. +  - Реализовать функцию ''​f()'' ​для вычисления значений в функции ​$ f(x) $. 
-  - Запустить программу //​task2.exe//​. Ввести значения, необходимые для запуска программы+  - Реализовать функцию ''​df()''​вычисляющая $ n $-ую производную ​функции $ f(x) $. Данную функцию можно реализовать с помощью ''​switch'',​ предварительно ​посчитав производные в символьном виде, например, в Wolfram
-  - Провести вычисления ​по программе, варьируя значения параметров ''​c''​ (тангенс угла наклона ​прямой), ​''​epsilon''​ (точность ​вычисления корня) и ''​delta''​ (точность задания исходных данных). +  - Реализовать функцию, вычисляющую интерполяционный ​многочлен по методу Лагранжа ​''​lagrange()''​ (**для ​нечётных вариантов**) или Ньютона ''​newti()''​ (**для ​чётных вариантов**). 
-  - Проанализировать полученные результаты ​и обосновать выбор точности ​''​epsilon''​ вычисления корня. Сопоставить ​полученные теоретические результаты с экспериментальными данными.+  - Построить график полученного ​интерполяционного многочлена $ n $-го порядка по равномерной сетке и функции $ f(x) $ в одном окнеОтметить ​на графике узлы интерполяции. Выписать полученный интерполяционный многочлен с точностью коэффициентов до 7 знаков после запятой. 
 +  - Аналогично выполнить построение для ​чебышёвской сетки. 
 +  - Заполнить таблицу для ​каждой ​сетки и сделать выводы:
  
 +^  Значение $ n $                      |  1  |  2  |  3  |  4  |  5  |
 +^  Значение $ M_{n+1} $                |     ​| ​    ​| ​    ​| ​    ​| ​    |
 +^  Значение $ \max|\omega_{n+1}(x)| $  |     ​| ​    ​| ​    ​| ​    ​| ​    |
 +^  Значение $ (n + 1)! $               ​| ​    ​| ​    ​| ​    ​| ​    ​| ​    |
 +^  Значение $ Q_n $                    |     ​| ​    ​| ​    ​| ​    ​| ​    |
 +^  Значение $ \max|R_n(x)| $           ​| ​    ​| ​    ​| ​    ​| ​    ​| ​    |
 +
 +===== Варианты заданий =====
 <note important>​ <note important>​
-Значение параметра $ d $ выбирается каждым студентом самостоятельно и согласовывается ​с преподавателем.+Выполнение ​работ осуществляется ​по индивидуальным вариантам заданий (коэффициентам функции). Номер варианта для каждого ​студента определяется преподавателем.
 </​note>​ </​note>​
- +[[.task2:​task2-vars]]
-===== Содержание отчёта ===== +
-  * Цель работы. +
-  * Краткое изложение основных теоретических понятий. +
-  * Постановка задачи с кратким описанием порядка выполнения работы. +
-  * Таблицы с вычислениями при различных вариациях параметров. +
-  * Краткие выводы по полученным результатам. +
-  * Общий вывод по проделанной работе. +
-  * Код программы.+