Использование вычислительного блока Given – Find ()

 

Для решения системы нелинейных уравнений и неравенств (до 50 уравнений и неравенств) можно использовать блок Given – Find (). Перед блоком записываются начальные приближения всех неизвестных. Между ключевыми словами Given – Find () записывается система уравнений и неравенств (в уравнениях должен быть знак равенства через Ctrl+=). Число уравнений должно быть равно числу неизвестных. Функция Find () имеет следующий формат: Find (z1,z2,z3,…..), где z1,z2,z3,… - искомые переменные. Если функция Find () имеет более одного аргумента, то она возвращает ответ в виде вектора.

Формат функции: Find(Список переменных).

При использовании функции Odesolve следует:

- напечатать слово Given, чтобы создать решающий блок;

- напечатать ОДУ, используя булевы операторы;

- напечатать Find (). В круглые скобки записать список неизвестных относительно которых решается уравнение.

Рассмотрим использование вычислительного блока Given – Find () на примере системы нелинейных уравнений:

 

 

 


Для решения системы уравнений выполним следующие действия:

· Зададим точность:

 

TOL:=0.0001

 

· Из каждого уравнения выразим одну переменную (из каждого уравнения выразим разные переменные), представим каждое уравнение системы в виде:

 

 

·

·

·


· Теперь выделим корень системы уравнений графически. Для этого построим график функций f1(x) и f2(y), выполнив следующие действия:

Ø Зададим изменения x и y:

 

 

 

Ø Построим двумерный график (Shift + 2). Затем заполним местозаполнители и отформатируем график, чтобы он принял удобный для нас вид:

 

 

· Задаем вектор начального приближения (начальные значения x и y) учитывая, что начальные значения должны быть максимально приближены к корню системы (точка пересечения двух графиков).

· Теперь можно использовать вычислительный блок Given – Find (). В вычислительном блоке любое равенство записывается через жирное равно (Ctrl+=). Параметрами оператора fund являются переменные относительно которых решается система:

 

 

· В результате вычислительный блок выдает решение в виде вектора, в котором каждое следующее число сверху вниз соответствует значению корня слева направо. Чтобы вывести вектор решения необходимо ввести V =. В результате получим:

 

 

· Для проверки необходимо перенести все, что находится в правой части каждого уравнения в левую, подставить значения корней вместо соответственных неизвестных и поставить знак равенства (=), если вычисления проведены, верно, то в результате каждое уравнение должно равняться 0 или числу близкому к 0 (все зависит от точности вычислений). Например:

 

 

                               

 

 

Блоки Given – Find () не могут быть вложенными. Функция Find () может быть использована как любая другая функция. Если система уравнений имеет несколько различных решений, то для поиска остальных можно использовать различные начальные приближения или дополнительные ограничения в виде неравенств, которым удовлетворяет найденное решение.

 

Блок Given – Find может быть использован для решения систем уравнений в символьном виде, например:

 

· Использование блока Given – Find при аналитических преобразованиях:

 


Подставим вместо a, b, r, c конкретные значения и решим систему уравнений графически (решение показано на рисунке ниже):

Данное решение получено при a = b = 0, c = 1, r = 2

 

 




Дата: 2018-09-13, просмотров: 1609.