Название: Информатика - Алгоритмы и программы (Н.В. Усольцев)

Жанр: Информатика

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


2. методы численного дифференцирования

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

Самыми простыми формулами для вычисления первой производной  являются двухточечные формулы дифференцирования вперед и назад:

                                                                 (1)

 

                                                     (2)

Они дают погрешность примерно одинаковой величины, но разного знака и поэтому обычно используют среднее значение производных, получаемых по этим формулам:

                              (3)

 

Определение второй производной как производной от первой

приводит к формуле

                                                              (4)

Эта формула носит название трехточечной, хотя третья точки  присутствует в ней неявно.

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

Можно представить себе алгоритм вычисления с заданной погрешностью , заключающийся в циклическом уменьшении в два раза величины  . Итерации выполняются до тех пор, пока разница между двумя значениями, вычисленными по (3) или (4) не станет меньше .

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

Если табличная функция интерполирована полиномом

,                                                                                  (5)

то ее k-тая производная () выражается формулой

                                                                                    (6)

 

3. Методы численного интегрирования Симпсона и Гаусса

Для вычисления определенных интегралов от функции одной переменной

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

Представление подынтегральной функции постоянной величиной приводит к формуле метода прямоугольников

            ,      где      ,              n – число разбиений.

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

                        .

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

                                    (8)

где      a и b - пределы интегрирования;

n - число интервалов интегрирования (четное);

 -  элементарный интервал (шаг) интегрирования;

- значения аргумента подынтегральной функции в i-той точке.

Вывод формулы Симпсона приводится в текстовом файле simpson.doc.

Метод Симпсона дает достаточно высокую точность. Для монотонных функций при n = 10…20 получается весьма точный результат.

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

                                                                 (9)

где                             .

Значения (координаты точек на нормированном интервале (-1,1)) и  (весовые коэффициенты) выбираются таким образом, чтобы минимизировать ошибку интегрирования для степенных подынтегральных функций: . Эти значения определяются только числом точек интегрирования n и больше ни от чего не зависят. Их величины для n = 10 приведены в таблице 1.

Метод Гаусса можно адаптировать к подынтегральной функции специального вида. Например, функция может иметь вид            

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

 

Таблица 1

Узловые точки и весовые коэффициенты метода Гаусса для n = 10

t6 = - t5 = 0.148874

w6 = w5 = 0.295524

t7 = - t4 = 0.433395

w7 = w4 = 0.269267

t8 = - t3 = 0.679410

w8 = w3 = 0219086

t9 = - t2 = 0.865063

w9 = w2 = 0.149451

t10 = - t1 = 0.973907

w10 = w1 = 0.066671