ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.05.2021

Просмотров: 419

Скачиваний: 5

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

48


МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ



















ЧИСЛЕННЫЕ МЕТОДЫ.

ПРИМЕНЕНИЕ В ХИМИИ



Методическое пособие по курсу

Численные методы и программирование”

по специальности ХИМИЯ (011000)



























ВОРОНЕЖ

2005

Утверждено научно-методическим советом химического факультета протокол № от .







Составители: доц. Протасова И.В.

асс. Крысанов В.А.


Науч.ред. ____________________










Методическое пособие подготовлено на кафедре физической химии химического факультета Воронежского государственного университета.

Рекомендуется для студентов химического факультета всех форм обучения.























Оглавление

I. ЧИСЛЕННЫЕ МЕТОДЫ ИНТЕГРИРОВАНИЯ


1.1. Интегрирование методом левых прямоугольников


1.2. Интегрирование методом правых прямоугольников


1.3. Интегрирование методом средних прямоугольников


1.4. Интегрирование методом Эйлера


1.5. Интегрирование методом Симпсона


1.6. Интегрирование методом Монте-Карло


II. ЧИСЛЕННОЕ РЕШЕНИЕ НЕЛИНЕЙНЫХ УРАВНЕНИЙ


2.1. Метод последовательных приближений (Метод простых итераций)


2.2. Метод деления отрезка пополам (Метод дихотомии)


2.3. Метод Секущих


2.4. Метод касательных (Ньютона-Рафсона)


III. РЕШЕНИЕ СИСТЕМЫ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ


3.1. Решение СЛАУ методом Гаусса


3.2. Решение СЛАУ методом Гаусса-Жордана


3.3. Решение СЛАУ методом Крамера


3.4. Итерационный метод решения системы линейных

алгебраических уравнений (метод Гаусса-Зейделя)


3.5. Решение системы нелинейных уравнений


IV. ПРИБЛИЖЕНИЕ НЕЛИНЕЙНОЙ ФУНКЦИИ ПО МЕТОДУ НАИМЕНЬШИХ КВАДРАТОВ


4.1. Приближение линейной функции по методу наименьших квадратов.


4.2. Линейная регрессия общего вида


4.3. Интерполяция полиномом Лагранжа


4.4. Интерполяция с помощью сплайн-функции


V. ОБЫКНОВЕННЫЕ ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ


5.1. Метод Эйлера решения обыкновенного дифференциального уравнения первого порядка


5.2. Метод Рунге-Кутта четвертого порядка для решения уравнения первого порядка


5.3. Методы прогноза и коррекции


5.4. Решение систем дифференциальных уравнений














I. ЧИСЛЕННЫЕ МЕТОДЫ ИНТЕГРИРОВАНИЯ

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


Из курса математического анализа известно, что выражение F(x) + C, где F(x) – первообразная функции F(x) и С – произвольная постоянная, называется неопределенным интегралом от функции f(x) и обозначается символом , причем F(x)называется подынтегральной функцией, F(x)dx подынтегральным выражением, xпеременной интегрирования; знак неопределенного интеграла. Таким образом, по определению , если .

Если существует предел , не зависящий от способа разбиения отрезка [А, Е] и выбора точек k, то этот предел называется определенным интегралом функции f(x) на отрезке [A, E] и обозначается символом , т.е. .

При этом называется интегралом на отрезке [A, E], числа А и Е – пределами интегрирования (А – нижний предел, Е – верхний предел), а сумма интегральной суммой.

Если функция F(x) непрерывна на отрезке [A, E], то определенный интеграл от этой функции в пределах от А до Е существует и его можно вычислить по формуле Ньютона-Лейбница:

. (1.1)

Здесь F(x)– первообразная функции F(x).

Для большинства функций первообразную F(x) не удается выразить через элементарные функции. Кроме того, при практических расчетах очень часто аналитическое выражение подынтегральной функции неизвестно, и она задана в виде таблицы значений в некоторых точках интервала наблюдения. Все это приводит к замене определенного интегрирования численными методами. Задача численного интегрирования состоит в следующем: требуется найти определенный интеграл на отрезке [A, E], если подынтегральная функция задана таблично.

Г еометрически интеграл функции F(x)в пределах от А до Е представляет собой площадь криволинейной трапеции, ограниченной графиком этой функции, осью х и прямыми x = A и x = E. Представленный ниже рис.1.1 иллюстрирует описанную картину.

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

Сущность большинства численных методов вычисления определенных интегралов состоит в замене подынтегральной функции F(x)аппроксимирующей функцией (x), для которой легко можно отыскать первообразную среди элементарных функций:

. (1.2)

Здесь S – приближенное значение интеграла, а R – погрешность вычисления интеграла.

Для получения аппроксимирующей функции, когда подынтегральная функция задана таблично, прибегают к теории интерполяции. Задача нахождения интерполирующей функции становится однозначной, если в качестве интерполирующей для функции F(x), заданной n+1 своими значениями, выбрать многочлен степени не выше n Ln(x), значения которого в узлах интерполяции (точках разбиения отрезка интегрирования) совпадают со значениями подынтегральной функции (табличными значениями).


Используемые на практике методы численного интегрирования можно классифицировать в зависимости от способа аппроксимации подынтегральной функции:

  • методы Ньютон - Котеса, основанные на полиномиальной аппроксимации подынтегральной функции;

  • сплайновые методы, основанные на аппроксимации подынтегральной функции сплайнами, представляющими собой кусочные полиномы;

  • методы наивысшей алгебраической точности, использующие неравноотстоящие узлы, вычисленные по алгоритму, обеспечивающему минимальную погрешность интегрирования;

  • методы Монте-Карло, в которых узлы интерполяции выбираются при помощи датчика случайных чисел;

  • специальные методы, алгоритмы которых разрабатываются на основе особенностей конкретных подынтегральных функций.

В настоящей работе будут рассмотрены шесть методов численного интегрирования: методы прямоугольников (левых, правых, средних), метод Эйлера (метод трапеций), метод Симпсона (метод парабол) и метод Монте-Карло.


1.1. Интегрирование методом левых прямоугольников

П усть функцию, изображенную на рис.1.1, необходимо проинтегрировать численным методом на отрезке [A, E]. Разделим отрезок [A, E] на n равных между собой интервалов (рис.1.2, здесь n = 4). Проведем отрезки, соединяющие точки x1, x2 и x3 c точками G, I и M соответственно. Это равносильно тому, что мы найдем значение функции f(x) в точках x1, x2 и x3. Проведем прямые линии, параллельные оси x, из точек С, G, I и M слева направо до пересечения с перпендикулярными им линиями x1G, x2I, x3M и EO. Сумму прямоугольников ACDx1, x1GJx2, x2Inx3 и x3MPE можно считать приближенным значением интеграла функции F(x) в пределах от A до Е. Площадь этих прямоугольников, а также сумму их площадей, найти очень легко. Достаточно ширину каждого прямоугольника, которая является постоянной величиной и равной , умножить на высоту (длину) прямоугольника, равную значению функции F(x) в данной точке. Тогда приближенное значение интеграла функции F(x) равно

. (1.3)

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


1.2. Интегрирование методом правых прямоугольников

Действительно, если мы проведем прямые линии, параллельные оси x, из точек G, I, M и О не слева направо, а справа налево до пересечения с перпендикулярными им линиями АС, x1G, x2I, и x3M, и достроим получившиеся фигуры до прямоугольников, (удлинив отрезки АС, x1G, x2I, и x3M до AF, x1H, x2K, и x3L соответственно) то получим новое приближенное значение интеграла функции F(x) в пределах от A до Е (рис.1.3). Это значение рассчитывается следующим образом:


. (1.4)



О чевидно, что расчеты значения интеграла для одной и той же функции F(x), проводимые по уравнениям (3) и (4) дадут разные результаты. Так, для реализуемого на рис.1.1-1.3 вида функции F(x), в задаваемых пределах интегрирования [A, E], приближенное значение интеграла, найденное методом левых прямоугольников всегда будет меньше истинного, независимо от количества разбиений n. Для метода правых прямоугольников, наоборот, приближенное значение интеграла всегда будет больше истинного. Поэтому чаще для численного нахождения значения интеграла пользуются методом средних прямоугольников или методом трапеций.



1.3. Интегрирование методом средних прямоугольников

При численном интегрировании функции f(x) методом средних прямоугольников высота прямоугольника находится как половина суммы значений функции f(x) в точках A и x1, x1 и x2, x2 и x3, x3 и Е. На рис.1.4 пунктирными линиями обозначены искомые высоты прямоугольников. Ширина прямоугольников остается неизменной и равной, как и в предыдущих методах, h.

Таким образом, для нахождения площади прямоугольника FFDx1 необходимо вычислить значения функции в точках A и x1 (f(А) и f(x1)), затем сложить их и поделить пополам. Полученное число является значением функции F(x) в точке G и является высотой прямоугольника. Умножением высоты на ширину h получаем площадь рассматриваемого прямоугольника. Просуммировав площади всех прямоугольников, найдем приближенное значение интеграла функции F(x). В итоге получаем следующую формулу:

. (1.5)

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



1.4. Интегрирование методом Эйлера

Данный метод не только очень похож на описанные выше методы нахождения приближенного значения интеграла, но и включает в себя все выкладки и формулы, представленные для методов левых и правых прямоугольников. Решение сводится к нахождению суммы площадей левых прямоугольников, которую мы обозначим Sл, затем находим сумму площадей правых прямоугольников (Sп) и за приближенное значение интеграла функции f(x) принимается величина Sn=(Sл+Sп)/2. Графически (рис.1.5) площадь Sn соответствует сумме площадей трапеций ACGx1, x1GIx2, x2IMx3, x3MOE (поэтому данный метод еще называют методом трапеций) и выражается уравнением:

. (1.6)



1.5. Интегрирование методом Симпсона

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

В примере, изображенном на рисунке, отрезок [A,E] разделен на 10 интервалов. Длина h одного интервала составляет

h = (E-A)/n = (xnx0)/n,

где n – число интервалов.

Если считать кривую на отрезке [x0,x2] параболой, то площадь S под ней можно точно вычислить по формуле:

. (1.7)

Если объединить все интервалы, то получится следующая формула:

(1.8)

или

. (1.9)

При вычислении величины Sn четные слагаемые удваиваются, а нечетные - увеличиваются в четыре раза.

К ак правило, чем меньше длина каждого интервала h, т.е. чем больше число этих интервалов n, тем меньше различаются приближенное и точное значения интеграла. Это справедливо для большинства функций и вызвано более точной аппроксимацией подынтегральной функции. Для метода трапеций обычно считают, что ошибка приблизительно пропорциональна h2, а для метода Симпсона она уменьшается пропорционально длине интервала в четвертой степени, т.е. при увеличении числа интервалов вдвое ошибка уменьшится в 16 раз.


Таким образом, для более точного вычисления интеграла некоторой функции в пределах от А до Е, необходимо не ограничиваться фиксированным значением количества интервалов n, а увеличивать это число после расчета приближенного значения интеграла, например, в 2 раза. Затем нужно опять вычислить новое приближенное значение интеграла и сравнить его с предыдущим результатом. Эту операцию следует повторять до тех пор, пока не будет достигнута заданная точность результата. Выбор критерия, по которому прекращается итерационная процедура, представляет собой наиболее сложную проблему при составлении программы.

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


1.6. Интегрирование методом Монте-Карло

Интегрированием методом Монте-Карло часто получают лучшие результаты, чем перечисленными выше методами. К достоинствам этого метода также можно отнести простоту его реализации и возможность проведения интегрирования функций не только одной переменной f(x), но и двух f(x,y) и трех переменных f(x,y,z) и т.д.

С уть данного метода интегрирования состоит в выборе среднего значения (средней высоты) функции f(x) для всего интервала ее интегрирования [A,E]. Для этого на отрезке [A,E] выбирают случайные точки, вычисляют значения функции в этих точках и находят их сумму (рис.1.7). После деления суммы на число точек, получают среднее значение, которое тем ближе к истинному среднему значению функции, чем больше выбрано случайных чисел на отрезке [A,E]. В результате интегрирование фигуры, ограниченной точками ACDE, сводится к нахождению площади прямоугольника ACDE, шириной которого является величина отрезка [A,E], а высотой – средняя высота интегрируемой фигуры.

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


Например. Радиоактивный распад протекает таким образом, что уменьшение количества атомов dN за время dτ пропорционально числу N оставшихся атомов. Пусть N0 – число атомов радиоактивного вещества в момент времени τ = 0. Нужно вычислить среднюю продолжительность существования одного атома к моменту времени τ, если известно, что количество атомов, имеющих продолжительность существования, равную τ равно: . Чтобы получить среднюю продолжительность существования атома, нужно умножить dN на время τ , в течение которого эти атомы существовали, проинтегрировать по τ в пределах от τ = 0 до τ и разделить на первоначальное количество атомов N0. Таким образом, задача свелась к нахождению значения интеграла: , где  ‑ константа радиоактивности вещества, равная, например, для радона 2,08410 ‑6 с ‑1.