Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по MathCAD.doc
Скачиваний:
77
Добавлен:
08.11.2018
Размер:
606.21 Кб
Скачать

Лекция 2 алгебраические уравнения

1 Одно уравнение с одним неизвестным

Для решения алгебраических уравнений с одним неизвестным в MathCAD предусмотрена встроенная функция root, которая, в зависимости от типа задачи, может включать либо два, либо четыре аргумента и, соответственно, использует разные алгоритмы поиска корней:

  1. root(f(x), x) – находит корень, расположенный в окрестности заданного числа x;

  2. root(f(x), x, a, b) – находит корень в отрезке [a, b], где

f(x) – скалярная функция, определяющая уравнение f(x)=0;

x – имя скалярной переменной, относительно которой решается уравнение;

a, b – границы интервала внутри которого происходит поиск корня.

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

Задание: Решить алгебраическое уравнение с одним неизвестным sin(x)=0.

Решение:

Результат: Хотя уравнение имеет бесконечное количество корней =n·π (n=0,±1,±2,…) , MathCAD находит (с заданной точностью) только один из них, лежащий наиболее близко к x=0.5. Если задать другое начальное значение, например, x=3, то решением будет другой корень x и т. д. Таким образом, для поиска корня средствами MathCAD требуется его предварительная локализация.

Иногда удобнее задавать не начальное приближение к корню, а интервал [a, b] , внутри которого корень заведомо находится. В этом случае следует использовать функцию root с четырьмя аргументами, а присваивать начальное значение x не нужно.

Решение:

Явный вид функции f(x), как вы уже заметили, может быть определен в теле функции root.

Когда функция root имеет четыре аргумента, следует помнить о двух ее особенностях:

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

  2. значения f(a) и f(b) должны иметь разный знак, иначе будет выдано сообщение об ошибке.

f(x) может быть функцией не только x, а любого количества аргументов. Именно поэтому в самой функции root следует определить, относительно какого из аргументов следует решить уравнение.

2 Корни полинома: функция polyroots

Если функция f(x) является полиномом, то все его корни можно определить, используя встроенную функцию polyroots(v), где v – вектор, составленный из коэффициентов полинома.

Поскольку полином n–ной степени имеет ровно n корней (некоторые из них могут быть кратными), вектор v должен состоять из n+1 элемента. В основе встроенной функции polyroots лежат специальные численные алгоритмы, а результатом ее действия является вектор, составленный из n корней рассматриваемого полинома. При этом нет надобности вводить какое–либо начальное приближение, как для функции root.

Задание: Найти корни полинома .

Решение:

Коэффициенты рассмотренного выше полинома записаны в векторе v. Первым в векторе должен идти свободный член полинома, вторым – коэффициент при x и т. д. Соответственно, последним, n+1–ым элементом должен быть коэффициент при старшей степени.

Иногда исходный полином имеется не в развернутом виде, а, например, как произведение нескольких полиномов. В этом случае определить все его коэффициенты можно, выделив его и выбрав в меню Symbolic (Символика) пункт Expand (Разложить). В результате символьный процессор MathCAD сам преобразует полином в нужную форму; пользователю надо будет только корректно ввести ее в аргументы функции polyroots.