русс | укр

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

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

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

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


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

SIMULINK ЛЕКЦИЯ 1


Дата добавления: 2013-12-23; просмотров: 4133; Нарушение авторских прав


Задача об определении надежности электрической цепи.

Задача о нахождении связи между структурой и свойствами веществ.

Задача о коммивояжере.

Задача о радиоактивном распаде.

Транспортная задача.

Задача о баке с наименьшей площадью поверхности.

Задачи о движении снаряда.

 

Рассмотрим следующую задачу механики.

 

Снаряд пущен с Земли с начальной скоростью v0 = 30 м/с под углом α = 45° к ее поверхности; требуется найти траекторию его движения и расстояние S между начальной и конечной точкой этой траектории.

Пренебрегая размерами снаряда, будем считать его материальной точкой. Введем систему координат xOy, совместив ее начало O с исходной точкой, из которой пущен снаряд, ось x направим горизонтально, а ось y — вертикально (рис. 1).

Тогда, как это известно из школьного курса физики, движение снаряда описывается формулами:

где t — время, g = 10 м/с2 — ускорение свободного падения. Эти формулы и дают математическую модель поставленной задачи. Выражая t через x из первого уравнения и подставляя во второе, получим уравнение траектории движения снаряда:

Эта кривая (парабола) пересекает ось x в двух точках: x1 = 0 (начало траектории) и

(место падения снаряда).

Подставляя в полученные формулы заданные значения v0 и a, получим

 

ответ: y = x – 90x2, S = 90 м.

 

Отметим, что при построении этой модели использован ряд предположений: например, считается, что Земля плоская, а воздух и вращение Земли не влияют на движение снаряда.

 

 

Требуется найти высоту h0 и радиус r0 жестяного бака объема V = 30 м3, имеющего форму закрытого кругового цилиндра, при которых площадь его поверхности S минимальна (в этом случае на его изготовление пойдет наименьшее количество жести).



 

Запишем следующие формулы для объема и площади поверхности цилиндра высоты h и радиуса r:

V = πr2h, S = 2πr(r + h).

Выражая h через r и V из первой формулы и подставляя полученное выражение во вторую, получим:

Таким образом, с математической точки зрения, задача сводится к определению такого значения r, при котором достигает своего минимума функция S(r). Найдем те значения r0, при которых производная

обращается в ноль:

Можно проверить, что вторая производная функции S(r) меняет знак с минуса на плюс при переходе аргумента r через точку r0. Следовательно, в точке r0 функция S(r) имеет минимум. Соответствующее значение h0 = 2r0. Подставляя в выражение для r0 и h0 заданное значение V, получим искомый радиус и высоту

 

В городе имеются два склада муки и два хлебозавода. Ежедневно с первого склада вывозят 50 т муки, а со второго — 70 т на заводы, причем на первый — 40 т, а на второй — 80 т.

 

Обозначим через aij стоимость перевозки 1 т муки с i-го склада на j-й завод (i, j = 1,2). Пусть

 

a11 = 1,2 р., a12 = 1,6 р., a21 = 0,8 р., a22 = 1 р.

 

Как нужно спланировать перевозки, чтобы их стоимость была минимальной?

 

Придадим задаче математическую формулировку. Обозначим через x1 и x2 количество муки, которое надо перевезти с первого склада на первый и второй заводы, а через x3 и x4 — со второго склада на первый и второй заводы соответственно. Тогда:

 

x1 + x2 = 50, x3 + x4 = 70, x1 + x3 = 40, x2 + x4 = 80. (1)

 

Общая стоимость всех перевозок определяется формулой

 

f = 1,2x1 + 1,6x2 + 0,8x3 + x4.

 

С математической точки зрения, задача заключается в том, чтобы найти четыре числа x1, x2, x3 и x4, удовлетворяющие всем заданным условиям и дающим минимум функции f. Решим систему уравнений (1) относительно xi (i = 1, 2, 3, 4) методом исключения неизвестных. Получим, что

 

x1 = x4 – 30, x2 = 80 – x4, x3 = 70 – x4, (2)

 

а x4 не может быть определено однозначно. Так как xi і0 (i = 1, 2, 3, 4), то из уравнений (2) следует, что 30Јx4Ј70. Подставляя выражение для x1, x2, x3 в формулу для f, получим

 

f = 148 – 0,2x4.

 

Легко видеть, что минимум этой функции достигается при максимально возможном значении x4, то есть при x4 = 70. Соответствующие значения других неизвестных определяются по формулам (2): x1 = 40, x2 = 10, x3 = 0.

 

 

Пусть N(0) — исходное количество атомов радиоактивного вещества, а N(t) — количество нераспавшихся атомов в момент времени t. Экспериментально установлено, что скорость изменения количества этих атомов N'(t) пропорциональна N(t), то есть N'(t)=–λN(t), λ>0 — константа радиоактивности данного вещества.

Ррешение этого дифференциального уравнения имеет вид N(t) = N(0)e–λt. Время T, за которое число исходных атомов уменьшилось вдвое, называется периодом полураспада, и является важной характеристикой радиоактивности вещества. Для определения T надо положить в формуле Тогда Например, для радона λ = 2,084·10–6, и следовательно, T = 3,15 сут.

 

 

Коммивояжеру, живущему в городе A1, надо посетить города A2, A3 и A4, причем каждый город точно один раз, и затем вернуться обратно в A1. Известно, что все города попарно соединены между собой дорогами, причем длины дорог bij между городами Ai и Aj (i, j = 1, 2, 3, 4) таковы:

b12 = 30, b14 = 20, b23 = 50, b24 = 40, b13 = 70, b34 = 60.

 

Надо определить порядок посещения городов, при котором длина соответствующего пути минимальна.

 

Изобразим каждый город точкой на плоскости и пометим ее соответствующей меткой Ai (i = 1, 2, 3, 4). Соединим эти точки отрезками прямых: они будут изображать дороги между городами. Для каждой «дороги» укажем ее протяженность в километрах (рис. 2). Получился граф — математический объект, состоящий из некоторого множества точек на плоскости (называемых вершинами) и некоторого множества линий, соединяющих эти точки (называемых ребрами).

Более того, этот граф меченый, так как его вершинам и ребрам приписаны некоторые метки — числа (ребрам) или символы (вершинам). Циклом на графе называется последовательность вершин V1, V2, ..., Vk, V1 такая, что вершины V1, ..., Vk — различны, а любая пара вершин Vi, Vi+1 (i = 1, ..., k – 1) и пара V1, Vk соединены ребром. Таким образом, рассматриваемая задача заключается в отыскании такого цикла на графе, проходящего через все четыре вершины, для которого сумма всех весов ребер минимальна. Найдем перебором все различные циклы, проходящие через четыре вершины и начинающиеся в A1:

 

1) A1, A4, A3, A2, A1;

2) A1, A3, A2, A4, A1;

3) A1, A3, A4, A2, A1.

 

Найдем теперь длины этих циклов (в км): L1 = 160, L2 = 180, L3 = 200. Итак, маршрут наименьшей длины — это первый.

 

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

 

 

 

Рассмотрим несколько химических соединений, называемых нормальными алканами.

Они состоят из n атомов углерода и n + 2 атомов водорода (n = 1, 2 ...), связанных между собой так, как показано на рисунке 3 для n = 3. Пусть известны экспериментальные значения температур кипения этих соединений:

 

yэ(3) = – 42°, yэ(4) = 0°, yэ(5) = 28°, yэ(6) = 69°.

 

Требуется найти приближенную зависимость между температурой кипения и числом n для этих соединений. Предположим, что эта зависимость имеет вид

 

y = an + b,

 

где a, b — константы, подлежащие определению. Для нахождения a и b подставим в эту формулу последовательно n = 3, 4, 5, 6 и соответствующие значения температур кипения. Имеем исходную систему уравнений:

 

– 42 = 3a + b,

0= 4a + b,

28 = 5a + b,

69 = 6a + b.

 

Для определения наилучших a и b существует много разных методов. Воспользуемся наиболее простым из них. Выразим b через a из этих уравнений:

 

b = – 42 – 3a, b = – 4a, b= 28 – 5a, b = 69 – 6a.

 

Возьмем в качестве искомого b среднее арифметическое этих значений, то есть положим b = 16 – 4,5a. Подставим в исходную систему уравнений это значение b и, вычисляя a, получим для a следующие значения: a=37, a=28, a=28, a=36. Возьмем в качестве искомого a среднее значение этих чисел, то есть положим a=34. Итак, искомое уравнение имеет вид

 

y » 34n – 139.

 

Проверим точность модели на исходных четырех соединениях, для чего вычислим температуры кипения по полученной формуле:

 

yр(3) = – 37°, yр(4) = – 3°, yр(5) = 31°, yр(6) = 65°.

 

Таким образом, ошибка расчетов данного свойства для этих соединений не превышает 5°. Используем полученное уравнение для расчета температуры кипения соединения с n = 7, не входящего в исходное множество, для чего подставим в это уравнение n = 7: yр(7) = 99°. Результат получился довольно точный: известно, что экспериментальное значение температуры кипения yэ(7) = 98°.

 

 

Здесь мы рассмотрим пример вероятностной модели. Сначала приведем некоторые сведения из теории вероятностей — математической дисциплины, изучающей закономерности случайных явлений, наблюдаемых при многократном повторении опыта. Назовем случайным событием A возможный исход некоторого опыта. События A1, ..., Ak образуют полную группу, если в результате опыта обязательно происходит одно из них. События называются несовместными, если они не могут произойти одновременно в одном опыте. Пусть при n-кратном повторении опыта событие A произошло m раз. Частотой события A называется число W = m/n . Очевидно, что значение W нельзя предсказать точно до проведения серии из n опытов. Однако природа случайных событий такова, что на практике иногда наблюдается следующий эффект: при увеличении числа опытов значение практически перестает быть случайным и стабилизируется около некоторого неслучайного числа P(A), называемого вероятностью события A. Для невозможного события (которое никогда не происходит в опыте) P(A)=0, а для достоверного события (которое всегда происходит в опыте) P(A)=1. Если события A1, ..., Ak образуют полную группу несовместимых событий, то P(A1)+...+P(Ak)=1.

 

Пусть, например, опыт состоит в подбрасывании игральной кости и наблюдении числа выпавших очков X. Тогда можно ввести следующие случайные события Ai ={X = i}, i = 1, ..., 6. Они образуют полную группу несовместных равновероятных событий, поэтому P(Ai) = (i = 1, ..., 6).

 

Суммой событий A и B называется событие A + B, состоящее в том, что в опыте происходит хотя бы одно из них. Произведением событий A и B называется событие AB, состоящее в одновременном появлении этих событий. Для независимых событий A и B верны формулы

 

P(AB) = P(A)•P(B), P(A + B) = P(A) + P(B).

 

8) Рассмотрим теперь следующую задачу. Предположим, что в электрическую цепь последовательно включены три элемента, работающие независимо друг от друга. Вероятности отказов 1-го, 2-го и 3-го элементов соответственно равны P1 = 0,1, P2 = 0,15, P3 = 0,2. Будем считать цепь надежной, если вероятность того, что в цепи не будет тока, не более 0,4. Требуется определить, является ли данная цепь надежной.

 

Так как элементы включены последовательно, то тока в цепи не будет (событие A), если откажет хотя бы один из элементов. Пусть Ai — событие, заключающееся в том, что i-й элемент работает (i = 1, 2, 3). Тогда P(A1) = 0,9, P(A2) = 0,85, P(A3) = 0,8. Очевидно, что A1A2A3 — событие, заключающееся в том, что одновременно работают все три элемента, и

 

P(A1A2A3) = P(A1)•P(A2)•P(A3) = 0,612.

 

Тогда P(A) + P(A1A2A3) = 1, поэтому P(A) = 0,388 < 0,4. Следовательно, цепь является надежной.

 

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


МАТЕМАТИЧЕСКАЯ МОДЕЛЬ Лекция 2

В общем случае математическая модель реального объекта, процесса или системы представляется в виде системы функционалов

 

Фi (X,Y,Z,t)=0,

 

где X - вектор входных переменных, X=[x1,x2,x3, ... , xN]t,

 

Y - вектор выходных переменных, Y=[y1,y2,y3, ... , yN]t,

 

Z - вектор внешних воздействий, Z=[z1,z2,z3, ... , zN]t,

 

t - координата времени.

 

Построение математической модели заключается в определении связей между теми или иными процессами и явлениями, создании математического аппарата, позволяющего выразить количественно и качественно связь между теми или иными процессами и явлениями, между интересующими специалиста физическими величинами, и факторами, влияющими на конечный результат.

 

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

 

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

 

Форма и принципы представления математической модели зависит от многих факторов.

 

По принципам построения математические модели разделяют на:

§ аналитические;

§ имитационные.

 

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

 

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

§ уравнения (алгебраические, трансцендентные, дифференциальные, интегральные),

§ аппроксимационные задачи (интерполяция, экстраполяция, численное интегрирование и дифференцирование),

§ задачи оптимизации,

§ стохастические проблемы.

 

Однако по мере усложнения объекта моделирования построение аналитической модели превращается в трудноразрешимую проблему. Тогда исследователь вынужден использовать имитационное моделирование.

 

В имитационном моделировании функционирование объектов, процессов или систем описывается набором алгоритмов.

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

Имитационное моделирование позволяет по исходным данным получить сведения о состояниях процесса или системы в определенные моменты времени, однако прогнозирование поведения объектов, процессов или систем здесь затруднительно. Можно сказать, что имитационные модели - это проводимые на ЭВМ вычислительные эксперименты с математическими моделями, имитирующими поведение реальных объектов, процессов или систем.

 

В зависимости от характера исследуемых реальных процессов и систем математические модели могут быть:

детерминированные,

стохастические.

 

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

Стохастическая модель учитывает случайный характер процессов в исследуемых объектах и системах, который описывается методами теории вероятности и математической статистики.

 

По виду входной информации модели разделяются на:

непрерывные,

дискретные.

Если информация и параметры являются непрерывными, а математические связи устойчивы, то модель - непрерывная. И наоборот, если информация и параметры - дискретны, а связи неустойчивы, то и математическая модель - дискретная.

По поведению моделей во времени они разделяются на:

статические,

динамические.

Статические модели описывают поведение объекта, процесса или системы в какой-либо момент времени. Динамические модели отражают поведение объекта, процесса или системы во времени.

 

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

изоморфные (одинаковые по форме),

гомоморфные (разные по форме).

 

Модель называется изоморфной, если между нею и реальным объектом, процессом или системой существует полное поэлементное соответствие. Гомоморфной - если существует соответствие лишь между наиболее значительными составными частями объекта и модели.

 

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

 

Первая буква:

 

Д - детерминированная,

 

С - стохастическая.

 

Вторая буква:

 

Н - непрерывная,

 

Д - дискретная.

 

Третья буква:

 

А - аналитическая,

 

И - имитационная.

 

Рассмотрим пример: исследование движения кривошипно-шатунного механизма (Рис. 2.1).

 

Рис. 2.1.

 

 

Для кинематического анализа этого механизма, прежде всего, необходимо построить его кинематическую модель. Для этого:

Заменяем механизм его кинематической схемой, где все звенья заменены жесткими связями;

Пользуясь этой схемой, мы выводим уравнение движения механизма;

Дифференцируя последнее, получаем уравнения скоростей и ускорения, которые представляют собой дифференциальные уравнения 1-го и 2-го порядка.

 

Запишем эти уравнения:

 

где С0– крайнее правое положение ползуна С:

 

r – радиус кривошипа AB;

 

l – длина шатуна BC;

 

φ– угол поворота кривошипа;

λ=r/l

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

§ нас не интересовали конструктивные формы и расположение масс, входящих в механизм тел, и все тела механизма мы заменили отрезками прямых. На самом деле, все звенья механизма имеют массу и довольно сложную форму. Например, шатун – это сложное сборное соединение, форма и размеры которого, конечно, будут влиять на движение механизма;

§ при построении математической модели движения рассматриваемого механизма мы также не учитывали упругость входящих в механизм тел, т.е. все звенья рассматривали как абстрактные абсолютно жесткие тела. В действительности же, все входящие в механизм тела – упругие тела. Они при движении механизма будут как-то деформироваться, в них могут даже возникнуть упругие колебания. Это все, конечно, также будет влиять на движение механизма;

§ мы не учитывали погрешность изготовления звеньев, зазоры в кинематических парах A, B, C и т.д.

§

Согласно этим обозначениям, описанная модель кривошипно-шатунного механизма (Рис. 2.1.) обозначается как модель вида ДНА (детерминированная, непрерывная, аналитическая), так как:

Отсутствует (точнее не учитывается) влияние случайных процессов, т.е. модель детерминированная (Д).

Информация и параметры - непрерывные, т.е. модель - непрерывная (Н),

Функционирование модели кривошипно-шатунного механизма описано в виде нелинейных трансцендентных уравнений, т.е. модель - аналитическая (А).

 

Если законы функционирования модели нелинейны, а моделируемые процесс или система обладают одной степенью свободы (т.е. имеют одну независимую переменную), то такая модель, как правило, описывается одним нелинейным уравнением.

 

Необходимость отыскания корней нелинейных уравнений встречается в расчетах систем автоматического управления и регулирования, собственных колебаний машин и конструкций, в задачах кинематического анализа и синтеза, плоских и пространственных механизмов и других задачах.

Дано нелинейное уравнение: (4.1)

 

Необходимо решить это уравнение, т. е. найти его корень .

Рис. 4.1.

Если функция имеет вид многочлена степени m,

где ai - коэффициенты многочлена, то уравнение f(x)=0 имеет m корней (рис. 4.2).

Рис. 4.2.

 

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

 

Примеры:

 

Такие уравнения обычно имеют бесконечное множество решений.

Как известно, не всякое уравнение может быть решено точно. В первую очередь это относится к большинству трансцендентных уравнений.

 

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

 

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

 

Большинство употребляющихся приближенных методов решения уравнений являются, по существу, способами уточнения корней. Для их применения необходимо знание интервала изоляции [a,b], в котором лежит уточняемый корень уравнения (рис. 4.3).

Рис. 4.3.

Процесс определения интервала изоляции [a,b], содержащего только один из корней уравнения, называется отделением этого корня.

Процесс отделения корней проводят исходя из физического смысла прикладной задачи, графически, с помощью таблиц значений функции f(x) или при помощи специальной программы отделения корней. Процедура отделения корней основана на известном свойстве непрерывных функций: если функция непрерывна на замкнутом интервале [a,b] и на его концах имеет различные знаки, т.е. f(a)f(b)<0, то между точками a и b имеется хотя бы один корень уравнения (1). Если при этом знак функции f'(x) на отрезке [a,b] не меняется, то корень является единственным на этом отрезке.

 

Процесс определения корней алгебраических и трансцендентных уравнений состоит из 2 этапов:

отделение корней, - т.е. определение интервалов изоляции [a,b], внутри которого лежит каждый корень уравнения;

уточнение корней, - т.е. сужение интервала [a,b] до величины равной заданной степени точности ε .

 

Для алгебраических и трансцендентных уравнений пригодны одни и те же методы уточнения приближенных значений действительных корней:

§ метод половинного деления (метод дихотомии);

§ метод простых итераций;

§ метод Ньютона (метод касательных);

§ модифицированный метод Ньютона (метод секущих);

§ метод хорд и др.

 

Метод половинного деления

 

Дано нелинейное уравнение: (4.1)

Найти корень уравнения, принадлежащий интервалу [a,b], с заданной точностью ε .

 

Для уточнения корня методом половинного деления последовательно осуществляем следующие операции:

1. Делим интервал пополам:

В качестве нового интервала изоляции принимаем ту половину интервала, на концах которого функция имеет разные знаки (рис.4.4).

 

Рис. 4.4.

Для этого:

a) Вычисляем значение функции f(x) в точках a и t.

b) Проверяем: если f(a)f(t) < 0, то корень находится в левой половине интервала [a,b] (рис.4.4.а). Тогда отбрасываем правую половину интервала и делаем переприсвоение b=t.

 

c) Если f(a)f(t) < 0 не выполняется, то корень находится в правой половине интервала [a,b] (рис.4.4.б). Тогда отбрасываем левую половину и делаем переприсвоение a=t. В обоих случаях мы получим новый интервал [a,b] в 2 раза меньший предыдущего.

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

 

Схема алгоритма уточнения корней по методу половинного деления представлена на рис. 4.5.

 

 

Рис. 4.5. Схема алгоритма уточнения корней по методу половинного деления


Метод простых итераций

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

Пусть с точностью необходимо найти корень уравнения f(x)=0, принадлежащий интервалу изоляции [a,b]. Функция f(x) и ее первая производная непрерывны на этом отрезке.

Для применения этого метода исходное уравнение f(x)=0 должно быть приведено к виду (4.2)

В качестве начального приближения 0 выбираем любую точку интервала [a,b].

Далее итерационный процесс поиска корня строится по схеме:

(4.3)

В результате итерационный процесс поиска реализуется рекуррентной формулой (4.3). Процесс поиска прекращается, как только выполняется условие (4.4)

или число итераций превысит заданное число N.

Для того, чтобы последовательность х1, х2,…, хn приближалась к искомому корню, необходимо, чтобы выполнялось условие сходимости: (4.5)

 

 

Рис. 4.6. Геометрический смысл метода

Переходим к построению схемы алгоритма (рис. 4.7). Вычисление функции оформим в виде подпрограммы.

Рис. 4.7. Схема алгоритма уточнения корня методом итераций

 

Метод Ньютона (метод касательных)

 

Рассмотренные ранее методы решения нелинейных уравнений являются методами прямого поиска. В них для нахождения корня используется нахождение значения функции в различных точках интервала [a,b].

Метод Ньютона относится к градиентным методам, в которых для нахождения корня используется значение производной.

Дано нелинейное уравнение:

f(x)=0

Найти корень на интервале [a,b] с точностью .

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

Рис. 4.8.

Выберем начальную точку x0=b (конец интервала изоляции). Находим значение функции в этой точке и проводим к ней касательную, пересечение которой с осью Х дает нам первое приближение корня x1.

 

x1 = x0 – h0,

где

Поэтому

В результате итерационный процесс схождения к корню реализуется рекуррентной формулой

(4.6)

Процесс поиска продолжаем до тех пор, пока не выполнится условие: (4.7)

Упростим условие (4.7), исходя из (4.6). Получим:

(4.8)

Метод обеспечивает быструю сходимость, если выполняется условие: (4.9)

т.е. первую касательную рекомендуется проводить в той точке интервала [a,b], где знаки функции f(x0) и ее кривизны f"(x0) совпадают.

Схема алгоритма уточнения корня метод Ньютона приведена на рис. 4.9

Рис. 4.9. Схема алгоритма уточнения корня методом Ньютона

Модифицированный метод Ньютона (метод секущих)

В этом методе для вычисления производных на каждом шаге поиска используется численное дифференцирование по формуле:

 

Тогда рекуррентная формула (4.6) будет иметь вид: (4.10)

где

 

Метод хорд

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

При этом в процессе поиска семейство хорд может строиться:

а) при фиксированном левом конце хорд, т.е. z=a, тогда начальная точка х0=b (рис. 4.10а);

б) при фиксированном правом конце хорд, т.е. z=b, тогда начальная точка х0=a (рис. 4.10б);

Рис. 4.10.

В результате итерационный процесс схождения к корню реализуется рекуррентной формулой:

для случая а) (4.11)

 

для случая б) (4.12)

Процесс поиска продолжается до тех пор, пока не выполнится условие (4.13)

 

 

Метод обеспечивает быструю сходимость, если f(z)f"(z) > 0, т.е. хорды фиксируются в том конце интервала [a,b], где знаки функции f(z) и ее кривизны f"(z) совпадают.

Схема алгоритма уточнения корня методом хорд представлена на рис. 4.11.

Рис. 4.11. Схема алгоритма уточнения корня методом хорд


Имитационное моделирование

Компьютерное моделирование как новый метод научных исследований основывается на: построении математических моделей для описания изучаемых процессов;

использовании новейших вычислительных машин, обладающих высоким быстродействием (миллионы операций в секунду) и способных вести диалог с человеком.

 

Суть компьютерного моделирования состоит в следующем: на основе математической модели с помощью ЭВМ проводится серия вычислительных экспериментов, т.е. исследуются свойства объектов или процессов, находятся их оптимальные параметры и режимы работы, уточняется модель. Например, располагая уравнением, описывающим протекание того или иного процесса, можно изменяя его коэффициенты, начальные и граничные условия, исследовать, как при этом будет вести себя объект. Имитационные модели - это проводимые на ЭВМ вычислительные эксперименты с математическими моделями, имитирующими поведение реальных объектов, процессов или систем.

 

Реальные процессы и системы можно исследовать с помощью двух типов математических моделей: аналитических и имитационных.

 

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

Имитационное моделирование представляет собой численный метод проведения на ЭВМ вычислительных экспериментов с математическими моделями, имитирующими поведение реальных объектов, процессов и систем во времени в течении заданного периода. При этом функционирование РПС разбивается на элементарные явления, подсистемы и модули. Функционирование этих элементарных явлений, подсистем и модулей описывается набором алгоритмов, которые имитируют элементарные явления с сохранением их логической структуры и последовательности протекания во времени.

Имитационное моделирование - это совокупность методов алгоритмизации функционирования объектов исследований, программной реализации алгоритмических описаний, организации, планирования и выполнения на ЭВМ вычислительных экспериментов с математическими моделями, имитирующими функционирование РПС в течении заданного периода.

 

Под алгоритмизацией функционирования РПС понимается пооперационное описание работы всех ее функциональных подсистем отдельных модулей с уровнем детализации, соответствующем комплексу требований к модели.

 

"Имитационное моделирование" (ИМ)- это двойной термин. "Имитация" и "моделирование" - это синонимы. Фактически все области науки и техники являются моделями реальных процессов. Чтобы отличить математические модели друг от друга, исследователи стали давать им дополнительные названия. Термин "имитационное моделирование" означает, что мы имеем дело с такими математическими моделями, с помощью которых нельзя заранее вычислить или предсказать поведение системы, а для предсказания поведения системы необходим вычислительный эксперимент (имитация) на математической модели при заданных исходных данных.

Основное достоинство ИМ:

§ возможность описания поведения компонент (элементов) процессов или систем на высоком уровне детализации;

§ отсутствие ограничений между параметрами ИМ и состоянием внешней среды РПС;

§ возможность исследования динамики взаимодействия компонент во времени и пространстве параметров системы;

 

Эти достоинства обеспечивают имитационному методу широкое распространение.

Рекомендуется использовать имитационное моделирование в следующих случаях:

§ Если не существует законченной постановки задачи исследования и идет процесс познания объекта моделирования. Имитационная модель служит средством изучения явления.

§ Если аналитические методы имеются, но математические процессы сложны и трудоемки, и имитационное моделирование дает более простой способ решения задачи.

§ Когда кроме оценки влияния параметров (переменных) процесса или системы желательно осуществить наблюдение за поведением компонент (элементов) процесса или системы (ПС) в течение определенного периода.

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

§ Когда необходимо контролировать протекание процессов или поведение систем путем замедления или ускорения явлений в ходе имитации.

§ При подготовке специалистов для новой техники, когда на имитационных моделях обеспечивается возможность приобретения навыков в эксплуатации новой техники.

§ Когда изучаются новые ситуации в РПС. В этом случае имитация служит для проверки новых стратегий и правил проведения натурных экспериментов.

§ Когда особое значение имеет последовательность событий в проектируемых ПС и модель используется для предсказания узких мест в функционировании РПС.

Однако ИМ наряду с достоинствами имеет и недостатки:

§ Разработка хорошей ИМ часто обходится дороже создания аналитической модели и требует больших временных затрат.

§ Может оказаться, что ИМ неточна (что бывает часто), и мы не в состоянии измерить степень этой неточности.

§ Зачастую исследователи обращаются к ИМ, не представляя тех трудностей , с которыми они встретятся и совершают при этом ряд ошибок методологического характера.

 

И тем не менее ИМ является одним из наиболее широко используемых методов при решении задач синтеза и анализа сложных процессов и систем.

Одним из видов имитационного моделирования является статистическое имитационное моделирование, позволяющее воспроизводить на ЭВМ функционирование сложных случайных процессов.

 

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

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

Подмечено, что введение случайных возмущений в имитационные модели не вносит принципиальных усложнений, поэтому исследование сложных случайных процессов проводится в настоящее время, как правило, на имитационных моделях.

В вероятностном имитационном моделировании оперируют не с характеристиками случайных процессов, а с конкретными случайными числовыми значениями параметров ПС. При этом результаты, полученные при воспроизведении на имитационной модели рассматриваемого процесса, являются случайными реализациями. Поэтому для нахождения объективных и устойчивых характеристик процесса требуется его многократное воспроизведение, с последующей статистической обработкой полученных данных. Именно поэтому исследование сложных процессов и систем, подверженных случайным возмущениям, с помощью имитационного моделирования принято называть статистическим моделированием.

Статистическая модель случайного процесса - это алгоритм, с помощью которого имитируют работу сложной системы, подверженной случайным возмущениям; имитируют взаимодействие элементов системы, носящих вероятностный характер.

При реализации на ЭВМ статистического имитационного моделирования возникает задача получения на ЭВМ случайных числовых последовательностей с заданными вероятностными характеристиками. Численный метод, решающий задачу генерирования последовательности случайных чисел с заданными законами распределения, получил название "метод статистических испытаний" или "метод Монте-Карло".

Так как метод Монте-Карло кроме статистического моделирования имеет приложение к ряду численных методов (взятие интегралов, решение уравнений), то целесообразно иметь различные термины.

Итак, статистическое моделирование - это способ изучения сложных процессов и систем, подверженных случайным возмущениям, с помощью имитационных моделей.

Метод Монте-Карло - это численный метод, моделирующий на ЭВМ псевдослучайные числовые последовательности с заданными вероятностными характеристиками.

Методика статистического моделирования состоит из следующих этапов:

Моделирование на ЭВМ псевдослучайных последовательностей с заданной корреляцией и законом распределения вероятностей (метод Монте-Карло), имитирующих на ЭВМ случайные значения параметров при каждом испытании;

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

Статистическая обработка результатов моделирования.

Обобщенный алгоритм метода статистических испытаний представлен на рис. 5.1.

 

 

Рис. 5.1. Обобщенный алгоритм метода статистических испытаний

Simulink– главный пакет расширения системы MATLAB, реализующий имитационное блочное визуально ориентированное моделирование систем и устройств как самого общего, так и конкретного назначения.

Разработчики системы MATLAB + Simulink отказались от конкуренции с разработчиками программ узкого назначения, например схемотехнического. Они сосредоточили свое внимание на решении куда более важной и сложной задачи моделировании блочных динамических систем и устройств произвольного назначения. Это физические и химические системы и устройства, электротехнические устройства (и даже целые энергетические системы), механические системы и устройства и т. д. и т. п. Для этого пришлось существенно расширить библиотеки компонентов таких систем и устройств, с одной стороны, а с другой – применить укрупненные модели ряда компонентов. Именно благодаря этому возможно моделирование сложных систем и устройств.

Одной из самых сложных проблем в реализации математического моделирования в среде системы MATLAB стала подготовка модели моделируемой системы или устройства. Модель обычно представляется в форме графического, табличного или таблично-топологического описания. При этом необходимо предусмотреть организацию связей между компонентами и установку их, подчас многих, параметров. После этого надо запустить созданную модель на исполнение, то есть задать решение автоматически составленной системы уравнений состояния и вывод результатов решения. Это также представляет собой достаточно сложную проблему.

Все эти проблемы блестяще решены введением в MATLAB второй важной части системы – расширения Simulink. Это расширение реализует по существу визуально-ориентированное программирование задач автоматического составления графической модели системы или устройства, составления и решения ее уравнений состояния и наглядного представления результатов моделирования.

 

После инсталляции Simulink (отдельно от MATLAB или в его составе) он автоматически интегрируется с MATLAB. Внешне это выражается появлением кнопки Simulink в панели инструментов (перед кнопкой ?) системы MATLAB. При нажатии этой кнопки открывается окно интегрированного браузера библиотек, показанное на рис. 1.1.

Нетрудно заметить, что пользовательский интерфейс окна браузера выполнен в общем стиле, характерном для Проводника Windows 95/98/2000/XP. Это позволяет отказаться от детального описания его особенностей. Отметим лишь главные возможности работы с браузером.

В окне браузера содержится дерево компонентов библиотек Simulink. Для просмотра того или иного раздела библиотеки достаточно выделить его мышью в правой части окна Simulink Browser Library появится набор пиктограмм компонентов активного раздела библиотеки. На рис. 1.1 показан основной раздел библиотеки Simulink. У версии Simulink 5.0 число разделов библиотеки возросло с 8 до 10 по сравнению с Simulink 4. Новыми являются подразделы верификации моделей Model Verification и построения субсистем Subsystems. Но уже в версии 5.1 число разделов библиотеки выросло до 13.

С помощью меню браузера или кнопок его панели инструментов можно открыть окно для создания новой модели или загрузить существующую. Работа с Simulink происходит на фоне открытого окна системы MATLAB, в котором нередко можно наблюдать за выполняемыми операциями – если их вывод предусмотрен программой моделирования.

Интеграция пакета Simulink с системой MATLAB имеет глубокий смысл. Прежде всего надо отметить, что любые манипуляции с диаграммой модели (например, ввод блоков, создание и удаление линий между ними и т. д.) выполняются соответствующими командами системы MATLAB. Их описание можно найти в разделе справки Simulink → Function – By Category, а также в [33].

Эти команды (функции) делятся на четыре категории:

Model Construction – конструирование блоков (задание, уничтожение и сравнение блоков, операции с соединительными линиями и т. д.);

Simulation – управление процессом моделирования;

Linearization and Trimming – построение и применение линеаризированной модели;

• Data Type – работа с типами данных.

Однако знать эти команды подавляющему большинству пользователей нет необходимости, поскольку они используются автоматически в программе построения диаграммы (модели) и управления процессом моделирования. Она обычно называется S_функцией и генерируется автоматически. Это является важным достоинством визуально_ориентированного программирования в среде MATLAB + Simulink.

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

 



<== предыдущая лекция | следующая лекция ==>
Примеры математических моделей | Особенности интерфейса Simulink


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


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

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

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


 


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

 
 

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

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