Mоделирование процессов и систем в Matlab (966709), страница 18
Текст из файла (страница 18)
Ничего не изненять ') Результат приведен на рис. 2А справа. Рмс. 2.4. Примеры пользовательских меню Урок 2 ь Программирование в среде МАТ(АВ Меню позволяет выбрать параметр, который нужно изменить, однако не обеспечивает самого изменения выбранного параметра. Это изменение должно быль осуществлено с помощью ввода нового значения с клавиатуры, скажем, так: х - 1проЩзргтнгт('Тен)щее энвчение х - тд'.х).'Новое значение х - ')) Введем команды » х 3.02е-2: » х 1нрнт((зрпнтт('Текнее значение х Гд'.х].'Новое значение х '3) Тогда в командном окне появится такая запись: Текущее значение х - 0.0302 Новое значение х- Выполнение программы приостановится.
Система будет ожидать ввода информации с клавиатуры. Если теперь набрать на клавиатуре О. 073 и нажать клавишу ЕпТет, то в командном окне появится след)лешая запись: Текущее значение х - 0.0302 Новое значение х - 0.073 х О.ОТЗО Чтобы предотвратить повторный выводна экран введенного значении, необходимо строку с функцией 1прио завершить символом ч~. Теперь следует организовать выбор оператора, который соответствует изменяемому параметру. Для этого можно использовать оператор условного перехода !Тк 1 хХ - энрот([эрг1пгг('Текуцее значение х) - тд'.
х)).'Новое значение х) - ')); е)зете Х вЂ” 2 х2 - 1нрис((зрг1пвт('Текущее энвчение х2 - тд'. х2).'Новое значение х2 - ')): е)зете Х - 3 хЗ = 1грш((зрг1игт('Текуцее значение хЗ - тд'. хЗ).'Новое энвчение хЗ = ']): е)зе1Т Х вЂ” 4 х4 - 1приЩэрг1пв(('Текущее значение х4 - тд'. х4).'Новое значение х4 - ')): е)зете 'к — 5 х5 - тприщзрг1пст('текущее значение х5 - тд'.
х5).'новое значение х5 - ')): енд Для того чтобы можно было проконтролировать правильность ввода новых значений, обеспечить возможность их корректировки и последовательного изменения всех желаемых параметров, нужно, чтобы после ввода нового значения любого параметра на экране вновь возникало то же меню, но уже с откорректированными значениями.
При этом работа с меню должна завершиться только при условии выбора кнопки Ничего не изменять, соответствующей значению Н, равному 6. Поэтому предыдущие операторы следует оформить в виде цикла. к ) ни1)е Х < 5 'к - неко('Что изиенитьт'. зрпн(Т('Пврвнетр) х) - тд'. хг).
. зргтпвт('Пврвнетр2 х2 - $9'. х2).... зрг1нвт('ПарзнетрЗ хЗ - йд'. хЗ).... эргтнвг('Пврвнетр4 х4 тд'. х4).. зрг1пвт('Пврвнетр5 х5 - тд'. х5),... 'Ничего не изнензть'): Создание файлов-сценариев (Г К х1 1п)мй([зрг(псг('тех)нее е)зе(( х-2 х2 - 1приз([зрг1п(Г('Тен)чвее е)зезт 'х = 3 хз - 1прис([зрг(псг('тенхаее е)зе1Г Х вЂ” 4 х4 - (при(([зрг1пгг('Тек)аее е)зеит 1 — 5 х5 - 1про(([зрг(п(Г('Текиаее епо епо значение х1 - Хд'. х1),'Новое значение х1 - ' И; значение х2 - Хд'. х2).'Новое значение х2 - '1): значение хЗ - Хд', хЗ).'Новое значение хЗ - ']): значение х4 - Хд'. х4),'Новое значение х4 - '1): значение х5 - Хд'.
х5).'Новое значение х5 - '1): Таким способом обеспечивается возможность удобного изменения значений па- раметров в диалоговом режиме. Если входных параметров, значение которых нужно изменять, довольно много, следует объединить их в компактные группы (желательно по какому-то общему свойству, отличающему определенную группу от других) и аналогичным образом обеспечить изменение в диалоговом режиме, используя отдельное меню для каждой группы.
Очевидно, при этом необходимо предварительно обеспечить выбор одной из этих групп параметров посредством создания дополнительного меню. Типовая структура файла-сценария Если текст программы оформляется в виде файла-сценария, необходимо принимать во внимание следующее. О Весь процесс изменения параметров в диалоговом режиме удобно оформлять в виде отдельного файла-сценария, например, с именем 5сгйй непа, где 5сгп[— имя основного файла-сценария. О Поскольку уже в самом начале работы с программой в меню выбора изменяемого параметра должны сразу выводиться некоторые значения параметров, перед главным циклом программы, обеспечивающим возврат к началу вычислений, необходимо помесппь часть программы, которая задает первоначальные значения всех параметров.
Кроме того, в начале работы программы можно вывести на экран краткую информацию о ее назначении, более детальную информацию об исследуемой математической модели с указанием места в ней и содержания всех исходных параметров, а также исходные (чвшитыев) значения всех параметров данной модели. Эти сведения желательно также оформить в виде отдельного файла, например с именем 5сгп[ саз(л)4(а. О При завершении работы программы обычно возникает (ютребность несколько упорядочить рабочее пространство, например очистить его от созданных глобальных переменных (оставаясь в рабочем пространстве, они препятствуют корректной работе другой программы, которая может иметь иные глобальные переменные или переменные с теми же именами, но отличающиеся по типу, смыслу и значению), закрыть открытые программой графические окна (фигуры) и т.
д. Эту завершающую часть тоже можно оформить как отдельный файл-сценарий, например, назвав его 5сгрй К(п. 1оо Урон 2 ° Программирование е среде МАТ(АВ В целом типовая структура файла-сценария отдельной программы может быть представлена в таком виде: $ «Обозначение Звала-сценария (ЗсгЕт Пп)> Х <Текст кониентария с описаниен назначения програннн> Пустая строка> Д Автор Фанилия И. б.. дата создания. организация> Зсггт) Тазтаваа к - пейн('Что делать?'.'Продояиить работу'.'Закончить работу'): тГД 1 нлт)е к 1 ЗсгЕ)1 Мепц БсгЕт) табло к - вепц('Что делать)','Продолиить работу'.'Закончить работу'): епб ЗсгЕ11 Ктп Графическое оформление результатов Лля наглядного представления результатов работы программы важно уметь правильно оформлять их.
Наиболее емкой формой отображения информации является графическая. В системе МАТ?.АВ для этого имеется ряд эффективных средств. Общие требования к представления) графической информации Вычислительная программа, создаваемая инженером, в большинстве случаев предназначена для исследования поведения разрабатываемого устройства при разных условиях его эксплуатации и различных значениях его конструктивных параметров или для расчета определенных параметров его поведения. Информация, получаемая в результате выполнения вычислительной инженерной программы, как правило, имеет форму ряда чисел, каждое из которых отвечает определенному значению конкретного параметра (аргумента).
Такую информацию удобнее всего обобщать и представлять в графической форме. Требования к оформлению инженерной графической информации отличаются от требований к обычным графикам в математике. Пользователь-инженер должен иметь возможность принять такое решение о выборе значения некоторых конструктивных параметров, характеризующих исследуемый процесс или техническое устройство, чтобы прогнозируемое поведение технического устройства удовлетворяло заданным условиям. Поэтому инженерные графики должны быть читабельными, то есть такими, чтобы с их помощью можно было легко отсчитывать значения функции при любых значениях аргумента (и наоборот) с относительной погрешностью в несколько процентов. Это становится возможным, если координатная сетка графиков соответствует определенным целым числам какого-либо десятичного разряда Как уже раньше отмечалось, графики„построенные системой МАТ1.АВ, полностью отвечают этим требованиям Графическое оформление результатов Кроме того, инженерную графическую информацию следует снабжать подробным описанием, поясняющим, какой объект исследован и какая математическая модель для этого использована„должны быть привелены числовые значения параметров исследуемого объекта и математической модели.
Не окажется лишним и указание имени программы, с помощью которой получена эта графическая информация, а также наличие сведений об авторе программы и исследователе, чтобы пользователь мог найти источник справок о полученной информации. Задачей инженерной программы часто является сравнение нескольких функций, полученных при разных значениях конструктивных параметров либо параметров внешних воздействий. Такое сравнение удобнее и нагляднее проводить, если упомянутые функции представлены в виде графиков. При этом нужно принимать во внимание следующее.
О Если нужно сравнивать графики функций одного аргумента, лиапазоны изменения которых не слишком отличаются один от другого (не более чем на порядок), сравнение удобнее всего осуществлять по графикам данных функций, построенных в одном графическом поле (в общих координатных осях); в этом случае все графики следует выводить, используя функцию р1оС.
О Если при тех же условиях диапазоны изменения функций значительно различаются, можно предложить два подхода: ° когда все сравниваемые функции представляют величины одинаковой физической природы и принимают только положительные значения, графики следует выводить также в одно графическое поле, но в логарифмическом масштабе (то есть использовать процедуру зепи'1ойу); ° когда все функции представляют величины разной физической природы, но имеют общий аргумент, изменяющийся в одном диапазоне, графики нужно строить в одном графическом окне (фигуре), но в разных графических полях (пользуясь для этого несколькими отдельными обращениями к функции р1ос в разных подокнах графического окна, что обеспечивается применением процедуры зибр1о1); при этом удобно размещать отдельные графики друг под другом таким образом, чтобы одинаковые значения аргумента во всех графиках располагались на одной вертикали.