МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


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


Целительная привычка


Как самому избавиться от обидчивости


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


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


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


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


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

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





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

«Знакомство с системой автоматизированного моделирования и параметрической оптимизации автоматических устройств СИАМ»

Волгоград 2012

 

Рассмотрены и одобрены на заседании цикловой комиссии «Комиссия автоматизированных систем управления, вычислительной техники и прикладной математики»: Протокол №____ от «___»__________200__г.    
     
 
Составитель: к.ф.-м.н., доцент Казаков Н.В. –старший преподаватель специальных дисциплин ВКГН

 

СОДЕРЖАНИЕ

1. Цель работы.. 4

2. Краткие теоретические сведения. 4

3. Задание к выполнению... 28

4. Контрольные вопросы.. 29

5. Рекомендуемая литература.. 29

 


Цель работы: научиться проводить моделирование автоматических систем и строить их частотные характеристики в СИАМ.

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

В СИАМ имеется 4 основных режима работы:

- режим ввода модели;

- режим имитационного моделирования;

- режим параметрической оптимизации;

- режим построения частотных характеристик.

Каждый из этих режимов отличается назначением функциональных клавишей и видом графического экрана, но две клавиши не меняют своего назначения во всех случаях: F1 обеспечивает доступ к встроенной контекстно-зависимой справочной службе, а ESC - отказ от выбранного продолжения (ESC в режиме ввода модели используется как команда выхода из СИАМ). Кроме того, не меняется и функциональное назначение отдельных зон графического экрана: верхняя строка-меню указывает назначение функциональной клавиатуры в текущем режиме работы, средняя зона - это рабочее окно, в котором отображается структурная схема модели, нижняя зона используется СИАМ для оперативного построения графиков, организации диалога c пользователем и вывода некоторой справочной информации.

2.1 Режим ввода модели

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

F1-Пмщ - Вызвать справочную службу СИАМ.

F2-Блок - Перейти к подрежиму ввода блока и исходящей из него линии.

F3-Перо - Поднять/опустить "перо"; при опущенном "пере" слово "Перо" в меню выделяется негативным изображением.

F4-Ред - Перейти к режиму редактирования блоков.

F5-Диск - Записать блок-схему на диск или читать ее с диска.

F6-Окно - Показать/убрать окно-подсказку в нижней зоне экрана.

F7-Мод - Перейти к режиму имитационного моделирования.

F8-Опт - Перейти к режиму параметрической оптимизации.

F9-ЛЧХ - Перейти к режиму построения частотных характеристик.

ESC-Конец- Выйти из СИАМ.

Кроме того, в режиме ввода модели могут использоваться следующие клавиши:

- клавиши, обозначенные стрелками вверх, вниз, влево и вправо (далее условимся их называть клавишами управления курсором)-

для перемещения графического курсора по экрану;

- клавиши "PgUp", "PgDn", Home", "End" - для смещения структурной схемы в рабочем окне, соответственно, вниз, вверх,

вправо и влево относительно границ окна;

- клавиша "Ins" - для включения/отключения звукового сигнала;

- клавиша "Del" - для уничтожения блока или линии (см. п.3.1.4).

Кроме того, некоторые функциональные клавиши модифицируют свое действие, если они нажаты совместно со сдвиговыми клавишами (Alt, Shift или Ctrl). Совместное нажатие сдвиговой и функциональной клавишей (например, Alt и F2) осуществляется следующим образом. Сначала нужно нажать сдвиговую клавишу (Alt), затем, не отпуская ее, функциональную клавишу (F2), после чего обе клавиши можно отпустить. Такое совместное нажатие в дальнейшем обозначается плюсом, например Alt+F2. Ниже кратко описаны дополнительные возможности клавиатуры в режиме ввода модели.

Alt+F1 - настроить программу на работу с нужным знакогенератором (см. п.2).

Alt+F2 - позиционировать курсор на блок с нужным номером (см. п.3.1.6).

Alt+F3 - указать начало длинной или составной линии (см. п.3.1.2).

Ctrl+F3- указать конец длинной или составной линии и вычертить ее (см. п.3.1.2).

Alt+F4 - выделить блок с указанным номером перед переходом к его редактированию (см. п.3.1.3).

Alt+F6 - перейти к режиму быстрого поиска нужного фрагмента модели (см. п.3.1.6).

Ctrl+F6- задать масштаб изображения и перейти к быстрому поиску фрагмента модели (см. п.3.1.6).

Средняя зона экрана используется для отображения структурной схемы или ее фрагмента. Структурная схема может смещаться относительно окна приблизительно на 100 линейных размеров экрана по горизонтали и 300 - по вертикали. Схема смещается автоматически всякий раз, когда перемещаемый пользователем курсор достигает границ окна, а также клавишами "PgUp",...,"End" (см.выше).Однако при любом смещении в окне видна хотя бы часть структуры.

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

В рабочем окне всегда виден мигающий графический курсор. С ним отождествляется "перо", которое можно опускать или поднимать с помощью клавиши F3 , работающей в режиме двоичного переключателя. В зависимости от состояния пера меняется вид курсора: если перо поднято, курсор имеет вид кружка с точкой в центре, при опущенном пере - вид галочки, ориентированной по направлению перемещения курсора. Перемещение курсора с опущенным пером оставляет видимый след на экране - линию, курсор с поднятым пером не оставляет след.

Процесс ввода модели состоит в создании блоков и соединяющих их линий.

2.1.1. Ввод блоков

При нажатии на клавишу F2 СИАМ переходит в подрежим выбора блоков из системной библиотеки типовых блоков. При этом перо опускается и курсор перестает мигать, что свидетельствует о том, что его перемещение уже недоступно пользователю. В нижней части экрана независимо от состояния двоичного переключателя F6 появляется окно-подсказка с пиктограммами некоторых типовых блоков. Одна из пиктограмм выделяется негативным изображением (указателем). Будем называть соответствующий типовой блок активным.

В этом подрежиме доступны следующие клавиши:

F1-Помощь - дает информацию об алгоритме, реализованном в ак тивном блоке.

PgUp,PgDn - cмещают пиктораммы вниз или вверх, при этом открывается доступ к другим типовым блокам (в версиях 4.3x реализованы 52 типовых блока, одновременно в окне-подсказке могут отображаться не более 22-х).

Home, End - делают активным самый первый или самый последний блок.

ESC - возвращает СИАМ в режим ввода модели.

Клавиши управления курсором перемещают указатель к соседним блокам и таким образом делают их активными.

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

Параметры вместе с принятыми в системе их значениями по умолчанию выводятся в нижней части экрана. Активный параметр (по аналогии с активным блоком) выделяется цветовым окном. Клавишами перевода курсора вверх/вниз можно выделить нужный параметр, после чего цифровыми клавишами ввести его новое значение. При вводе параметров используется общий формат чисел вида *X.XXXXXXe*XX, где X - любая цифра; * - знак плюс или минус (отсутствие знака означает плюс); e (или E) - символ десятичного основания. Положение десятичной точки - произвольное. При вводе целочисленных значений точку можно опускать. Если десятичная точка указана, слева и справа от нее должно быть хотя бы по одной цифре. Экспоненциальная часть числа "e*XX" или "E*XX" также может опускаться. Она имеет смысл "умножить на 10 в степени XX". Например, 3.14е-2 - читается "3.14 умножить на 10 в степени минус 2". Если в числе указан символ десятичного основания "e" ("E"), справа от него должна быть хотя бы одна цифра десятичного порядка. Ошибочно введенный символ можно удалить клавишей "Забой слева" (клавиша с обозначенной на ней левой стрелкой - располагается справа в верхнем ряду основной зоны клавиатуры над клавишей "Ввод").

После установки параметров нужным образом необходимо нажать клавишу "Ввод". По этому сигналу СИАМ возвращает экран в графический режим и помещает в рабочее окно на то место, которое занимал курсор, пиктограмму выбранного блока с исходящей из него линией. Если вместо клавиши "Ввод" нажать ESC, блок не будет помещен в модель, даже если у него были изменены параметры. В версиях 4.3x можно располагать блоки только на горизонтальных линиях. В зависимости от направления входящей в блок линии он ориентируется слева направо или наоборот. Если перед обращением к режиму ввода блоков перо было поднято, СИАМ автоматически опускает перо. При этом блок приобретает ориентацию той линии, на которую будет опущено перо, а если перо опускается на свободное место, то блок всегда ориентируется слева направо.

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

2.1.2. Ввод и уничтожение линий

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

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

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

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

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

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

Для вычерчивания длинных или составных (составленных из двух ортогональных) линий может использоваться следующий прием. Сначала курсор с поднятым пером перемещается к тому месту, откуда должна начинаться длинная (составная) линия, и опускается на линию (если курсор с опущенным пером уже находится в нужной точке, поднимать и опускать его вновь необязательно). Затем нажимается Alt+F3. В этот момент перо поднимется и курсор станет круглым, однако транспарант "Перо" в верхней строке-меню будет по-прежнему выделен негативом - программа запомнила начало длинной (составной) линии. Теперь можно подвести курсор к тому месту, где необходимо закончить линию, и нажать Ctrl+F3. Если начало и конец линии находятся на одной и той же горизонтали или вертикали, длинная линия будет вычерчена сразу. Если координаты начала и конца определяют наклонную линию, программа будет вычерчивать две ортогональных линии (составную линию). В этом случае на экране будет развернуто следующее меню:

Начертить составную линию

(ESC - не чертить)

---------------------------

Горизонтальную и вертикальную

Вертикальную и горизонтальную

Первая опция означает, что сначала будет вычерчиваться горизонтальная, а затем вертикальная линия, вторая - наоборот, сначала вертикальная, затем горизонтальная. Вы должны выбрать нужный Вам способ и нажать "Ввод" - составная линия будет вычерчена (нажатие ESC означает отказ от вычерчивания).

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

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

2.1.3. Редактирование блоков

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

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

Для перехода к редактированию выделенного блока следует нажать клавишу "Ввод". В этом случае экран восстановит в точности такой же вид, какой он имел к моменту создания этого блока. Теперь можно выбрать нужный параметр и изменить его значение так, как это описано в п. 3.1.1. Следует помнить, что любые изменения параметров фиксируются в модели только в том случае, если для выхода из режима ввода параметров использовалась клавиша "Ввод". При выходе с помощью клавиши "ESC" все сделанные в данном режиме изменения параметров аннулируются.

2.1.4. Уничтожение и добавление блоков

Для уничтожения любого ранее созданного блока используется следующий прием. Курсор с поднятым пером перемещается по экрану до тех пор, пока его центр не попадет внутрь нужного блока. Затем нажимается клавиша "Del". После этого изображение блока начинает мигать и появляется приглашение подтвердить операцию уничтожения. Если подтверждение получено, СИАМ уничтожает блок и все исходящие из него линии.

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

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

2.1.5. Работа с дисковыми файлами

В СИАМ имеется возможность записи структуры в дисковый файл и чтения структуры из файла. Доступ к операциям с диском осуществляется клавишей F5.

При записи на диск СИАМ запрашивает имя вновь создаваемого файла. Это имя может быть любым допустимым для MS/DOS именем, в том числе и с предшествующим ему путем. Длина собственно имени не должна превышать 8 символов, допускается использовать любые комбинации букв, цифр, а также тире и знак подчеркивания. За именем может следовать расширение - последовательность до трех символов. Если расширение есть, оно отделяется от имени точкой. Примеры правильных имен: file_N1.sia , My-File.sia, primer.1, primer.2

Как видно из этих примеров, могут использоваться символы кириллицы, а также большие и маленькие буквы (которые, кстати, не различаются системой: в примере можно записать mY-fILE.Sia, что будет полностью идентично первоначальной записи). Если в ответ на запрос СИАМ указывается только имя без расширения и разделяющей точки, СИАМ дополняет имя стандартным расширением .SIA, однако если за именем указана точка, такого добавления не будет.

Путь - это указание на положение файла в древовидной файловой структуре дискового носителя информации. Структура пути: d:\subd1\subd2\...\subdn Здесь d: - имя диска (обычно c: для винчестера и a: для дискеты); subd1..subdn - имена вложенных подкаталогов (в подкаталог - subd1 входит подкаталог subd2 и т.д.). Примеры имен с указанием пути:c:\siam\lena, a:a.sia

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

Структура записывается в файл вместе с текущими значениями параметров. Для оценки требуемого для размещения файла пространства на диске используется формула SF = SB1 + SB2 + ... + NL * 15 + 4 где SF - длина файла в байтах; SBi - длина i-го блока (см. п. 1); NL - количество линий. При чтении информации из дискового файла используются все вышесказанные соглашения относительно имени файла. Если к моменту чтения в СИАМ уже была введена какая-либо структура, система запросит подтверждение на ее уничтожение. В версиях 4.3x не предусмотрена возможность чтения фрагмента структуры и ее объединения с ранее введенной частью. Дисковый формат представления структуры унифицирован, так что структура, записанная одной модификацией СИАМ (например,4.3s), доступна для чтения в любой другой модификации (например,4.3e).

2.1.6. Работа с крупными моделями

Работа с крупными моделями, структура которых не размещается целиком на экране, вызывает определенные трудности. В версиях 4.3х для упрощения работы с большими моделями имеются следующие дополнительные возможности. Alt+F2 - позиционировать курсор в центр нужного блока; Alt+F3 - указать начало длинной (составной) линии; Ctrl+F3- указать конец длинной (составной) линии; Alt+F4 - редактировать нужный блок; Alt+F6 - перейти к быстрому поиску фрагмента структуры;Ctrl+F6- указать масштаб изображения и перейти к быстрому поиску фрагмента структуры. Сочетание Alt+F2 или Ctrl+F6 означает совместное нажатие соответствующих клавишей: вначале нажимается клавиша Alt или Ctrl и затем, НЕ ОТПУСКАЯ ЕЕ, нужная функциональная клавиша. После этого обе клавиши отпускаются. Функции Alt+F3, Ctrl+F3 описаны в п.3.1.2, функция Alt+F4 - в п.3.1.3, остальные описываются ниже.

Прежде всего отметим, что при использовании клавиши F6 изменяется вид модели: при отказе от окна-подсказки с изображениями типовых блоков (в нижней части экрана) все блоки модели будут пронумерованы в порядке их объявления и над условными изображениями блоков появятся их номера. Обратное переключение в режим вывода окна-подсказки блокирует нумерацию. Нумерация позволяет использовать описанную в п.3.1.3 функцию Alt+F4 для редактирования нужного блока. Кроме того, с помощью клавишей Alt+F2 Вы можете установить курсор в центр любого блока, причем в рабочей зоне экрана автоматически появится нужный фрагмент модели (такую процедуру удобно использовать при вычерчивании длинных и составных линий, см. п.3.1.2).

При нажатии Alt+F2 в центре экрана появляется небольшое окно с запросом Номер блока: Теперь Вы можете набрать на клавиатуре номер блока и нажать "Ввод", - и тогда СИАМ покажет на экране фрагмент структуры, содержащий этот блок, причем курсор будет в центре блока, или нажать ESC и отказаться от поиска. Совместное нажатие Alt и F6 переводит СИАМ в подрежим быстрого поиска нужного фрагмента структуры. В этом подрежиме пользователю доступны следующие клавиши из зоны цифровых клавишей (справа на клавиатуре):- (серая клавиша "минус") - уменьшить масштаб изображения структуры на экране в два раза; + (серая клавиша "плюс") - увеличить масштаб в два раза;/ (серая клавиша "делить") - уменьшить масштаб настолько, чтобы вся структура целиком могла уместиться на экране;* (серая клавиша "умножить") - сменить масштаб изображения на нормальный или восстановить уменьшенный масштаб (работает как двоичный переключатель); Клавишами "Ввод" или ESC Вы можете завершить подрежим быстрого поиска и вернуться к режиму ввода модели. При отображении структуры в уменьшенном масштабе на экране появляется мигающий прямоугольник, который показывает фрагмент структуры - именно эта часть общей модели будет выведена на экран при выходе из подрежима. Клавишами смещения курсора можно перемещать мигающий прямоугольник по экрану и таким образом быстро выбирать нужный фрагмент структуры. Серая клавиша "*" позволяет "распахнуть" окно-прямоугольник на весь экран и показать подробно текущий фрагмент. Повторное нажатие на эту клавишу вернет экран в режим уменьшенного изображения структуры. Если текущий масштаб изображения 1:1, выводимые блоки нумеруются. Во всех случаях блоки изображаются "пустыми" прямоугольниками иконцы линий не отмечаются стрелками.

Нажатие на Alt+F6 приведет к запросу Коэфф-т уменьшения=

В ответ Вы должны указать, во сколько раз необходимо уменьшить масштаб изображения на экране. После этого СИАМ переходит к описанному выше подрежиму быстрого поиска фрагмента структуры. Следует учесть что "коэффициент уменьшения" означает вещественное число больше 1.0, указывающее, во сколько раз уменьшать видимые размеры блоков и линий. Поэтому ответ 2, например, приведет к уменьшению размеров в 2 раза, 3 - в три раза и т.д. (именно в этом смысле здесь используется понятие "уменьшенный масштаб"). Вы можете задать и дробное вещественное число, например, 2.5. Если Вы пытаетесь задать отрицательное число или число меньше 1.0, СИАМ игнорирует это указание и установит масштаб 1:1. Таким образом, в режиме быстрого поиска нельзя рассматривать фрагменты с увеличенными по сравнению с обычными размерами.

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

2.2. Режим моделирования

Переход к режиму моделирования осуществляется по клавише F7 из режима ввода модели.

Назначение функциональной клавиатуры:

F1-Пмщ - Получить доступ к справочной службе.

F2-Мет - Выбрать метод и параметры интегрирования.

F3-Счет - Запустить процедуру интегрирования.

F4-Ред - Редактировать блок (см. п. 3.1.3).

F5-Окно - Задать блоки для отображения в окнах.

F6-Грф - Задать блоки для вывода графиков.

F7-Рез - Задать количество точек графиков; вывести таблицу результатов на экран, принтер или в дисковый файл.

F8-Мсш - Масштабировать графики в окнах.

F9-Прд - Продолжить интегрирование.

ESC-Выход- Вернуться в режим ввода модели.

Кроме того, в этом режиме доступны клавиши:

PgUp,PgDn,Home,End - смещение структуры относительно окна.

Клавиши управления курсором - перемещение курсора в окне.

Del - уничтожение блока или линии.

В ходе моделирования осуществляется численное решение системы обыкновенных дифференциальных уравнений (СОДУ), которую автоматически формирует СИАМ по исходной структурной схеме. Результаты решения запоминаются в LG точках для каждого блока. Эти результаты затем используются для построения графиков и при выводе таблиц.

Порядок интегрируемой системы ограничивается лишь доступной памятью и может быть весьма большим. На структуру накладывается единственное ограничение: она должна быть такой, чтобы ВХОДНОЙ сигнал любого блока мог быть вычислен системой ДО вычисления ВЫХОДНОГО сигнала этого же блока. Система допускает интегрирование как в "прямом" (tk>t0), так и в "обратном" (tk<t0) времени, где t0 - начальное, а tk - конечное значение независимой переменной (времени). Моделирование можно прервать в любой момент, нажав клавишу ESC. По клавише "F9-Прд" можно продолжить прерванное по ESC или завершившееся по условию t = tK моделирование. В этом последнем случае СИАМ автоматически удваивает конечное время tK и соответствующим образом изменяет накопленные в памяти результаты.

2.2.1 Выбор метода и установка параметров интегрирования

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

В версиях 4.3x могут использоваться следующие методы численного интегрирования СОДУ:

- метод Кутта-Мерсона 4-го порядка точности с автоматическим выбором шага интегрирования;

- метод Фельберга 5-го порядка точности с автоматическим выбором шага;

- метод Рунге-Кутта 4-го порядка с фиксированным шагом;

- метод Эйлера 2-го порядка с фиксированным шагом.

Описание алгоритмов методов численного интегрирования приводится в Приложении П.2 .

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

t0 - начальное значение модельного времени;

tK - конечное значение модельного времени;

h - шаг интегрирования (для методов с фиксированным шагом);

err - допустимая относительная локальная погрешность (для методов с автоматическим ыбором шага).

При выходе из процедуры по клавише "Ввод" СИАМ проверяет неравенство нулю заданного интервала интегрирования, а если выбран метод с фиксированным шагом, то и неравенство нулю шага интегрирования.

2.2.2 Выбор блоков для динамического отображения графиков

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

Для того, чтобы указать СИАМ, выходные сигналы каких именно блоков следует динамически отображать в окнах, используется клавиша F5. При нажатии на эту клавишу в верхней строке-меню загорается транспарант "Окно" и один из блоков структуры выделяется мигающим изображением. Клавишами перевода курсора влево или вправо можно перемещать мигающее изображение к соседним блокам. При нажатии на клавишу "Ввод" в нижней зоне экрана подготавливается окно для вывода графиков, в его нижнем правом углу появляется цифра "1" и такая же цифра появляется в правом верхнем углу пиктограммы выбранного блока на структурной схеме. Таким способом СИАМ указывает связь графиков в окнах с конкретным блоком структуры. После выбора окна мигающее изображение смещается к соседнему блоку структуры, что дает пользователю возможность аналогичным образом выбрать другой блок для связи его со вторым графическим окном.

После выбора второго блока СИАМ возвращается в режим моделирования. Для выхода из процедуры без создания второго окна используется клавиша ESC . Полезно учесть, что в этом случае при повторном входе в процедуру СИАМ настраивается на создание второго (правого) окна. Однако это замечание будет неверным, если к этому моменту графический курсор находился в площади какого-либо блока: в этом последнем случае СИАМ всегда настраивается на связь выбираемого блока с первым (левым) окном.

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

При переходе к другим подрежимам (вывод графиков, таблиц и т.д.) а также при перемещении структуры в окне цифры "1" и "2", помечающие выбранные блоки, могут исчезнуть. Для их восстановления достаточно войти в описанную процедуру и тут же выйти из нее по клавише "ESC".

Если для входа в процедуру использовался так называемый "Alt-вход" (сначала нажимается клавиша "Alt" и затем, не отпуская ее, клавиша F5 ), СИАМ подготавливается к разрыву связи ранее созданного окна с блоком. Для этого начинает мигать левое окно. Клавишей смещения курсора вправо можно сменить выбираемое окно на правое.

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

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

2.2.3 Начальный запуск и продолжение моделирования

Для начального запуска моделирования используется клавиша F3. "Начальный запуск" означает активизацию внутренней процедуры создания системы обыкновенных дифференциальных уравнений по структурной схеме модели. В ходе этой процедуры СИАМ контролирует правильность связей между блоками: если какой-либо блок не имеет необходимой для работы его алгоритма связи с другим блоком по входному сигналу, СИАМ сообщает об ошибке и блокирует запуск моделирования. Кроме того, проверяется возможность вычисления входного сигнала для каждого блока. Вход блока считается вычисляемым, если он порожден выходным сигналом блока-генератора или динамического блока с начальными условиями. Отметим, что динамический блок с начальными условиями служит источником вычисляемого входа только в том случае, когда он описывается передаточной функцией, порядок полинома числителя которой МЕНЬШЕ порядка полинома знаменателя.

После успешного контроля структуры и создания СОДУ начинается численное интегрирование этой системы при заданных начальных условиях на интервале модельного времени от t0 до tK. При этом загорается транспарант "Счет" в строке-меню и в левой нижней части экрана появляется надпись "Выход - по ESC", информирующая о возможности принудительно прервать вычисления с помощью клавиши ESC.

При моделировании весь интервал t0 ... tK делится на NG = LG - 1 подинтервалов и выходные сигналы всех блоков в конце каждого подинтервала запоминаются в памяти СИАМ. Количество NG подинтервалов можно изменять (см. п.3.2.5). Если была установлена связь блоков с окнами (см. выше), формируются соответствующие графики.

На каждом шаге численного интегрирования СИАМ контролирует величину сигналов во всех блоках. Если какой-либо сигнал превысит по модулю величину 1.0e+20, СИАМ остановит моделирование и даст соответствующее сообщение. Встроенный контроль можно блокировать с помощью "Alt-запуска" процедуры моделирования (нажимается "Alt" и, не отпуская ее, F3). При отказе от встроенного контроля рекомендуем использовать версию 4.3e СИАМ. Отметим, что при моделировании неустойчивых систем (процессов) выходные сигналы некоторых блоков могут нарастать очень быстро, так что в ряде случаев встроенный контроль может оказаться неэффективным. В этой ситуации СИАМ аварийно завершает свою работу и на экране появляется сообщение Runtime error XXX at SSSS:OOOO (Ошибка периода исполнения программы номер XXX по адресу SSSS:OOOO). Для диагностирования источника ошибки может оказаться полезной следующая таблица:

Номер ошибки Причина появления ошибки

200 Деление на ноль.

201 Нарушение границ диапазона.

202 Переполнение стека.

203 Переполнение динамической памяти.

204 Ошибка адресации к динамической памяти.

205 Переполнение разрядной сетки при действиях с плавающей точкой.

206 Исчезновение порядка при действиях с плава ющей точкой.

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

Ошибки с кодами 201...204 могут быть следствием неточной работы самой программы СИАМ. Хотя программа СИАМ тщательно оттестирована и проверена в ходе многолетней эксплуатации большого числа пользователей, тем не менее значительный объем программы и сложность реализованных в ней алгоритмов не позволяют полностью гарантировать отсутствие в ней каких-либо ошибок. Если возникла ошибка с кодами 201...204, разработчик приносит свои извинения и просит сообщить ему об этом, а также по возможности описать ситуацию возникновения ошибки (желателен дисковый файл с моделью, при счете которой она возникла). По окончанию моделирования в нижней части рабочего окна появляется сообщение о реальном времени, затраченном на моделирование. Одновременно изменяется содержимое строки "t0=X.XXXXXXXX" в левой нижней части экрана: в нем устанавливается достигнутое модельное время.

Завершившееся по условию t=tK или прерванное по клавише ESC моделирование можно продолжить с помощью клавиши F9. Если после остановки моделирования в модели изменился какой -либо блок или параметр, вместо продолжения счета произойдет начальный запуск моделирования (см. выше). Сразу после нажатия на F9 СИАМ проверяет достигнутое модельное время: если оно равно tK, значение tK автоматически удваивается, все хранящиеся в памяти СИАМ результаты соответствующим образом интерполируются и в графических окнах сигналы отображаются с учетом нового значения tK. Запуск с помощью клавишей Alt+F9 блокирует встроенный контроль.

2.2.4 Вывод графиков

Для вывода графиков используется клавиша F6 . При нажатии на нее СИАМ переходит к процедуре выбора блоков для отображения их выходных сигналов в виде графиков: загорается транспарант "Грф" в строке-меню и один из блоков структуры выделяется мигающим изображением. Клавишами управления курсором можно сместить мигающее изображение к соседним блокам (см. замечание в п.3.1.3). Для вывода графика выходного сигнала выделенного блока нажимается клавиша "Ввод".

Сразу после вывода графика пользователю доступны клавиши:

F5 - перейти к цветной графике.

F6 - изменить скорость вывода графиков.

PrtScr - отпечатать на принтере графическую копию экрана.

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

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

В целях совместимости с компьютерами разного класса в СИАМ в качестве основного режима работы принят монохромный режим адаптера CGA (разрешение 640х200), который поддерживается на компьютерах с адаптерами любого другого из перечисленных типов. После нажатия на F5 программа сможет формировать графики более высокого качества, если, разумеется, это допускает установленный в Вашем компьютере адаптер. Следует учесть, что встроенная функция Print Screen (вывод графической копии экрана, см. п.3.2.7) в этом режиме блокируется, поэтому перед ее использованием следует вернуть дисплей в режим CGA, нажав на клавишу ESC.

В цветном режиме Вам доступны следующие клавиши:

F1-Back - изменить цвет фона;

F2-Axis - изменить цвет осей и разметки;

F3-Line - изменить цвет линий графика;

F5-B/W - вернуться к черно-белой графике режима CGA (640x200);

ESC-Return- продолжить выбор блоков (в этом случае все новые графики будут выводится в цветном режиме до очередного нажатия на F5).

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

В СИАМе имеется возможность вывода графиков в замедленном темпе (обычно график строится за доли секунды, если не учитывать подготовительных операций). Для использования этой возможности сразу после вывода графиков в черно-белом режиме нажимается клавиша F6. Система выдает запрос "Задержка: XX", где XX- цифры. Ответом на этот запрос может быть любое целое число, которое трактуется системой как величина задержки в милисекундах между выводом двух соседних точек графика. Чем больше величина задержки, тем медленнее в конечном счете будет строиться график. Если в ответ на запрос указано любое отрицательное число, СИАМ автоматически подберет задержку так, чтобы при построении графика имитировать реальный масштаб времени.

На одном графическом экране можно построить до 4-x графиков в общем для всех графиков масштабе. Для реализации этой возможности поступают следующим образом. После выделения мигающим изображением нужного блока нажимается клавиша "Ins". Выбранный блок помечается негативным изображением и мигание смещается к соседнему блоку. Теперь можно выбрать второй блок и т.д. Для указания последнего блока используется клавиша "Ввод". Если сместить мигающее изображение к уже помеченному блоку и вновь нажать "Ins",СИАМ восстановит нормальное изображение блока и не будет строить для него график. Для того, чтобы можно было различать графики, СИАМ выводит их линиями разного типа: первому выбранному блоку будет соответствовать сплошная линия, второму - пунктирная с крупным штрихом, третьему - пунктирная с мелким штрихом и четвертому - точечная линия.

При необходимости построить график выходного сигнала одного блока как функцию от выходного сигнала другого блока ("фазовую траекторию") нужно выделить миганием блок, выходной сигнал которого есть независимая переменная, и нажать клавишу с латинской буквой "X", после чего выделить блок с зависимой переменной и нажать "Y". Порядок указания блоков может быть и обратным - т.е. сначала "Y", a потом "X". После того, как будет помечен второй блок, СИАМ тут же построит требуемый график, используя в качестве абсциссы сигналы блока "X", а в качестве ординаты - сигналы блока "Y".

2.2.5 Изменение длины графиков и вывод таблицы результатов

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

Длина графика - это количество LG точек на интервале интегрирования t0 ... tK, в которых запоминаются промежуточные результаты для построения графиков или для вывода таблицы.

В процессе вывода графиков осуществляется линейная интерполяция накопленных результатов так, чтобы LG точек отразить на всем поле графика. Поскольку длина любого графика по горизонтали больше принятого по умолчанию значения LG=100, линейная интерполяция может привести к нарушению гладкости графиков. Особенно сильные изломы могут наблюдаться при выводе графиков как функций сигналов (фазовых траекторий). Для сглаживания графиков можно увеличить значение LG, однако это повлечет за собой пропорциональное увеличение требуемой памяти (см. п.1) и снижение быстродействия: как отмечалось в п. 3.2.3, интервал t0 ... tK делится на NG = LG - 1 подинтервалов, поэтому с ростом LG помимо увеличения затрат времени на запоминание результатов уменьшается реальный интервал интегрирования, что может сдерживать "разгон" методов с автоматическим выбором шага.

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

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

При выборе опций "Вывод таблицы на экран" или "Печать таблицы" система переходит к выбору блоков для представления их выходных сигналов в колонках таблицы. Процедура выбора блоков для таблицы полностью идентична описанной в п.3.2.4 процедуре выбора блоков для построения графиков как функций времени, но с тем исключением, что одновременно в строке таблицы может выводиться не более 5-ти блоков (если для указания 5-го блока использовалась клавиша "Ins", СИАМ выведет таблицу и затем вновь вернется к выбору блоков). Порядок расположения блоков в колонках соответствует порядку их выбора: 1-й выбранный блок займет 2-ю колонку,2-й - 3-ю, 5-й - 6-ю (первая колонка содержит значение независимой переменной t). Если используется опция "Печать таблицы", то после выбора блоков система даст сообщение: "ВЫВОД ТАБЛИЦЫ на принтер/в дисковый файл". Если выбран вывод на принтер, то перед началом печати система запросит подтверждение готовности принтера, аналогичный запрос дается после вывода каждой страницы таблицы. Если выбран вывод в файл, система запросит имя файла.

2.2.6 Масштабирование графиков в окнах

Поскольку перед началом моделирования СИАМ не может оценить диапазон изменения сигналов для блоков, отображаемых в окнах, масштаб изображаемых в них графиков может оказаться неудачным. Для масштабирования графиков с учетом накопленных результатов используется клавиша "F8". Если нажать "Alt" и, не отпуская ее, "F8", то включится режим автомасштабирования, повторное нажатие "Alt"+"F8" отключает автомасштабирование.

2.2.7 Вывод копий графического экрана

В описываемую версия СИАМ включены средства, обеспечивающие печать на принтере или вывод в дисковый файл копий графического экрана (в версии 4.2 такая печать обеспечивалась системной утилитой ДОС GRAPHICS). При нажатии клавиши Print Screen (или Shift -PrnScr) средствами ДОС возбуждается прерывание номер 5, которое обслуживается встроенной процедурой СИАМ. Эта процедура работает только в том случае, если к этому моменту экран ПК находился в монохроматическом графическом режиме CGA. Если экран работал в текстовом режиме или в цветном графическом, прерывание игнорируется. После обращения к функции Print Screen на экране разворачивается диалоговое окно, содержащее следующий запрос:

Вывод копии графического экрана

(Enter-сменить, ESC-отказаться от вывода)

-----------------------------------------

Начать вывод

Горизонтальная копия

Инверсная копия (белый фон)

Вывод на принтер

Отступ бумаги слева: 0

Одна из опций запроса выделяется указателем (негативным изображением). Клавишами смещения курсора вверх-вниз Вы можете сместить указатель к той или иной опции. Нажатие на "Ввод" инициирует собственно вывод копии, если выделена опция "Начать вывод", или изменяет значение опции - в остальных случаях. Нажатие на ESC отменяет копирование экрана. Опции запроса имеют следующий смысл. НАЧАТЬ ВЫВОД - инициирует процедуру вывода копии графического экрана. ГОРИЗОНТАЛЬНАЯ КОПИЯ - выводимая копия будет располагается на листе бумаги горизонтально и займет приблизительно 3/4 ширины стандартного листа бумаги в длину и 1/4 длины листа по высоте. После нажатия на "Ввод" опция заменяется на ВЕРТИКАЛЬНАЯ КОПИЯ. Вертикальная копия располагается снизу-вверх на листе бумаги и занимает всю площадь стандартного листа формата А4. ИНВЕРСНАЯ КОПИЯ (БЕЛЫЙ ФОН) - копия на листе выводится в инверсном изображении (черный фон графиков на экране будет белым на бумаге, а сами графики - черными). При нажатии на "Ввод" устанавливается значение опции ПРЯМОЕ ИЗОБРАЖЕНИЕ (ЧЕРНЫЙ ФОН) -копия будет иметь такой же вид, как и на экране (черный фон, белые линии). ОТСТУП БУМАГИ СЛЕВА - численное значение этой опции задает отступ от левого края листа бумаги. Отступ задается в символах текстового вывода, так что значение 1 соответствует отступу в один пробел, 2 - два пробела и т.д. При нажатии на "Ввод" программа запросит нужное значение отступа. ВЫВОД НА ПРИНТЕР - копия будет выводиться на принтер. При нажатии на "Ввод" заменяется на ВЫВОД В ДИСКОВЫЙ ФАЙЛ. В этом случае вывод копии графического экрана будет осуществляться в дисковый файл в формате принтера, т.е. такой файл можно будет затем напечатать на принтере с помощью команды ДОС Print или Copy; перед созданием дискового файла программа запросит его имя. От услуг встроенной обработки функции Print Screen можно отказаться на этапе настройки системы (см. п.2).

2.3 Режим параметрической оптимизации

Под режимом параметрической оптимизации здесь и далее понимается процедура целенаправленного изменения одного или нескольких параметров модели (оптимизируемых параметров) таким образом, чтобы для момента модельного времени t = tK всемерно уменьшить выходной сигнал некоторого блока. Этот выходной сигнал отождествляется с целевой функцией.

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

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

Конкретное значение целевой функции (ЦФ) при некотором наборе оптимизируемых параметров (шаг вычисления ЦФ) получается системой в результате прогона имитационного моделирования на интервале t0...tK. Для поиска экстремальной точки системе может понадобиться много шагов оптимизации, что делает процедуру в целом весьма медленной.

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

F1-Пмщ - Доступ к справочной службе.

F2-Мет - Выбор метода параметрической оптимизации и установка конечного интервала неопределенности параметров;

Alt+F2 - выбор метода численного интегрирования и установка его параметров.

F3-Счет - Запуск процедуры оптимизации.

F4-Ред - Редактирование блока (см. п. 3.1.3).

F5-Функ - Выбор блока, выходной сигнал которого для t = tK будет использоваться в качестве целевой функции.

F6-Пар - Выбор оптимизируемых параметров и диапазона их изменения.

2.3.1 Выбор метода

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

В версиях 4.3x реализованы три метода:

- покоординатного спуска (Гаусса-Зейделя);

- прямого поиска (Хука-Дживса);

- случайных испытаний (Монте-Карло).

Строка с названием выбранного по умолчанию метода в меню выделяется цветом. Клавишами смещения курсора вверх/вниз можно выделить нужную строку, клавишей "Ввод" - дать системе команду выбрать выделенный метод. Отметим, что если перед нажатием "Ввод" нажать F1, на экран будет выведена краткая характеристика того метода, название которого выделено в окне-меню. Описание алгоритмов методов оптимизации приводится в Приложении П.3.

После нажатия на "Ввод" на экране появляется дополнительное окно, в котором указывается принятый по умолчанию конечный интервал неопределенности оптимизируемых параметров d в процентах от исходного диапазона D их изменения. При необходимости пользователь может ввести новое значение d. Заметим, что СИАМ контролирует вводимое число: если оно меньше 1, устанавливается 1, если больше 50, устанавливается 50, дробное число округляется до ближайшего целого. Таким образом, интервал неопределенности не может быть больше 50-ти или меньше одного процента от диапазона изменения параметров. Установленное значение d используется системой для проверки необходимости завершения процедуры оптимизации (см. п. 3.3.4).

Как уже отмечалось, конкретное значение ЦФ получается в результате прогона имитационного моделирования. Для того, чтобы не выходя из режима оптимизации иметь возможность изменения параметров и/или метода интегрирования, используется совместное нажатие Alt и F2, после чего проводятся необходимые изменения так, как описано в п. 3.2.1 .

2.3.2 Выбор целевой функции

По клавише F5 в режиме оптимизации активизируется процедура выбора блока, выходной сигнал которого для t = tK будет интерпретироваться системой как целевая функция. Механизм выбора блока подобен описанному выше в пп. 3.1.1, 3.2.1 и т.д.: мигающее изображение смещается клавишами перевода курсора к нужному блоку и нажимается "Ввод".

Следует помнить, что далеко не любой блок структуры может быть источником целевой функции, но только тот, в выходном сигнале которого в той или иной мере опосредовано начество оптимизируемой системы. СИАМ не может контролировать семантическую правильность выбора ЦФ. Вопрос о правильности выбора блока, а еще шире - о правильности формирования ЦФ далеко выходит за рамки данного описания. Для пользователей, не имеющих опыта проведения параметрической оптимизации, полезно перед выбором блока задать себе вопрос: будет ли выходной сигнал того или иного блока для момента модельного времени t = tK служить мерой качества в том смысле, что чем меньше сигнал, тем лучше качество системы. Чаще всего в исходной структуре нет НИ ОДНОГО БЛОКА, для которого ответ на этот простой вопрос был бы утвердительным. В этом случае перед проведением оптимизации следует дополнить исходную модель необходимым блоком или блоками, т.е. сформировать целевую функцию (см. тестовую задачу номер 2).

2.3.3 Выбор оптимизируемых параметров

По клавише F6 можно перейти к процедуре выбора оптимизируемых параметров и установки диапазонов их изменения. СИАМ позволяет оптимизировать до 10-ти параметров одновременно, причем любой из них может принадлежать любому блоку (исключение составляют только параметры "m" и "n", определяющие общее количество параметров для динамического и нелинейного блоков общего вида, см. Приложение П.1).

Процедура разбивается на два этапа: вначале выбирается блок, а затем указываются конкретные параметры в этом блоке. Для выбора блока используется стандартный прием (см. выше): мигание смещается к нужному блоку и нажимается "Ввод". В этот момент на экране появляется дополнительное окно, в котором указываются все параметры блока. Для каждого параметра дается его текущее (номинальное) значение, а также минимальная Min и максимальная Max границы диапазона его изменения. Первый параметр в этом окне выделяется цветом (клавишами перевода курсора можно выделить нужный параметр). В СИАМ принято соглашение, что, если Min=Max, т.е. если диапазон изменения параметра D = Max - Min = 0, то соответствующий параметр не оптимизируется. Наоборот, параметр, у которого D = Max - Min не равен нулю, является оптимизируемым. Таким образом, чтобы указать системе оптимизируемый параметр, нужно соответствующим образом изменить Min или Max или и Min и Max. Напротив, установка Min = Max исключит параметр из списка оптимизируемых. При выборе параметра и установке диапазона его изменения следует позаботиться о том, чтобы в устанавливаемый диапазон не попали значения, которые недопустимы с точки зрения семантики модели или корректности алгоритма блока. Например, вряд ли будет целесообразным указывать отрицательную нижнюю границу для параметров типа коэффициент усиления или постоянная времени: возможная установка в процессе оптимизации нулевого значения параметра может привести к катастрофическим последствиям.

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

2.3.4 Запуск процедуры оптимизации

Запуск оптимизации осуществляется по клавише F3. Если к этому моменту не были выбраны оптимизируемые параметры и/или ЦФ, СИАМ сообщит об этом и автоматически вызовет соответствующие процедуры.

При переходе к оптимизации в строке-меню загорается транспарант "Счет", в левом нижнем углу экрана появляется информирующая надпись "Выход - по ESC", а в правой части нижней зоны экрана формируется окно для динамического отображения текущего состояния процесса оптимизации: указывается порядковый номер завершившегося шага оптимизации, текущее и минимальное значение ЦФ,а также реальное время, затраченное системой на предыдущий шаг оптимизации.

Как уже отмечалось, относительный интервал неопределенности d используется системой для контроля за окончанием процесса оптимизации: если очередное приращение любого из оптимизируемых параметров не превышает по модулю d * D , где D - диапазон изменения соответствующего параметра, СИАМ прекращает оптимизацию. Сказанное не относится к методу Монте-Карло, так как в нем изменение параметров осуществляется случайным образом; выход из процедуры оптимизации по этому методу возможен только путем прерывания вычислений с помощью клавиши ESC.

Может оказаться, что попытка оптимизации вызовет неожиданное сообщение СИАМ о чрезмерно большом сигнале на выходе какого- либо блока или даже аварийное завершение работы системы, хотя предварительно проведенное моделирование этой же структуры не вызывало такого рода реакции. Помимо причины, связанной с некорректно заданными границами изменения какого-либо параметра, о чем уже говорилось выше, здесь может быть и другая причина, связанная с некорректно выбранными параметрами моделирования. Дело в том, что в режиме моделирования интервал t0...tK ВСЕГДА делится на NG подинтервалов, а в режиме оптимизации с целью уменьшения времени счета этого не делается НИКОГДА. Если использовался метод интегрирования с постоянным шагом, реальный шаг при обращении к методу выбирается как наименьшее по модулю из заданного шага интегрирования и требуемого подинтервала запоминания результатов. Простой анализ показывает, что, например, для метода Рунге-Кутта на интервале от 0 до 1 секунды модельного времени при шаге h=0.1 и LG=100 (все перечисленные параметры берутся в СИАМе по умолчанию !), реальный шаг интегрирования в режиме моделирования будет около 0.01, в то время как при оптимизации он окажется 0.1, что и может служить причиной вычислительной неустойчивости. Мы настоятельно рекомендуем при проведении оптимизации использовать методы с контролем локальной погрешности и автоматическим выбором шага, тем более, что увеличение реального интервала интегрирования до максимальной величины t0...tK способствует "разгону" этих методов на гладких участках решения, так что их скорость в ряде случаев оказывается существенно выше, чем у методов с фиксированным шагом.

2.4 Режим построения частотных характеристик

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

При переходе к режиму построения ЧХ СИАМ прежде всего проверяет наличие в модели "линейных" блоков, т.е. блоков, описываемых линейными дифференциальными уравнениями (передаточными функциями). Каждый из таких блоков помечается символами от "A" до "Z" , исключая "M" и "L", a если таких блоков больше, чем 24, то "AX" ... "ZX" , где X - цифры от 0 до 9. Символы "M" и "L" система резервирует для специальных целей: сочетание "MX" , где X- цифра, употребляется для обозначения одного из 10-ти внутренних буферов СИАМ, символ "L"- для обозначения частотной характеристики.

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

При входе в режим пользователю доступны только три функциональные клавиши:

F1-Помощь - Доступ к справочной службе.

F4-Ред - Редактирование блока.

ESC-Выход - Возврат в режим ввода модели.

Введем обозначения:

<Блок> - имя вида A...Z или AX...ZX, присвоенное линейному блоку (см. выше);

<Буфер> - имя вида M0...M9 для обозначения одного из 10 внутренних буферов; буфер - это область памяти, в которой СИАМ может сохранять коэффициенты полиномов числителя и знаменателя дробно-рациональной передаточной функции; порядок любого полинома не должен превышать 100;

<Константа>- вещественное число без знака;

<Операция> - один из следующих знаков, используемых для обозначения операций над передаточными функциями:

"+" - операция сложения;

"-" - операция вычитания;

"*" - операция умножения;

"/" - операция деления;

<Операнд> - <Блок> или <Буфер> или <Константа>.

С учетом сделанных определений можно описать допустимые предложения языка. Этих предложений - три.

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

<Буфер> = <Операнд> <Операция> <Операнд>

Например, M0=S-K или M1=1+A

Второе - указание СИАМ построить ЧХ:

L = <Операнд>

Например, L=D

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

<Блок> = ? или <Буфер> = ?

Приведем примеры правильных операторов:

M0=A*B

M1=1+C

M2=M0/D

L=M2

M2=?

M3=2.3-1

Примеры синтаксически неверных операторов:

M1=M+A (не может быть операнд с именем M)

F=E/V (нельзя присвоить результат блоку)

L=C-Y (нельзя использовать выражение в операции вывода ЧХ)

Операторы языка построения ЧХ вводятся алфавитно-цифровыми клавишами и заканчиваются нажатием клавиши "Ввод". Ошибочно введенный символ можно удалить клавишей "Забой слева".

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

После ввода предложений типа L = <Блок> или L = <Буфер> СИАМ выводит соответствующие ЧХ. B качестве основной формы представления ЧХ в СИАМ принята форма логарифмических частотных характеристик (ЛЧХ). Амплитудная ЛЧХ вычисляется по формуле L(lg(w)) = 20 lg(mod(W(jw))), а фазовая - по формуле F(lg(w)) = arg(W(jw)), где w - частота; lg - десятичный логарифм; mod - модуль комплексного числа; W - частотная характеристика; j - мнимая единица; arg - аргумент комплексного числа.

ЛЧХ вычисляются при изменении частоты w от минимального wMin до максимального wMax значения.





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.