- •P(xf(Лабораторная работа №5
- •Поиск корня уравнения в заданном интервале.
- •Корни полинома
- •2. Решение систем нелинейных уравнений. Метод простых итераций (последовательных приближений).
- •Средства пакета MathCad для решения систем нелинейных уравнений
- •Пример 6.
- •Решить систему уравнений в окрестности точки.
- •Решение.
- •Выполним проверку
- •Пример 8.
- •Функции MathCad для решения задач оптимизации.
- •Пример 9. Поиск локального экстремума в окрестности заданной точки.
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 с тем же набором параметров.