
Лекции / L1
.docЛитература
Н.Н. Калиткин «Численные методы» (1978)
Б.П. Демидович, И.А. Марон «Основы вычислительной математики» (1970)
У.Г. Пирумов «Численные методы» (2003)
Л.И. Турчак, П.В. Плотников « Основы численных методов» (2005)
Р.Н. Фурунжиев «Применение математических
Ф.М. Бабушкин методов и ЭВМ»
В.В. Варавко (практикум) (1988)_
(система СТАРТ диалоговая вычислит.)
Л.Е. Захарова «Метод указания к лабораторным работам по курсу «Вычислительная математика» Mathcad» (2003)
Вержбицкий В.М. «Основы численных методов. Учебник для вузов» М. Высш. Шк.,2002_840с.
Вычислительная математика
Изучает методы построения и исследования численных методов решения математических задач, которые моделируют различные процессы.
Сложные вычислительные задачи, возникающие при исследовании многих научно-технических проблем, можно разбить на ряд элементарных – таких как вычисление интеграла, решение дифференциального уравнения и т.п. Многие элементарные задачи являются несложными, хорошо изучены; существуют многочисленные стандартные программы и объективно ориентированные пакеты прикладных программ. Однако, научным и инженерно-техническим работникам важно понимать сущность основных численных методов и алгоритмов, областей их применении, поскольку зачастую интерпретация результатов расчетов нетривиальна и требует знания особенностей применяемых методов.
Из истории
-
3-4 тыс. лет назад Связан с ведением конторских книг, вычислением площадей и объемов, расчетами простейших механизмов, то есть – с несложными задачами арифметики, алгебры и геометрии. Вычислительные средства – пальцы, потом – счеты. Исходные данные содержали мало цифр, следовательно, выкладки выполнялись точно, без округлений.
-
2. Начался с Ньютона. Решались задачи астрономии, геодезии и расчета механических конструкций, сводящиеся либо к обыкновенным дифференциальным уравнениям, либо к алгебраическим системам с большим числом неизвестных. Вычисления выполнялись с округлением; нередко требовалась большая точность, так что приходилось сохранять до 8 значащих цифр. Вычислительные средства – таблицы элементарных функций, арифмометр, логарифмическая линейка.
-
3. 40е годы XX века. Военные задачи – напр., наводка зенитных орудий на быстро движущийся самолет – требовали недоступных человеку скоростей, привели к разработке электронных систем.
-
Сначала использовались численные методы, разработанные в «доэлектронный» период. Но многие старые метод оказались неподходящими для автоматизированных расчетов. Появились методы, ориентированные прямо на ЭВМ (например, метод Монте-Карло)
Численные методы являются одним из мощных математических средств решения задачи. Простейшие численные методы мы используем повсюду, например, извлекая квадратный корень с помощью ручки на листе бумаги. Есть задачи, где без достаточно сложных численных методов не удалось бы получить ответа. Классический пример – открытие планеты Нептун по аномалиям движения планеты Уран.
В современной физике таких задач много. Более того, часто требуется выполнить огромное число действий за короткое время, иначе ответ будет не нужен. Например, суточный прогноз погоды должен быть вычислен за несколько часов; коррекцию траектории ракеты надо рассчитать за несколько минут (а для расчета орбиты планеты Нептун Леверье потребовалось полгода); режим работы прокатного стана должен исправляться за секунды. Это немыслимо без мощной вычислительной техники. Но! Основная роль принадлежит человеку. Разобьем процесс решения задачи на следующие этапы:
1. Постановка задачи.
Этот этап заключается в содержательной (физической) постановке задачи и определении конечных целей решения.
2. Построение математической модели (математическая формулировка задачи).
Модель должна правильно (адекватно) описывать основные законы физического процесса. Построение математической модели или выбор из существующих требует глубокого понимания проблемы и знания соответствующих разделов математики.
3. Разработка численного метода.
Компьютер может выполнять лишь простейшие операции, он «не понимает» постановку задачи даже в математической формулировке. Для решения задачи необходимо найти численный метод, позволяющий свести задачу к некоторому вычислительному алгоритму. Разработкой численных методов занимаются специалисты в области вычислительной математики. Специалисту-прикладнику для решения задачи, как правило, необходимо из имеющегося арсенала методов выбрать тот, который наиболее приемлем в данном конкретном случае.
4. Разработка алгоритма.
Процесс решения задачи (вычислительный процесс) описывается в виде последовательности элементарных арифметических логических операций, приводящей к конечному результату. Эта последовательность называется алгоритмом решения задачи.
Алгоритм можно наглядно изобразить в виде блок-схемы, структурограммы и т.п.
5. Программирование.
Алгоритм решения задачи записывается на понятном машине языке в виде точно определенной последовательности операций – программный код.
6. Отладка программы.
Составленная программа содержит разного рода ошибки, неточности, описки.
! «В любой сколь угодно малой программе существует, по меньшей мере, одна ошибка».
!«Принцип некомпетентности Питера: и ЭВМ многократно увеличивает некомпетентность вычислителя».
Отладка программы включает контроль программы, диагностику ошибок (поиск и определение их содержания), их исправление. Программа тестируется (испытывается на решении контрольных задач) для получения уверенности в достоверности результатов.
7. Проведение расчетов.
На этом этапе готовятся исходные данные для расчетов, и проводится счет по отлаженной программе. При этом для уменьшения ручного труда по обработке результатов желательно использовать удобные формы выдачи результатов, особенно их графическое представление (визуализацию).
8. Анализ результатов.
Результаты расчетов анализируются, и оформляется научно-техническая документация.
Важный момент в процессе решения задачи – экономичность выбранного способа решения задачи, численного метода, модели компьютера.
----
Основное требование, предъявляемое к математической модели – адекватность рассматриваемому явлению. Она должна достаточно точно (в рамках допустимых погрешностей) отражать характерные черты явления. Вместе с тем она должна обладать сравнительной простотой и доступностью исследования. При построении математических моделей получают некоторые математические соотношения (как правило, уравнения).
Пример: Пусть в начальной момент времени t=0 тело, находящееся на высоте h0, начинает двигаться вертикально вниз с начальной скоростью V0. Требуется найти закон движения тела, т.е. построить математическую модель, которая бы позволила математически описать данную задачу и определить параметры движения в любой момент времени. Прежде чем строить указанную модель, нужно принять некоторые допущения, если они не заданы. Предположим, что данное тело обладает средней плотностью, значительно превышающей плотность воздуха и рассматривать свободное падение тела с учетом ускорения g. Соответствующие соотношения для высоты h и скорости V в любой момент времени t известны из школьного курса физики.
h=h0-v0t- (gt2)*1/2, v=v0+gt (1.1)
Эти формулы являются искомой математической моделью свободного падения тела. Область применения данной модели ограничена случаями, в которых можно пренебречь сопротивлением воздуха. Во многих задачах о движении тел в атмосфере планеты модель (1.1) не может быть использована, поскольку при ее применении мы получили бы неверный результат.
К таким примерам относятся:
-
Движение капли воды;
-
Вход в атмосферу тел малой плотности;
-
Спуск на парашюте и др.
В этих случаях при построении математической модели необходимо учитывать сопротивление воздуха. Если обозначить: F(t) – силу сопротивления действующую на тело массой m, то его движение можно описать с помощью уравнений:
m*dV/dt=mg-F(t), dh/dt= -V (1.2)
Необходимо добавить начальные условия при t=0:
V=V0, h=h0, (1.3)
Т.о. соотношения (1.2) и (1.3) являются математической моделью для задачи движения тел в атмосфере.
Заметим, что модель (1.1) легко получается из (1.2) и (1.3) при (F=0) (лектор задает этот вопрос аудитории)
Известно большое число математических моделей различных процессов или явлений. Например, в механике: модель абсолютно твердого тела позволила получить уравнения движения тел в динамике полета. Модель идеального газа привела к системе уравнений Эйлера, описывающего невязкие потоки газов.
В гидродинамике широко известна модель на основе уравнений Навье-Стокса, в кинетической теории газов – уравнения Больцмана. В механике деформируемого твердого тела известны математические модели, описывающие различные среды. Имеются математические модели и для описания задач экономики, социологии, медицины, лингвистики. Адекватность и сравнительная простота модели не исчерпывают предъявляемых к ней требований.
Необходимо правильно оценивать область применимости математической модели.
Например, модель свободно падающего тела, в которой пренебрегают сопротивлением воздуха, весьма эффективна для твердых тел с большой средней плотностью и формой поверхности, близкой к сферической. А для других случаев – движение капли жидкости, парашютного устройства и т.п. – необходимо более сложные математические модели, учитывающие сопротивление воздуха и другие факторы.
Таким образом, с помощью математической моделирования решение научно-технической задачи сводится к решению математической задачи. В свою очередь, для решения математических задач используют следующие основные группы методов: аналитические, графические, численные. При использовании аналитических методов решение задачи удается выразить с помощью формул. В частности, если математическая задача состоит в решении простейших алгебраических или трансцендентных уравнений, дифференциальных уравнений и т.п., то использование известных из курса математики приемов сразу приводит к цели. К сожалению, на практике это бывает редко.
Графические методы позволяют в ряде случаев оценить порядок искомой величины. Основная идея графических методов - решение находится путем геометрических построений. Например, для нахождения корней уравнения f(x)=0 строится график функции y=f(x), точки пересечения которого с осью абсцисс и будут искомыми корнями.
Графические методы могут применяться для получения начального приближения к решению, которое затем уточняется с помощью численных методов.
Основным инструментом для решения сложных математических задач в настоящее время являются численные методы, позволяющие свести решение задачи к выполнению конечного числа арифметических действий над числами; при этом результаты получаются в виде числовых значений.
Важные отличия численных методов от аналитических:
-
Численные методы позволяют получить лишь приближенное решение задачи.
-
Численные методы обычно позволяют получить лишь решение задачи с конкретными значениями параметров и исходных данных.
Рассмотрим на примере. По формулам (1.1) (по аналитическому решению) можно проанализировать, как изменится закон движения при изменении параметра g и начальных значений v0, h0.
Если в модели (1.2), (1.3) выражение для F(t) имеет простой вид ( например F=const), то можно получить аналитическое решение аналогичное (1.1). Это решение тоже легко исследовать на предмет зависимости от изменения параметров и начальных условий.
Если же выражение для F(t) достаточно сложно, то задачи (1.2), (1.3) можно решить только численно. При этом вместо общей формулы решения в результате расчета будут получены значения v и h для некоторого набора моментов времени t при конкретных g, m, v0, h0.
Для получения решения при других значениях параметров и других начальных условиях необходимо провести новый расчет. Для анализа зависимости решения от параметров и начальных условий необходима большая серия расчетов.
Многие численные методы разработаны давно, однако, при вычислениях вручную они могли использоваться лишь для решения не слишком трудоемких задач. С появлением компьютеров начался период бурного развития численных методов и их внедрения в практику. Только машине под силу выполнить, за короткое время объем вычислений в миллиарды, триллионы и более операций, необходимых для решения многих современных задач.
Численные методы наряду с возможностью получения результата за приемлемое время должны обладать еще одним важным качеством – не вносить в вычислительный процесс значительных погрешностей.
Отклонение истинного решения от приближенного называется погрешностью. Существует 4 источника погрешностей, полученных в результате численного решения:
Неустранимая погрешность:
-
Математическая и физическая модели;
-
Исходные данные;
Устранимая погрешность:
-
Приближенность метода;
-
Ошибки округления (погрешность вычислений).
Таким образом, полная погрешность состоит из неустранимой и устранимой.
Неустранимая погрешность может иметь место, даже если решение сформулировать задачи найдено точно. Она не может быть уменьшена в процессе вычислений.
Погрешность метода (3) возникает из-за того, что точный оператор и исходные данные ( в частности начальные и краевые условия) заменяются по определенным правилам приближенными.
Так, производные заменяются разностными аналогами, интегралы – суммами, функции – специальными многочленами. При решении многих задач строятся бесконечные итерационные процессы, которые естественным образом прекращаются после конечного числа итераций. Как правило, погрешность метода может быть оценена и поддается контролю. Погрешность метода следует выбирать так, чтобы она была не более чем на порядок меньше неустранимой погрешности.