Подпрограммы помощи: Help() и Stat(): в реализации этих подпрограмм нет ничего сложного – они просто выводят информацию с помощью оператора write

112439
знаков
9
таблиц
11
изображений

1.         Подпрограммы помощи: Help() и Stat(): в реализации этих подпрограмм нет ничего сложного – они просто выводят информацию с помощью оператора write.

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

API AV favUpdate, потом с помощью пустого цикла идет задержка. Пустой цикл просто перебирает числа от 1 до значения переменной delay*106. Это повторяется циклически для всех необходимых значений k.

3.         Подпрограммы вида отображения: Visu(), Plain(), PlainX, PlainY(): в них сначала происходит проверка на текущий тип отображения. Если он не совпадает с тем, который выбран сейчас, то производится подготовка оболочки AV (масштабы шкал, их названия, тип отображения). Потом заполняется необходимый массив и вызывается favUpdate.

4.         Служебные подпрограммы: ChangeK(): изменяет текущий шаг моделирования (переменная k), затем заполняет все массивы новой информацией, после чего вызывает favUpdate. ChangeDelay(): изменяет значение переменной delay, которая влияет на время задержки при анимации, а также на время задержки при исполнении команды pause. Paus(): подпрограмма сделана специально для скриптового режима. Она обеспечивает задержку. Состоит из пустого вложенного цикла.

Таким образом мы разобрали структуру и принципы работы программы console.exe. Приступим теперь к ее описанию.

1.5 Описание работы программы визуализации

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

·           Терминология программы

·           Формат файла со служебной информацией (pre-файла).

·           Команды программы

·           Скриптовый режим программы

·           Запуска программы.

Терминология программы.

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

·           k – шаг моделирования. Т.е. если у вас прибор промоделирован в нескольких режимах (например, при разных потенциалах на контактах полупроводника), то число k отражает номер этого режима.

·           pre-файл – файл со служебной информацией (например, размерности массива)

·           скрипт – последовательность команд (сценарий), записанных в текстовый файл, которые программа может интерпретировать.

·           i – переменная в трехмерном массиве TDMas. Ее аналог – координата y

·           j – переменная в трехмерном массиве TDMas. Ее аналог – координата x.

·           Формат данных – формат по которому записываются данные в файл.

Формат pre-файла.

Pre-файл (от preset – предварительные установки)– это файл с установками, необходимыми для работы программы, а также с оформлением шкал.

Минимальная длина этого файла в строках – три, максимальная не ограничена, но читаться будут только первые восемь. Итак построчно:

1.         Максимальное значение k. Формат: I2 (integer, две цифры)

2.         Максимальное значение i. Формат: I2

3.         Максимальное значение j. Формат: I2

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

4.         Коэффициент по оси X (j). Это позволяет отобразить данные не с теми координатами, которые предлагает AV, а с необходимыми вам. Т.е. индексы массива будут переведены, например, в микроны. По умолчанию равен 1 (т.е. на шкале отображаются индексы массива). Формат: E4.2 (т.е. вещественный, две цифры после запятой. Например, 0.50)

5.         Коэффициент по оси Y (i). По умолчанию равен 1. Формат: E4.2

6.         Имя оси X. Это имя отображается как имя заданной оси. Длина – не более 20 символов. По умолчанию : ‘X’.

7.         Имя оси Y. Не более 20 символов. По умолчанию: ‘Y’.

8.         Имя оси Z. (ось результатов). Не более 20 символов. По умолчанию: ‘Z’

Далее можно вставлять свои комментарии и пояснения. Программой они не учитываются.

Команды программы.

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

Команды можно разделить на четыре группы:

1.         Команды помощи

2.         Виды отображения

3.         Анимация

4.         Служебные

Рассмотрим все команды (включая их дополнительный ввод) по их видам:

Команды помощи:

·           help – эта команда выводит информацию о программе, ее версии и список всех доступных команд. Упоминание о ней есть в строке приглашения к вводу (Enter comand (help for comand list)>).

·           status – эта команда выводит сообщение о текущих установках: максимальное и минимальное i, максимальное и минимальное j, максимальное k, текущее k, значение delay.

Виды отображения:

·           visual – эта команда включает 3D-вид отображения. При запуске программы включается именно он. Она не требует дополнительного ввода.

·           plain3d – эта команда включает отображение в виде растровой карты (контрастной заливки). В этом виде нельзя проводить анимацию. Не имеет дополнительного ввода.

·           plainx – эта команда переключает в режим отображения одномерных массивов. Она позволяет отобразить сечение по Y. (Т.е. будет отображаться массив с изменяющейся координатой X и постоянной координатой Y). Требует ввод i.

·           plainy – эта команда также переключает в режим отображения одномерных массивов. Она позволяет отобразить сечение по X. (Т.е. будет отображаться массив с изменяющейся координатой Y и постоянной координатой X). Требует ввод j.

Анимация.

·           anim – эта команда позволяет провести анимацию при выбранном типе отображения (кроме контрастной заливки). При 3D –виде (команда visual) она требует только ввода начального значения k (k1) и конечного значения k (k2). При сечении по Y (команда plainx) она требует ввода координаты i, при каком значении этой переменной будет происходить анимация. При сечении по X (команда plainy) она требует ввода координаты j, при каком значении этой переменной будет происходить анимация. По окончании анимации текущее k принимает значение k2.

Служебные команды.

·           k – эта команда позволяет изменить текущее значение k. При наборе k<0 k становится равным 1. При наборе k>max k, k становится равным max k.

·           delay – эта команда позволяет изменить значение переменной delay, которая определяет задержку между кадрами анимации. Это значение нисколько не указывает на количество секунд или миллисекунд, на которые происходит задержка. При равных значениях переменной delay, более быстрые компьютеры будут давать более маленькую задержку. Начальное значение – 80.

·           pause – эта команда предназначена для скриптового режима работы. Она позволяет приостановить программу. Требует дополнительного ввода количества задержек.

newfile – эта команда позволяет загрузить новые файлы. Она перебрасывает в начало работы с программой.

·           exit – выход из программы.

Скриптовый режим программы.

Наличие этого режима – прямое следствие консольного интерфейса программы. Т.е. для создания такой возможности не было необходимости в дополнительных затратах.

Скрипт (сценарий) состоит из команд программы и требуемого для них дополнительного ввода. Кроме этого, первые две строки скрипта это имена pre-файла и файла данных соответственно. Приведем простой пример скрипта:

out.pre

out.txt

plainx

20

delay

50

anim

2

12

20

pause

2

exit

Его работа заключается в следующем:

·           Считывается pre-файл out.pre из директории где находится программа console.

·           Считывается файл данных out.txt из директории где находится программа console.

·           Выполняется команда plainx (сечение по Y) с координатой i=20. Координата задается в следующей строке после команды. Любой дополнительный ввод начинается с новой строки скрипта.

·           Замена стандартного значения задержки (80) на новое – 50.

·     Далее выполняется анимация этого вида. После команды anim следуют три строки с ее параметрами – начальное k (2), конечное k (12) и координата i (20), по которой будет происходить сечение.

·     Потом выполняется команда pause с параметром 2. Это дает двойную задержку перед выполнением следующей команды.

·     Далее идет команда exit, закрывающая экземпляр AV и программу console.

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

Запуск программы console.

Как видно из предыдущих подразделов программу можно запустить в двух режимах: командном и скриптовом.

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

·           Запуск в скриптовом режиме: это можно осуществить только при помощи сеанса MS-DOS (Windows 95/98) или программ-оболочек с командной строкой DOS (например Far, Dos Navigator, Norton Commander). Скриптовый режим обеспечивается при помощи перенаправления ввода. Т.е. в командной строке указывается имя программы, потом символ перенаправления ‘<, затем имя файла со скриптом. Пример командной строки: console.exe < in.txt. При выполнении этой команды весь ввод будет браться из файла скрипта in.txt.


Информация о работе «Визуализация инженерных и научных расчетов»
Раздел: Информатика, программирование
Количество знаков с пробелами: 112439
Количество таблиц: 9
Количество изображений: 11

Похожие работы

Скачать
249178
21
46

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

Скачать
114601
5
73

... концентрических окружностей с уменьшающимся радиусом по мере затухания колебаний скорости и момента. Аналогичная картина наблюдается при ступенчатом набросе нагрузки. 5. РАЗРАБОТКА ВИРТУАЛЬНОЙ ЛАБОРАТОРНОЙ РАБОТЫ НА БАЗЕ ВИРТУАЛЬНОЙ АСИНХРОННОЙ МАШИНЫ   Иную возможность анализа АД представляет специализированный раздел по электротехнике Toolbox Power System Block. В его библиотеке имеются блоки ...

Скачать
60267
1
0

... - в группе переменных, «зажатых в кулак», но этот «кулак», как мы уже отмечали, легко разжать, выводя на дисплей найденные значения с «первородной» размерностью массы (kg), длины (m) и времени (sec): пакет MathCAD «разжимает» и сам вектор, м составные размерности, приписывая к числам комбинации основных физических единиц. Но не только этим хороша размерность в задачах. Главное то , что она ...

Скачать
55431
1
0

... де-факто, чему способствовала и их большая универсальность). Таким образом, именно Microsoft Excel был выбран мной для разработки средства автоматизации расчетов в лабораторной работе «Предварительные вычисления в триангуляции». Поэтому другие средства построения электронных таблиц здесь не рассматриваются, но зато уделяестся внимание некоторым специфичным средствам Excel. Возможности EXCEL ...

0 комментариев


Наверх