- •Компьютерный практикум по численным методам
- •Введение
- •1 Решение нелинейных уравнений и систем уравнений
- •1.1 Понятие о линейных и нелинейных уравнениях
- •1.2 О методах решения нелинейных уравнений
- •1.3 Решение нелинейных уравнений
- •1.4 Решение систем нелинейных уравнений. Метод Ньютона
- •1.5 Использование стандартных функций системы Maple
- •Упражнения
- •2 Решение задач линейной алгебры
- •2.1 Матричные и векторные операции
- •2.2 Решение систем линейных алгебраических уравнений
- •2.2.1 Прямые методы решения слау. Факторизация матриц
- •2.3 Итерационные методы решения слау
- •Упражнения
- •3 Решение обыкновенных дифференциальных уравнений
- •3.1 Основные понятия
- •3.2 Численное решение задачи Коши
- •3.3 Решение краевой задачи методом стрельбы
- •Упражнения
- •4 Приближение (аппроксимация) функций
- •4.1 Введение
- •4.2 Интерполирование
- •4.3 Локальная интерполяция
- •4.4 Интерполирование сплайнами
- •4.5 Интерполяция Эрмита
- •4.6 Среднеквадратичное приближение
- •4.7 Аппроксимация с помощью взвешенных невязок
- •Упражнения
- •5 Метод конечных разностей
- •Упражнения
- •6 Прямые методы вариационного исчисления
- •6.1 Введение
- •6.2 Простейшая задача вариационного исчисления. Уравнение Эйлера
- •6.3 О прямых методах вариационного исчисления
- •Упражнения
- •7 Решение краевых задач для обыкновенных дифференциальных уравнений методом ритца
- •7.1 Некоторые замечания по использованию метода Ритца
- •Упражнения
- •8 Решение краевых задач методом галёркина
- •Упражнения
- •9 Метод конечных элементов
- •Упражнения
- •10 Решение двумерной краевой задачи методом ритца
- •Упражнения
- •Оглавление
- •394026 Воронеж, Московский просп., 14
1 Решение нелинейных уравнений и систем уравнений
1.1 Понятие о линейных и нелинейных уравнениях
Рассмотрим обычное уравнение, представляющее собой соотношение вида
, (1.1)
в котором g(x) – некоторая функция, x является неизвестной переменной, а b – некоторое число. Решением (корнем) этого уравнения называется всякое число x из области определения g(x), которое, будучи подставлено в уравнение (1.1), обращает его в тождество. Под термином «решение уравнения» также понимают процесс нахождения (вычисления) его корней. Решить уравнение – значит найти совокупность (множество) всех его корней. Иногда задача ставится о решении уравнения лишь на каком-либо подмножестве числовой оси x (например, на отрезке), тогда ищется совокупность корней уравнения, принадлежащих этому подмножеству.
Пусть x, b – векторы размерности n, тогда приходим к системе уравнений
,
,
…………………….
,
или в векторной записи
. (1.2)
В этом случае решением является не число, а числовой вектор .
Линейные уравнения вида (1.1) или (1.2) характеризуются важным свойством: функция g(x) (или вектор-функция ) удовлетворяет принципу суперпозиции, состоящему в том, что если аргумент x есть линейная комбинация (суперпозиция) двух точек
,
где c1 и c2 – константы, то значение g(x) есть линейная суперпозиция значений g(x(1)) и g(x(2)), а именно
. (1.3)
Легко проверить выполнение этого принципа для функций g(x)=ax (a = const) и g(x)=Ax, где A – матрица размером nn.
Нелинейные функции не удовлетворяют принципу суперпозиции, например, для g=x2 (1.3) не выполняется:
Этот факт лежит в основе различия линейных или нелинейных уравнений.
Линейные уравнения могут иметь
1) единственное решение;
2) бесконечное множество решений;
3) не иметь решений вовсе.
Линейные уравнения являются частным случаем нелинейных, поэтому для нелинейных уравнений возможны упомянутые выше три варианта, а также
4) имеется n решений, 2n<.
Примером четвертого варианта могут служить задачи определения корней полиномов Pn(x)=a0+a1x+a2x2+…+anxn
Нелинейные уравнения можно разделить на два класса – алгебраические и трансцендентные. Алгебраическими называются уравнения, содержащие только алгебраические функции (целые, рациональные, иррациональные). В частности, многочлен является целой алгебраической функцией. Уравнения, содержащие другие функции (тригонометрические, показательные, логарифмические и др.), называются трансцендентными.
Нелинейные уравнения принято записывать в виде
f(x) = 0, (1.4)
который получается из (1.1) путем замены f(x) g(x) – b.
1.2 О методах решения нелинейных уравнений
Методы решения нелинейных уравнений делятся на прямые и итерационные. Прямые методы позволяют записать корни в виде некоторого конечного соотношения (формулы). Из школьного курса алгебры читателю известны такие методы для решения тригонометрических, логарифмических, показательных, а также простейших алгебраических уравнений.
Однако встречающиеся на практике уравнения часто не удается решить такими простыми методами. Для их решения используются итерационные методы, т.е. методы последовательных приближений. Алгоритм нахождения корня нелинейного корня нелинейного уравнения с помощью итерационного метода состоит из двух этапов: а) отыскания приближенного значения корня (начального приближения); б) уточнения приближенного значения до некоторой заданной степени точности. В некоторых методах отыскивается не начальное приближение, а некоторый отрезок, содержащий корень.
Общая схема итерационных методов состоит в последовательном уточнении начального приближения x0. Каждый такой шаг называется итерацией. В результате итераций находится последовательность приближенных значений корня x1, x2,…, xk. Если эти значения с ростом k стремятся к истинному значению корня
,
то говорят, что итерационный процесс сходится.
Прежде чем приступить к вычислительной процедуре решения уравнения, определяют отрезки числовой оси, содержащие по одному корню данного уравнения, или, как говорят, отделяют корни. Для отделения корней уравнения можно использовать критерий: если на отрезке [a, b] функция f(x) непрерывна и монотонна, а ее значения на концах отрезка имеют разные знаки, то на этом отрезке существует и притом один корень данного уравнения. Достаточным признаком монотонности функции f(x) на отрезке [a, b] является сохранение знака производной функции. При отделении корней стараются определить отрезок [a, b] как можно меньшей длины.
Отделение корней можно выполнить также графически. Найти корень уравнения (1.4) – это значит найти абсциссу точки пересечения графика функции y=f(x) с прямой y=0 (осью абсцисс). Если построить график функции затруднительно, то уравнение (4) следует представить в эквивалентном виде
f1(x) = f2(x) (1.5)
с таким расчетом, чтобы графики функций f1(x) и f2(x) строились проще. Корни же уравнения (1.5) определяются как абсциссы точек пересечения графиков функций y = f1(x) и y = f2(x). Если уравнения (1.4) и (1.5) эквивалентны, то, отделив корни уравнения (1.5), мы тем самым отделяем и корни уравнения (1.4).
Выбор алгоритма построения последовательности {xk}, или метода решения, – весьма важный момент при практическом решении задачи. Здесь немалую роль играют такие свойства алгоритма, как простота, надежность, экономичность и т.д.
Одной из характеристик вычислительного алгоритма является его скорость сходимости. Последовательность{xk}, сходящаяся к пределу x* (x*≠x1), имеет порядок сходимости ≥1, если существуют числа c≥0, k0>0, ≥1 такие, что для всех k≥k0
.
Сходимость при =1 называется линейной, или 1-го порядка, при =2 – квадратичной и т.д. С ростом вычислительный алгоритм построения последовательности {xk} усложняется, и условия, обеспечивающие сходимость последовательности {xk}, становятся более жесткими.
На практике чаще всего используются следующие методы решения нелинейных уравнений: половинного деления, секущих (хорд), простой итерации, парабол, Ньютона.