Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


В.В.Апанасович, С.В.Гилевский,



Кафедра системного анализа

Методические указания

к выполнению лабораторных работ

по курсу «Математическое моделирование»

 

Для студентов специальностей

G 31 04 02 «РАДИОФИЗИКА»,

G 31 04 03 «ФИЗИЧЕСКАЯ ЭЛЕКТРОНИКА»

 

 

МИНСК


УДК

ББК

 

 

А в т о р ы:

В.В.Апанасович, С.В.Гилевский,

В.М. Лутковский, С.М. Мельников

 

 

Р е ц е н з е н т

кандидат физико-математических наук, доцент В.А.Фираго

Рекомендовано Ученым советом

факультета радиофизики и электроники

25 февраля 2003 г., протокол № 7

Методические указания к выполнению лабораторных работ по курсу «Математическое моделирование» / В.В. Апанасович, С.В. Гилевский, В.М. Лутковский, С.М. Мельников. – Мн.: БГУ, 2003. – 28 с.

 

Пособие предназначено для студентов факультета радиофизики и электроники.

 

 

УДК

ББК

ã БГУ, 2003


 

 

ВВЕДЕНИЕ

 

Настоящее издание представляет собой руководство к выполнению лабораторного практикума по курсу «Математическое моделирование». Лабораторные работы выполняются в интегрированной вычислительной среде MATLAB. Тематика практикума охватывает алгоритмы программной генерации случайных непрерывных и дискретных распределений, Пуассоновского потока случайных событий, методы тестирования разработанных генераторов, а также посвящены изучению возможностей среды MATLAB и его расширения – Simulink. Приведенные справочные теоретические сведения содержат достаточный объем информации, исключающий необходимость прибегать к другим источникам. Разделы методических указаний, посвященные изучению возможностей среды MATLAB для обработки и визуализации данных, для моделирования типовых радиофизических систем снабжены подробными примерами, облегчающими студентам освоение нового материала. Большой набор заданий с различным уровнем сложности дает возможность при проведении занятий учитывать способности и уровень каждого студента.

Лабораторная работа № 1

Функции системы MATLAB

Цель работы. Изучение основных функций системы MATLAB. Создание новых функций и построение их графиков в среде MATLAB. Решение систем линейных уравнений. Изучение генератора базовой случайной величины.

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

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

Пример построения графика функции на экране монитора

> > x=0: 0.1: 6.28 % вектор значений аргумента 0< x< 6, 28, (шаг 0.1)

> > y=sin(x); % точка с запятой отключает вывод чисел на экран

> > plot(x, y) % построение графика функции

> > title (‘ Function sin(x) ’) % надпись в верхней части экрана

> > xlabel(‘ argument X’) % надпись по оси x

> > ylabel(‘ function Y ’) % надпись по оси y

Программу для системы MATLAB можно написать в любом текстовом редакторе, оформив ее как файл с расширением.m (например, mylab1.m). Имеется два варианта запуска такой программы на языке MATLAB:

· вызовом имени файла из командной строки (например, > > mylab1);

· с помощью команды Run, если файл не был предварительно открыт из окна MATLAB.

Следует помнить, что MATLAB первоначально обращается к каталогу, из которого открыт рабочий M-файл. Использование в качестве рабочих файлов имен функций, зарезервированных в системе MATLAB (sin, log, plot, hist, diff и др.), может нарушить ее нормальную работу. Поэтому не рекомендуется хранить создаваемые M-файлы в каталогах Matlab/Bin и Matlab/Toolbox. Рекомендуется для хранения M-файлов создать собственный рабочий каталог.

Загрузить систему MATLAB можно следующими способами:

· из старт-меню операционной среды Windows;

· двойным щелчком левой кнопки мыши по пиктограмме Matlab;

· из командной строки DOS путем набора имени командного файла “Matlab”, который последовательно загружает Windows, а затем Matlab. После загрузки пакета на экране монитора появляется окно интерпретатора команд. Приглашение интерпретатора для ввода очередной команды имеет вид “> > ”. Примечание: вводимые команды далее указаны курсивом!

Первоначальное знакомство с пакетом Matlab лучше всего начать с набора команды “intro”, которая запускает обучающую программу. Язык интерпретатора команд Matlab прост и легко поддается изучению. С основными возможностями пакета Matlab можно также ознакомиться и по демонстрационным примерам. Для их просмотра необходимо выполнить команду “demo”. По этой команде в окне интерпретатора команд появляется меню, позволяющее выбрать интересующий нас пример. Чтобы прервать выполнение демонстра-ционной программы, нажмите клавиши< Ctrl + C>.

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

 

Строка определения функции: function f=fact(n)

H1 строка % FACT Factorial.

Строки комментария % FACT(N) returns the factorial of N

% FACT(N) is PROD(1: N).

Тело функциии f=prod(1: n);

MATLAB отображает Н1 строку при вызове помощи по целой директории или использовании оператора lookfor. Все строки комментария выводятся по команде > > help fact.

Порядок выполнения

1. Запустить пакет на выполнение двойным щелчком по иконке и войти в командное окно. Признаком готовности к работе служит символ > >. Командой “intro” запустить серию слайдов – введение в систему Matlab.

2. Ввести команду “demo”. Посредством выбора различных примеров познакомиться с вычислительными и графическими возможностями пакета Matlab. Обратить внимание на способы генерации векторов и матриц. Все действия (+, –, *, /, ^) выполняются над матрицами. Точка перед *, /, ^ означает действия над их элементами!

3. Получить индивидуальное задание (см. табл. 1.1). Запро-граммировать функцию, заданную полиномом y= axm+ bxm-1 +c. Для этого в командном окне выбрать группу команд File/ New/M-file, открыть блокнот и создать файл myfunc01.m, первая строка которого имеет вид function y= myname(x). При сохранении файла указать имя файла: myname.m, тип файла: Все файлы (*.*).

4. Построить график заданной функции с использованием команды “plot” (см.> > help plot ) на заданном интервале [x1, x2].

5. Озаглавить график функции и оси координат с использованием команд title, xlabel, ylabel (смотри help title и т.д.).

6. С помощью команды > > help изучить функции hist, text, disp, grid, hold on, quad (нахождение определенного интеграла), mean, inv.

7. Получить решение заданной системы линейных уравнений вида Ax = B , A квадратная матрица n ´ n, B вектор размерности n. Примеры индивидуальных заданий приведены в табл. 1.2.

8. Изучить функции генерации случайных чисел rand, randn. Построить гистограммы для выборок из N=100 чисел. Найти математическое ожидание и доверительный интервал для выборочного среднего.

Форма отчета. Формой отчета являются М-файлы, реализующие задания, представленные в разделе “Порядок выполнения”. В строках комментария необходимо указать номер группы и фамилию. Если отчет подготовлен с опозданием, необходимо предоставить подробный протокол выполнения работы в распечатанном виде.

 

Таблица 1.1

Параметры функций

a b=c a b=c a b=c
–0.5
–0.5 –2 –2
–0.5
–0.5 –10 –10
–0.5 –40 –40
–0.5 –20 –20
0.5 –60 –60 0.8

Таблица 1.2

Коэффициенты систем линейных уравнений

Вариант A B Вариант A B Вариант A B
2 1 3 4 5 –1 1 –1 2 3 1 1
2 2 2 4 1 4 2 –2 3 –3 –2 1 -5
4 4 4 8 –1 1 3 1 2 3 2 1
5 1 4 4 –5 2 1 1 2 2 1 2
4 1 1 1 4 1 8 –1 1 –4 3 2 –5
1 2 1 1 2 3 1 1 1 3 2 1
4 –1 2 1 –6 2 3 3 2 4 3 2 1

 

Лабораторная работа № 2

Краткие сведения.

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

(2.1)

функция распределения случайной величины x. Тогда, если получена реализация z случайной величины a, равномерно распределенной на [0; 1], выборочное значение случайной величины x может быть определено как корень уравнения

F(x) = z. (2.2)

В тех случаях, когда уравнение (2.2) аналитически разрешимо относительно x, получается явная формула x = G(z) для разыгрывания ее выборочного значения x. В других случаях решение (2.2) может быть найдено приближенно или для ее разыгрывания x следует применить другие методы.

Примеры:

· Случайная величена x распределена равномерно на интервале [a; b], т.е. ее функция распределения имеет вид

Для получения алгоритма ее генерации необходимо решить уравнение (x – a)/(b – a) = z, откуда следует x = a + (b – a)z.

· Случайная величина x определена при x> a с плотностью

f(x)= l exp(–l(x–a)).

В этом случае уравнение (2.2) имеет вид 1 – exp(–l(x–a)) = z, откуда получаем x = a – ln(1 – z)/l. Поскольку случайные величины a и (1–a) распределены одинаково, для расчета выборочного значения x обычно применяют формулу x=a – ln(z)/l.

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

(2.3)

Доверительный интервал для математического ожидания. Интервал [j1; j2] называется доверительным интервалом для параметра a с коэффициентом доверия b, если вероятность P{j1< a< j2}= b. Для математического ожидания m случайной величины h при известной дисперсии sh2 и достаточно большом N (N> 30) доверительный интервал можно приближенно построить следующим образом:

, (2.4)

где yN* – оценка математического ожидания, полученная по формуле (2.3), xb корень уравнения

(2.5)

Соответствующие значения xb приводятся в справочниках по теории вероятности и математической статистике.

Оценка дисперсии. В качестве оценки дисперсии случайной величины h можно использовать выражение

(2.6)

Для определения D* требуются две ячейки в памяти компьютера для накапливания значений и

Критерий согласия c2. Множество возможных значений X случайной величины x (которая может быть как непрерывной, так и дискретной) разбивается на r попарно непересекающихся подмножеств X1, …, Xr, таких, что

P{x Î Xj} = pj > 0 при j = 1, 2, …, r.

Очевидно, p1 + … + pr =P{x Î X}=1. Легко видеть, что если выбрать N независимых значений случайной величины x, то среднее число этих значений, принадлежащих Xj, равно Npj. Пусть число действительно попавших в j-е множество выборочных значений x, получаемых с помощью программного генератора, равно ni. В качестве меры отклонения генерируемого распределения от заданного берется величина

(2.7)

которая при достаточно больших N распределена по закону c2 с r – 1 степенью свободы, плотность ее выражается формулой

(2.8)

Чтобы проверить качество генерируемых чисел необходимо зафиксировать вероятность b (число, близкое к единице). На практике обычно значение равно 0, 95, 0, 99 или 0, 999. Затем по таблицам распределения c2 по величине 1–b и r–1 требуется определить величину c2(r–1, 1–b), являющуюся корнем уравнения

(2.9)

В справочниках по теории вероятности и математической статистике приводятся таблицы значений. Если вычисленное по формуле (2.7) значение c2N удовлетворяет неравенству c2N < c2(r–1, 1–b), то гипотеза о совпадении законов распределения заданной случайной величины и моделируемой программным генератором принимается. Этот вывод, конечно, нельзя считать абсолютным. Если получаемая последовательность удовлетворяет критерию c2, это еще не означает, что она успешно пройдет проверку другими тестами.

В качестве замечания о применении критерия c2 необходимо отметить, что если N заранее ограничено, то нельзя выбирать r слишком большим, так как тогда будут малыми величины Npj и неустойчивыми значения nj. Обычно рекомендуют выбирать Xj так, чтобы минимальные Npj были не меньше чем 20.

Критерий согласия w2. Данный критерий позволяет проверить гипотезы о функции распределения F(x) одномерной непрерывной случайной величины x. Схема использования точно такая же, как схема использования критерия c2: фиксируется доверительная вероятность b, из уравнения

a1(xb)=b (2.10)

находится соответствующее значение xb (таблица функций a1(x) приводится в справочниках по теории вероятности и математической статистике); полученные с помощью программного генератора выборочные значения x1, …, xN располагаются в порядке возрастания; по формуле

(2.11)

вычисляется w2N; если w2N < xb, то гипотеза о совпадении функций распределения генерируемой случайной величины и заданной принимается. Применять критерий можно уже при N > 100.

 

Порядок выполнения

1. Разработать алгоритм моделирования заданной (см. ниже таблицу 2.1) непрерывной случайной величины и программно его реализовать в среде MATLAB.

2. Провести тестовую проверку созданного генератора:

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

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

· получить оценку дисперсии генерируемой случайной величины и сравнить ее с дисперсией заданной величины;

· проверить гипотезу о соответствии генерируемой случайной величины заданному распределению по критерию c2;

· проверить гипотезу о соответствии генерируемой случайной величины заданному распределению по критерию w2;

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

 

Форма отчета. М-файлы, реализующие задание.

 

Таблица 2.1

Для программной генерации

 

Вариант Плотность распределения Область задания
exp(-x) [0; ¥ ]
2exp(-2x) [0; ¥ ]
5exp(-5x) [0; ¥ ]
0.5exp(-x/2) [0; ¥ ]
0.2exp(-x/5) [0; ¥ ]
0.5 [0; 2]
0.1 [0; 10]
x/2 [0; 2]
3x2/8 [0; 2]
2x-3 [1; +¥ ]
24x-4 [2; +¥ ]
2(x+1) [-1; 0]
3(x-1)2 [1; 2]

Окончание табл. 2.1

1/(x ln2) [1; 2]
1/(xln5) [1; 5]
1.5x1/2 [0; 1]
1/(2x1/2) [1; 4]
cos(x) [0; π /2]
cos(x) [-π /2; 0]
sin(x) [0; π /2]
sin(2x) [0; π /2]
2cos(2x) [0; π /4]
3sin(x)cos2(x) [0; π /2]
3sin2(x)cos(x) [0; π /2]
1/(1+cos(x)) [0; π /2]

 

Лабораторная работа № 3

Моделирование дискретной

Случайной величины

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

Краткие сведения.

Моделирование дискретных случайных величин. Пусть задана дискретная случайная величина x, принимающая конечное или счетное множество значений {xi}, i = 1, 2, …, n, с вероятностями pi=P{x = xi}, (случай n = ¥ не исключается). Разделим отрезок [0, 1] на интервалы ai длины pi. Рассмотрим случайную величину a, равномерно распределенную на [0; 1]. Вероятность ее попадания в интервал равна длине этого интервала и, следовательно, совпадает с вероятностью pi того, что случайная величина x примет значение xi. Поэтому для получения реализации x случайной величины x необходимо разыграть значение z случайной величины a и определить интервал, в который оно попало. Если значение z попадает в интервал ai, величина x полагается равной xi. На рис. 3.1 приведена блок-схема алгоритма моделирования случайной величины a. Блок 1 генерирует значение z случайной величины a. В блоке 2 значение z присваивается переменной S, целая переменная i получает значение 1. В блоках 3, 4 величина S модифицируется, из нее вычитается значение pi = P{x=xi}. Такое вычитание производится с последовательным увеличением значения i на единицу в блоке 5 до тех пор, пока при некотором i £ n в блоке 4 не получится S < 0. Это и означает, что значение z попадает в интервал ai, следовательно, x принимает значение xi (блок 6).

Отметим, что в случае n = ¥ обычно задаются формулы для вычисления pi. Для повышения скорости моделирования иногда несколько первых значений p1, p2, …, pk следует подсчитать заранее. Тогда в программе расчет по формуле потребуется лишь для i > k. Если величина близка к единице, это будет случаться весьма редко, поскольку вероятность события i > k равна 1 – .

 

Рис. 3.1. Блок-схема алгоритма генерации

дискретного распределения

 

Порядок выполнения

1. Разработать алгоритм моделирования заданной (см. ниже таблицу 3.1) дискретной случайной величины и программно его реализовать в среде MATLAB.

2. Провести тестовую проверку созданного генератора:

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

· получить оценку дисперсии генерируемой случайной величины и сравнить ее с дисперсией заданной величины;

· проверить гипотезу о соответствии генерируемой случайной величины заданному распределению по критерию c2;

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

 

Форма отчета. М-файлы, реализующие задание.

 

Таблица 3.1

Для программной генерации

Вариант Распределение, множество значений
2
P{x=k}= 1/10; k = 1, 2, …, 10
P{x=ki}= pi; p={0.05; 0.45; 0.25; 0.15; 0.1}; k={1; 2; 3; 4; 5}
P{x=ki}= pi; p={0.35; 0.15; 0.35; 0.15}; k={3; 5; 7; 9}
P{x=ki}= pi; p={0.33; 0.33; 0.33; 0.01}; k={1; 2; 3; 100}
P{x=0}= p; P{x=1}= 1-p;
P{x=k}= pk(1-p); k=0, 1, …
P{x=k}= Cnk pk (1-p)n-k; k=0, 1, …, n
P{x=k}= ; k=0, 1, …

 

Окончание табл. 3.1

 

P{x=k}= ; k=1, 2, …
P{x=k}= 2-k-1; k=0, 1, …
P{x=k}= 2k/3k+1; k=0, 1, …
P{x=k}= 2/3k+1; k=0, 1, …
P{x=k}= 3/4k+1; k=0, 1, …
P{x=k}= 3k/4k+1; k=0, 1, …
P{x=k}= e-1/k!; k=0, 1, …
P{x=k}= 1/(2k k ln2); k=1, 2, …
P{x=k}= (1-1/e)k/ k; k=1, 2, …
P{x=k}= (ln2) k/(2k! ); k=0, 1, …
P{x=k}= (k+1)p2(1-p)k; k=0, 1, …
P{x=k}= (k+1)(k+2)p3(1-p)k/2; k=0, 1, …
P{x=k}= (k+1)(k+2)(k+3)p4(1-p)k/6; k=0, 1, …
P{x=k}= 2 kk-3 e-pk pk-2 / ((k-2)! ); k=2, 3, …
P{x=k}= kk-2 e-pk pk-1 / ((k-1)! ); k=1, 2, …
P{x=k}= logm(k+1)-logmk; k=1, 2, …, m-1
P{x=k}= ; k=0, 1, …

 

Лабораторная работа № 4

Краткие сведения.

Случайные потоки. При моделировании стохастических систем типичны ситуации, когда случайные воздействия, возникающие в процессе функционирования сложной системы, представляют собой последовательность событий, наступающих в отдельные моменты времени из интервала моделирования W = [T0; T]. Последовательность случайных событий определяется указанием лишь одной координаты момента времени появления. Такую последовательность называют случайным потоком.

Обозначим через xi момент наступления i-го события потока на W, i = 1, 2, …. Будем предполагать что моменты наступления событий упорядочены по возрастанию, т.е. T0 = x0 £ x1 £ … £ xi £ … £ T. Геометрически случайный поток можно изобразить в виде следующих друг за другом точек временной оси (рис. 4.1). Можно провести

Рис. 4.1. Поток случайных событий

 

аналогию между случайным вектором и случайным потоком. И в том и в другом случае речь идет о наборе зависимых компонентов. Но если у вектора число компонент фиксировано и не меняется от реализации к реализации, то поток характеризуется случайным числом компонент, которое иногда обращается в бесконечность, если W имеет бесконечную протяженность. Другими словами, о случайном потоке можно говорить как о случайном векторе со случайной размерностью. Наиболее важной характеристикой случайного потока является его интенсивность среднее число событий потока в единицу времени. Задача моделирования случайного потока заключается в последовательной генерации упорядоченных по возрастанию моментов наступления событий.

Моделирование потока Пуассона. Пуассоновские потоки случайных событий широко используются для описания случайных воздействий в системах обеспечения экспериментов в оптике, ядерной физике, радиофизике, локации. Поток Пуассона полностью определяется своей интенсивностью l(t). Число событий потока Пуассона m на W подчиняется распределению Пуассона

, (4.1)

где . Моделирование стационарного потока Пуассона (l = const) осуществляется по следующему рекуррентному алгоритму

ti = ti-1 – ln zi / l, (4.2)

где zi – реализация случайной величины равномерно распределенной на [0; 1]; t0=T0. Процесс моделирования продолжается до тех пор, пока очередное значение ti не превысит правую границу области W.

Оценка интенсивности случайного потока. Для построения оценки интенсивности случайного потока область задания потока разобьем на m неперекрывающихся интервалов. В качестве оценки интенсивности потока на i-м интервале можно использовать выражение

li*= ni/ (N· dt), (4.3)

где ni – количество событий, попавших в i-й интервал при N-кратном моделировании потока, dt – ширина интервала. Для нестационарных потоков при заданном N количество интервалов m необходимо выбирать руководствуясь устойчивостью значений ni ихарактерной величиной временной неоднородности.

22^21

Порядок выполнения

1. Разработать алгоритм моделирования заданного потока Пуассона и программно реализовать его в среде MATLAB.

2. Провести тестовую проверку созданного программного генератора:

· проверить гипотезу о соответствии распределения числа событий на интервале W, полученного по сгенерированной выборке, распределению Пуассона с параметром по критерию c2;

· построить графики заданной интенсивности потока Пуассона и оценки интенсивности генерируемого потока.

 

Форма отчета. М-файлы, реализующие задание.

 

Таблица 4.1

Лабораторная работа № 5

С помощью simulink

Цель работы. Знакомство с пакетом визуального динамического моделирования SIMULINK, создание моделей радиофизических систем, их отладка и проведение экспериментов с полученными моделями.

Краткие сведения. SIMULINK представляет собой расширение системы MATLAB и предназначен для моделирования динамических систем, например таких, как системы радиотехнического профиля, системы регистрации и обработки данных, управления, контроля и т.д. Системы могут быть непрерывными, дискретными или смешанными. Работа с SIMULINK состоит из трех этапов: создание модели, отладка и экспериментальная апробация модели.

Разработка моделей средствами SIMULINK (S-моделей) основана на технологии drag-and-drop (перетащить и оставить). В качестве «кирпичей» для построения S-моделей используются модули (или блоки), хранящиеся в библиотеке SIMULINK.

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

Для построения моделей радиофизических систем будет использован узкополосный резонансный фильтр 2-го порядка, характеристики которого задаются коэффициентами блока Zero-Pole библиотеки Linear. Симметричный фильтр 2-го порядка с единичным коэффициентом усиления на резонансной частоте имеет передаточную характеристику

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

Представленный фильтр имеет один ноль (корень числителя передаточной характеристики) равный нулю.

Порядок выполнения

1. Запуск SIMULINK: в командной строке MATLAB после < < набрать simulink и нажать клавишу Enter.

2. Изучить содержимое стандартных библиотек блоков: в окне simulink раскрыть библиотеки Sources, Sinks, Linear.

3. Работа с демонстрационной программой Sums & Products: в окне simulink два щелчка мышью по блоку Extrac / DEMOS (SIMULINK demos.)/ Sums & Products / в окне sumprod Simulation / Start / " раскрыть" последовательно блоки генерации сигналов (Signal Gen.) и индикаторы (Scope), провести сравнительный анализ вида и параметров входных и выходных сигналов/ Simulation / Stop / закрыть окно sumprod. Выполнение команд Simulation / Stop необходимо для корректного выполнения закрытия окна sumprod.

4. Создание модели " Генератор сигнала и индикатор ", приведенной на рис. 5.1:

 
 
Рис.5.1. Модель " Генератор сигнала и индикатор"

 


· Создать рабочее окно untitled: в окне simulink выполнить команды: File / New.

· В окне simulink раскрыть библиотеку Sources, выделить мышью блок Signal Gen. и перетащить его в окно untitled.

· В окне simulink раскрыть библиотеку Sinks, выделить мышью блок Scope и перетащить его в окно untitled.

· Соединить блоки в окне untitled, проведя мышью линию от выхода блока Signal Gen. к входу блока Scope, при этом стрелка укажет направление передачи информации.

· Установить параметры отдельных блоков: двойной щелчок по блоку Signal Gen. / выбрать синусоиду, установить Frequency: 10 и Peak: 1; двойной щелчок по блоку Scope / установить Horizontal Range: 6.28, Vertical Range: 1.

· Установить параметры моделирования: Simulation / Parametrs… / Euler / Start Time: 0.0, Stop Time: 999999, Min Step Size: 0.001, Max Step Size: 0.0001, Tolerance: 1e-3.

· Запустить модель на выполнение: Simulation / Parametrs… / Start. Во время работы можно менять параметры блоков модели, не останавливая процесс моделирования. Например, дважды щелкнув по блоку Signal Gen., можно изменить вид сигнала и/или его частоту.

5.

 
 

Создание модели " Детектор ", представленной на рис. 5.2:

 
 
Рис.5.2. Модель " Детектор"

 


· Создать новое рабочее окно untitled: File / New.

· В окне simulink раскрыть библиотеку Sources, выделить мышью блок Signal Gen. и перетащить его в окно untitled, а затем аналогично поступить с блоком White Noise.

· В окне simulink раскрыть библиотеку Sinks, выделить мышью блок Scope и перетащить его в окно untitled.

· В окне simulink раскрыть библиотеку Linear, выделить блок Zero-Pole и перетащить его мышью в окно untitled, а затем то же самое сделать с блоком Sum и блоком Gain.

· Дублирование блоков: блоки Scope и Signal Gen. в окне untitled удваиваются, если при их перетаскивании мышью удерживать нажатой клавишу Ctrl.

· Соединить блоки: перед соединением блоков линиями необходимо, чтобы сумматор Sum имел три входа. Для этого нужно сделать двойной щелчок по блоку Sum/ установить List of signs: +++/ Ok; ответвления от линий можно рисовать, удерживая клавишу Ctrl, а удаление неудачно или неправильно проведенных линий или вставленных блоков производится клавишей Delete предварительно выделенных одного или нескольких элементов.

· Установить параметры отдельных блоков модели: для блока Signal Gen. выбрать синусоиду, установить Frequency: , Peak: 1; для блока Signal Gen.1 – такие же параметры, только Frequency: ; для блока White Noise установить Unitial Seed: произвольное целое число; для блока Gain – Gain: K; для блока Zero-Pole устанавливаем значения параметров при и 0.005: Zeros: [ 0 ], Pole: [– * 0.005+i * * 0.9999875, – * 0.005 i * * 0.9999875 ], Gain: [ * 0.01 ]; для индикатора Scope1 устанавливаем: Vertical Range: 3K; для индикатора Scope2 устанавливаем: Vertical Range: 2+3K; для индикатора Scope3 и Scope – Vertical Range: 1.Для всех индикаторов – Horizontal Range: 6.28. Значения параметров , иK выбираются из таблицы 5.1 в соответствии с выполняемым вариантом.

· Установить параметры моделирования, аналогичные параметрам предыдущей модели.


Поделиться:



Популярное:


    Последнее изменение этой страницы: 2017-03-03; Просмотров: 550; Нарушение авторского права страницы


    lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.135 с.)
    Главная | Случайная страница | Обратная связь