ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 22.07.2024
Просмотров: 17
Скачиваний: 0
Лабораторная работа № 15
Решение уравнений и систем уравнений
Цель работы: научиться решать нелинейные уравнения и системы линейных и нелинейных уравнений.
Задание к работе:
К работе допущен:
Работу выполнил:
Работу защитил:
Теоретическая часть.
-
Решение нелинейных уравнений
Многие уравнения не имеют аналитических решений. Однако многие из них могут решаться численными методами с заданной погрешностью. Для простейших уравнений вида F(x)=0 решение находится с помощью функции
root(Выражение, имя переменной)
Эта функция возвращает значение переменной, при котором выражение равно нулю с заданной точностью. Функция реализует вычисление итерационным методом. Необходимо задать начальное значение переменной. В зависимости от заданного начального приближения к корню находится ближайший корень. Функция root находит только один корень, ближайший к заданному начальному значению. Для отыскания всех корней необходимо задавать различные значения начальных приближений. Функция root может отыскивать и комплексные корни. Недостатком функции root является невозможность решения с ее помощью систем нелинейных уравнений. На рис.61 приведен пример применения функции root. Точность решения задается переменной TOL. По умолчанию задается точность 0,001.Если точность выше 0,001, то требуется изменить количество знаков после запятой при выводе вещественных чисел по команде Format
-
Решение уравнений полиномиального вида
Для поиска корней обычного полинома р(х) степени n MathCad содержит очень удобную функцию
polyroot(V)
Она возвращает вектор всех корней многочлена (полинома) степени n, коэффициенты которого находятся в векторе V, имеющем длину, равную n+1.
Корни полинома могут быть как вещественными, так и комплексными. Не рекомендуется пользоваться этой функцией, если степень полинома выше пятой-шестой, в этом случае трудно получить малую погрешность вычисления корней.
-
Символьное решение уравнений
Для выполнения символьных вычислений MathCad дополнен символьным процессором, операции которого содержатся в подменю позиции Simbolic главного меню. Можно открыть таблицу символьных операций из математического меню.
Функция
solve,x
позволяет найти значение обозначенной переменной, при которой содержащее ее выражение становится равным нулю.
-
Решение систем линейных уравнений с помощью функции lsolve
Для решения систем линейных уравнений в MathCad введена встроенная функция
lsolve(A,B),
которая возвращает вектор Х для системы линейных уравнений А*Х=В при заданной матрице коэффициентов А и векторе свободных членов В.
-
Решение систем линейных уравнений в матричной форме.
Векторные и матричные операторы и функции системы MathCad позволяют решать широкий круг задач линейной алгебры.
Для системы линейных уравнений А*Х=В при заданной матрице коэффициентов А и векторе свободных членов В вектор решения можно получить из очевидного выражения Х=В*А.
6. Решение нелинейных уравнений и их систем
При решении нелинейных уравнений и их систем используется специальный вычислительный блок, открываемый служебным словом-директивой Given, которое набирается с клавиатуры. До начала блока задаются начальные приближения к неизвестным переменным. Внутри блока записывается уравнение или система уравнений. Для решения систем нелинейных уравнений используется одна из двух следующих функций:
find(v1,v2...vn) - возвращает значение одной или нескольких переменных для точного решения;
minerr(v1,v2...vn) - возвращает значение одной или нескольких переменных для приближенного решения.
Между этими двумя функциями существуют принципиальные различия. Первая функция используется, когда решение реально существует (хотя и не является аналитическим). Вторая функция пытается найти максимальное приближение даже к несуществующему решению путем минимизации среднеквадратичной погрешности решения.
7. Символьное решение систем уравнений
Функция
solve,x1,х2...х3
позволяет найти значение перечисленных переменных, при которых содержащее их выражение становится равным нулю. Для решения системы уравнений в шаблон функции solve вставляется вектор, длина которого равна количеству уравнений в системе. Уравнения записываются в вектор.
Практическая часть.
-
Решить уравнение согласно заданию своего варианта. Найти все корни уравнения. Точность решения 0.0001.
-
Решить уравнение полиномиального вида, заданного функцией F(x):= A0+A1*x+A2*x2+A3*x3. Значения коэффициентов взять в соответствии со своим вариантом.
-
Решить систему линейных алгебраических уравнений матричным методом.
-
Решить систему линейных алгебраических уравнений из предыдущего задания при помощи функции lsolve.
-
Решить систему уравнений двумя способами (с использованием функции find и с использованием стандартной функции minerr.
Заключение
Я научился использовать надстройки «Подбор параметра» и «Поиск решения» для нахождения корней нелинейных уравнений и систем уравнений.