Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИПР_Маткад.docx
Скачиваний:
9
Добавлен:
19.01.2020
Размер:
3.04 Mб
Скачать

Директива Given для подготовки блока решения системы уравнений.

При решении систем нелинейных уравнений используется специальный вычислительный блок, открываемый директивой Given и имеющий следующую структуру:

  • начальные условия (задаются в виде var := value).

  • директива Given.

  • уравнения (задаются в виде expr_left=expr_right).

  • ограничительные условия.

  • Выражения с функциями Find, Minner.

Начальные условия определяют начальные значения искомых переменных. Они задаются обычным присваиванием переменным заданных значений. Если переменных несколько, то используется векторное представление для начальных условий. Уравнения задаются в виде expr_left=expr_right с применением булева знака равенства = между левой и правой частью каждого уравнения. Ограничительные условия обычно задаются в виде неравенств или равенств, которые должны удовлетворяться при решении системы уравнений.

Рекомендуется дополнить блок проверкой решения системы уравнений и ограничительные условия можно задавать в векторной форме. При этом решение может искаться и в символьной форме (если оно, естественно, существует).

Функции Find и Minerr для решения систем нелинейных уравнений

В блоке используется одна из следующих двух функций:

Find(v1, v2,…,vn) – возвращает значение одной или ряда переменных для точного решения;

Minerr(v1, v2,…,vn) – возвращает значение одной или ряда переменных для приближённого решения.

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

Ввод ограничений при решении систем нелинейных уравнений.

В качестве ограничительных условий используются следующие логические операторы:

  • е1 больше е2: е1>e2

  • е1 меньше е2: е1<e2

  • е1 больше или равно е2: е1 Ctrl+) e2

  • е1 меньше или равно е2: е1 Ctrl+( e2

  • е1 не равно е2е1=е2: е1 Ctrl+# e2

  • е1 равно е2: е1 Ctrl+= e2

Символами е1 и е2 обозначены левая и правая часть логического выражения. Жирным шрифтом выделены символы, с помощью которых можно ввести соответствующее логическое условие с клавиатуры. Их можно вводить, также используя соответствующую палитру.

Функции Find и Minerr могут использоваться для решения одного или ряда уравнений. На рис. 3 показано, что использование оператора присваивания вместо знака символического (логического) равенства в блоке Given некорректно. Поэтому система реагирует на попытку решения сообщением об ошибке. В блоке Given для записи уравнения используется особый (булевый) знак равенства. Присваивание х:=10 задаёт начальное значение для поиска корня уравнения функциями Find и Minerr. Как видно на рис. 4 обе функции (Find и Minerr) дают одинаковое решение.

Результат решения задания представлен на рисунке 11.

Рисунок 11. Ход выполнения задания ЛБ№7

Соседние файлы в предмете Прикладные системы обработки данных