Составители:
Практикум по решению задач на ЭВМ
root(f(x), х)
root(f(x), х, a, b)
где:
f(x) – скалярная функция, определяющая уравнение (1);
х – скалярная переменная, относительно которой решается уравнение;
a,b – границы интервала, внутри которого происходит поиск корня.
Первый тип функции root требует дополнительного задания начального
значения переменной х. Для этого нужно просто предварительно присво-
ить х некоторое число. Поиск корня будет производиться вблизи этого
числа. Таким образом, присвоение начального значения требует предпо-
ложения о примерной локализации корня. Работа итерационного алгорит-
ма секущих сильно зависит от значения системной константы TOL. Чем
она меньше, тем ближе к нулю будет значение f(x) в найденном корне, но
тем больше времени будет затрачено вычислительным процессором Math-
cad на его поиск.
Если
уравнение неразрешимо, то при попытке найти его корень будет
выдано сообщение об ошибке. Кроме того, к ошибке или выдаче непра-
вильного корня может привести и попытка применить метод секущих в
области локального максимума или минимума f(x). В этом случае секущая
может иметь направление, близкое к горизонтальному, выводя точку сле-
дующего
приближения далеко от предполагаемого положения корня. Для
решения таких уравнений лучше применять другую встроенную функцию
Minerr. Сходные проблемы могут возникнуть, если начальное приближе-
ние выбрано слишком далеко от настоящего решения, или f(x) имеет осо-
бенности типа бесконечности. Иногда удобнее задавать не начальное при-
ближение к корню, а интервал [a,b], внутри которого
заведомо находится
корень. В этом случае следует использовать функцию root с четырьмя ар-
гументами, а присваивать начальное значение х не нужно. Если уравнение
не имеет действительных корней, но имеет мнимые, то их тоже можно
найти. Но для решения этого уравнения второй вид функции root (с че-
тырьмя, а не с двумя
аргументами) неприменим, поскольку f(x) является
положительно определённой, и указать интервал, на границах которого она
имела бы разный знак, невозможно. Остаётся добавить, что f(x) может
функцией не только х, а любого количества аргументов. Именно поэтому в
самой функции root необходимо определить, относительно которого аргу-
мента следует решить уравнение.
Если функция f(x)
является полиномом, то все его корни можно опреде-
лить, используя встроенную функцию polyroots(v), где v – вектор, состав-
ленный из коэффициентов полинома.
Поскольку полином n–й степени имеет ровно n корней (некоторые из
них могут быть кратными), вектор v должен состоять из n+1 элемента. Ре-
зультатом действия функции polyroots является вектор, составленный
из
101
Практикум по решению задач на ЭВМ root(f(x), х) root(f(x), х, a, b) где: f(x) – скалярная функция, определяющая уравнение (1); х – скалярная переменная, относительно которой решается уравнение; a,b – границы интервала, внутри которого происходит поиск корня. Первый тип функции root требует дополнительного задания начального значения переменной х. Для этого нужно просто предварительно присво- ить х некоторое число. Поиск корня будет производиться вблизи этого числа. Таким образом, присвоение начального значения требует предпо- ложения о примерной локализации корня. Работа итерационного алгорит- ма секущих сильно зависит от значения системной константы TOL. Чем она меньше, тем ближе к нулю будет значение f(x) в найденном корне, но тем больше времени будет затрачено вычислительным процессором Math- cad на его поиск. Если уравнение неразрешимо, то при попытке найти его корень будет выдано сообщение об ошибке. Кроме того, к ошибке или выдаче непра- вильного корня может привести и попытка применить метод секущих в области локального максимума или минимума f(x). В этом случае секущая может иметь направление, близкое к горизонтальному, выводя точку сле- дующего приближения далеко от предполагаемого положения корня. Для решения таких уравнений лучше применять другую встроенную функцию Minerr. Сходные проблемы могут возникнуть, если начальное приближе- ние выбрано слишком далеко от настоящего решения, или f(x) имеет осо- бенности типа бесконечности. Иногда удобнее задавать не начальное при- ближение к корню, а интервал [a,b], внутри которого заведомо находится корень. В этом случае следует использовать функцию root с четырьмя ар- гументами, а присваивать начальное значение х не нужно. Если уравнение не имеет действительных корней, но имеет мнимые, то их тоже можно найти. Но для решения этого уравнения второй вид функции root (с че- тырьмя, а не с двумя аргументами) неприменим, поскольку f(x) является положительно определённой, и указать интервал, на границах которого она имела бы разный знак, невозможно. Остаётся добавить, что f(x) может функцией не только х, а любого количества аргументов. Именно поэтому в самой функции root необходимо определить, относительно которого аргу- мента следует решить уравнение. Если функция f(x) является полиномом, то все его корни можно опреде- лить, используя встроенную функцию polyroots(v), где v – вектор, состав- ленный из коэффициентов полинома. Поскольку полином n–й степени имеет ровно n корней (некоторые из них могут быть кратными), вектор v должен состоять из n+1 элемента. Ре- зультатом действия функции polyroots является вектор, составленный из 101
Страницы
- « первая
- ‹ предыдущая
- …
- 99
- 100
- 101
- 102
- 103
- …
- следующая ›
- последняя »