Опубликован: 18.05.2011 | Доступ: свободный | Студентов: 965 / 104 | Оценка: 4.40 / 4.20 | Длительность: 12:30:00
Лекция 6:

Принципы организации вычислительных процедур

< Лекция 5 || Лекция 6: 12 || Лекция 7 >
Аннотация: Рассматриваются принципы организации вычислительных процедур. На примерах показаны принципы построения аппроксимирующих и итерационных процедур вычислительной математики. Рассмотрены вопросы корректности математических постановок.

Цель лекции: Показать важность правильности выбора вычислительных процедур. Продемонстрировать итерационные вычислительные процедуры на простом примере программы на C#.

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

  • Табулирование функций и интерполяция
  • Нахождения корней систем уравнений
  • Решение задач линейной алгебры
  • Численное интегрирование и дифференцирование
  • Решение обыкновенных дифференциальных уравнений (задачи Коши и краевых задач)
  • Решение уравнений в частных производных
  • Решение интегральных уравнений
  • Задачи линейного и нелинейного программирования
  • Обработка результатов экспериментов и задачи математической статистики
  • Решение задач дискретной математики

Разумеется, это не полный список тем вычислительной математики, поскольку практически в любой области математики можно найти "работу" для численных методов. Среди собственных тем вычислительной математики можно выделить следующие:

  • Сходимость численных методов
  • Оценка погрешности и сложности вычислительных процедур
  • Программирование численных методов
  • Методика проведения вычислительных экспериментов

Рассмотрим принципы организации вычислительных процедур на примере решения операторного уравнения. Пусть X и Y метрические пространства с метриками \rho_X и \rho_Y соответственно, и пусть задано однозначное отображение

A:X\to Y.
Рассматривается уравнение
A[x]=y, ( 5.1)
где y\in Y.

Решением уравнения 5.1 называется элемент x\in X, удовлетворяющий уравнению 5.1. Мы будем предполагать, что существует хотя бы одно решение уравнения 5.1, которое мы обозначим через x^*. Задачей вычислительной математики является конструктивное построение такого отображения

T:\Bbb{N}\to X,
что последовательность
x_n=T[n]
удовлетворяет следующему условию:
\rho_X(x_n,x^*)\to0,\quad n\to\infty.
Для оценки эффективности вычислительной процедуры введем две величины: оценка погрешности приближенного решения
\delta(x)=\rho_X(x,x^*),
и невязка приближенного решения:
\varepsilon(x)=\rho_Y(A[x],y).
Для вычисления величины \delta(x) необходимо знать собственно решение x^*, что возможно лишь в тестовых задачах. С другой стороны при вычислении невязки решение не участвует, поэтому величина \varepsilon(x) является конструктивно вычисляемой.

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

\delta(x_n)\to0.
Если же для нашей последовательности выполнено только условие
\varepsilon(x_n)\to0,
то это еще не означает, что последовательность x_n сходится к решению (и вообще, что сходится). Рассмотрим простой пример. Пусть X=Y=\Bbb{R} - числовая ось. Функция A задана по формуле:
A[x]=\frac{x^2}{1+x^4}.
Рассмотрим уравнение
\frac{x^2}{1+x^4}=0.
Это уравнение имеет единственное решение x^*=0. Если мы используем вычислительную процедуру
x_n=T[n]=\frac{1}{n},
то легко видеть, что невязка \varepsilon(x_n) имеет вид
\varepsilon(x_n)=\frac{n^2}{1+n^4}\to0,\quad n\to\infty.
Однако последовательность x_n никак не сходится к решению. Заметим, что причиной такой ситуации является то, что пространство X, на котором задана функция A, не является компактным.

Однако есть следующая зависимость между функциями \delta и \varepsilon. Если предположить, что отображение A является непрерывным отображением, то для любой последовательности x_n из условия

\delta(x_n)\to0.
следует
\varepsilon(x_n)\to0.
Обратное, как мы только что видели, не верно.

< Лекция 5 || Лекция 6: 12 || Лекция 7 >