Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа N5.doc
Скачиваний:
14
Добавлен:
31.05.2015
Размер:
465.92 Кб
Скачать

2. Решение систем нелинейных уравнений. Метод простых итераций (последовательных приближений).

Систему нелинейных уравнений можно записать в векторном виде

(1)

или подробно в координатном виде .

Нулевое приближение в случае двух переменных находится графически: на плоскости строят кривыеии находят точки их пересечения.

Для трех и более переменных удовлетворительных способов подбора нулевых приближений нет.

Заменим нелинейную систему (1) эквивалентной системой вида

. (2)

или .

Если итерации сходятся, то они сходятся к решению уравнения (предполагается, что решение существует).

Заканчивать итерации можно по критерию сходимости: , выполнение которого необходимо проверить для каждой компоненты.

Средства пакета MathCad для решения систем нелинейных уравнений

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

Начальные условия

Given

Уравнения

Ограничительные условия

Выражения с функциями Find, Minner (Maximize, Minimize).

Начальные условия определяют начальные значения искомых переменных и задаются в виде var:=value, т.е. обычным присваиванием переменным заданных значений.

Уравнения задаются в виде expr_left=expr_right с применением жирного знака равенства между левой и правой частями каждого уравнения, который вводится либо с палитры Boolean (Булевы операторы), либо сочетанием клавиши <Ctrl>+<=>.

Встроенная функция Find (x1,... ,xn) возвращает значение одной или нескольких переменных для точного решения. Таким образом, число элементов вектора решений равно числу аргументов функции Find.

Пример 6.

Решить систему уравнений в окрестности точки.

Решение.

Выполним проверку

Ответ: решением системы является точка (-0.106, 1.056).

Замечание. Вычислительный блок использует константу CTOL в качестве погрешности выполнения уравнений, введенных после ключевого слова Given. Например, если CTOL =0.001, то уравнение х=10 будет считаться выполненным и при х=10,001, и при х=9,999.

Вычислительным блоком с функцией Find можно найти и корень уравнения с одним неизвестным. Действие Find в этом случае совершенно аналогично уже рассмотренным примерам. Задача поиска корня рассматривается как решение системы, состоящей из одного уравнения. Единственным отличием будет скалярный, а не векторный тип числа, возвращаемого функцией Find (см. пример 5).

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

Пример 7.

Найти решение системы уравнений

Зададим функции f(x,y) и g(x,y), соответствующие первому и второму уравнениям:

Построим графики поверхностей, описываемых этими уравнениями.

На графике видно, что в качестве начального приближения можно выбрать, например, точку (0,0).

Далее используем вычислительный блок.

Решение.

; .

Given

Выполним проверку, подставив найденные значения в функции f(x,y) и g(x,y).

Ответ: решением системы является точка (-1.118, -0.653).

Если не удаётся решить точно систему уравнений с помощью функции Find, можно попытаться найти её приближённое решение, заменив в вычислительном блоке функцию Find на функцию Minerr с тем же набором параметров.