Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМП MathCAD14.docx
Скачиваний:
12
Добавлен:
21.11.2018
Размер:
4.57 Mб
Скачать

2. Алгебраические уравнения и оптимизация

Задача решения нелинейных уравнений и системы таких уравнений ставится следующим образом.

Пусть имеется одно алгебраическое уравнение с неизвестным х

f(x)=0,

или система из N алгебраических уравнений

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

Как правило, отыскание корней численными методами связано с некоторыми задачами:

  • исследование существования корней в принципе, определение их количества и примерного расположения;

  • отыскание корней с заданной погрешностью TOL.

Почти все встроенные функции системы MathCAD, предназначенные для решения алгебраических уравнений, нацелены на решение второй задачи, т.е. предполагают, что корни уже приблизительно локализованы. Чтобы решить первую задачу (предварительной локализации корней), можно использовать графическое представление f(x) или последовательный поиск корня, начиная из множества пробных точек, покрывающих расчетную область (сканирование). MathCAD предлагает несколько встроенных функций, которые следует применять в зависимости от специфики уравнения.

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

Рассмотрим одно уравнение с одним неизвестным x: f(x)=0 (Например: sin(x)=0).

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

  1. root (f(x),x);

  2. root (f(x),x,a,b);

  • f(x) – скалярная функция;

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

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

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

Задание 8. Определите корни уравнения sin(x)=0, используя встроенную функцию root.

  1. Откройте новый документ.

  2. Присвойте значение переменной x и функции f(x):

  1. Запишите имя корня s и введите символ присваивания (рис. 30). Откройте диалоговое окно Insert Function (Вставить функцию) с помощью одноименной команды на панели инструментов Стандартные и выделите встроенную функцию root. Нажмите кнопку ОК.

  2. Вставьте имя функции и имя переменной в первые два местозаполнителя, вторые два – удалите.

  3. Применив оператор численного вычисления, определите значение корня (рис. 30).

График функции f(x)=sin(x) и положение найденного корня показаны на рис. 31.

Хотя уравнение имеет бесконечное количество корней xN=N·π (N=0,±1,±2,…), MathCAD находит только один из них, x0, лежащий наиболее близко к x=0.5. Задайте другое начальное значение, например, x=3 и вы получите другой корень уравнения x1.

Таким образом, для поиска корня средствами MathCAD требуется его предварительная локализация. Это связано с особенностями выбранного численного метода, который называется методом секущей [1].

Рис. 30. Определение корня уравнения с помощью встроенной функции

Рис. 31. Графическое решение уравнения sin(x)=0

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

Обратите внимание, что явный вид функции f(x) может быть определен непосредственно в теле функции root. Когда root имеет четыре аргумента, следует помнить о двух ее особенностях:

  1. Внутри интервала [a,b] не может находиться более одного корня, иначе будет найден один из них, заранее неизвестно какой именно.

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

Если уравнение не имеет действительных корней, но имеет мнимые, то их также можно найти. Например:

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

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

Сохраняете результаты работе в текущем документе.