русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Системы уравнений


Дата добавления: 2015-08-31; просмотров: 656; Нарушение авторских прав


Рассмотрим решение системы нелинейных уравнений. Для простоты предположим, что система состоит из N уравнений с N неизвестными:

f1(x1, ... ,хN) = 0,

. . . (4)

fN(x1, ... ,хN) = 0,

Здесь f1(x1, ... ,хN) , ..., fN(x1, ... ,хN) — некоторые скалярные функции от скалярных переменных

х1, х2, ... хN.

Для решения систем в MathCAD используется специальный вычислительный блок

Given/Find, состоящий из трех частей, идущих последовательно друг за другом:

- Given – ключевое слово;

- система, записанная логическими равенствами;

- Find(x1... ,хN) — встроенная функция для решения системы относительно переменных

х1, х2, ... хN.

 

Блок Given/Find использует для поиска решения итерационные методы, поэтому, как и для функции root, требуется задать начальные значения для всех х1, х2, ... хNдо ключевого слова Given.

Функция Find( ) возвращает вектор, составленный из корней системы (4). Таким образом, число аргументов функции Find( ) должно быть равно числу неизвестных.

На Рис. 27. приведен пример решения системы двух уравнений с двумя неизвестными.


Лекция 9 47

 

 

 

 

 

 

 

 

 

Рис. 27. Решение системы уравнений.

В первых двух строках вводятся функции, определяющие левые части уравнений системы.

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

Следующая строка показывает содержание вектора v, т. е. решение системы. Элемент вектора v0 есть первый аргумент функции Find( ), то есть неизвестное х, элемент v1–второй аргумент функции Find( ), то есть неизвестное у.



Уравнения системы можно записывать непосредственно внутри вычислительного блока, то есть не определять заранее функции f(x,y) и g(х,у), а сразу написать:

Given

4 2

x + y 3

 

x + 2 y 0

 

В вычислительный блок можно добавить дополнительные условия в виде неравенств. Например, ввод ограничения на поиск только отрицательных значений х приведет к нахождению другого корня (Рис. 28).


x:= 1

Given


y:= 1


x4+ y2 3

x+ 2y 0 x< 0

v:= find(x, y)

æ -1.269ö


 

 

Дополнительное неравенство


v= ç ÷

è 0.635ø

 

Рис. 28. Решение системы уравнений и неравенств.


Лекция 9 48

 

Несмотря на те же начальные значения, мы получили другой корень. Это произошло именно благодаря дополнительному неравенству в блоке Given/Find.

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

Вычислительным блоком Given/Find можно найти и корень одного уравнения с одним неизвестным.

В этом случае система считается состоящей из одного уравнения. Единственным отличием будет то, что функция Find( ) возвращает скаляр, а не вектор (Рис. 29.).

 

 

 

 

Рис. 29. Поиск корня уравнения с одним неизвестным с помощью блока Given/Find.


Лекция 9 49



<== предыдущая лекция | следующая лекция ==>
Одно уравнение с одним неизвестным | Операторы численного интегрирования


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.138 сек.