При возникновении события автоматически запускается процедура обработки события, которую и должен написать программист. Задачу вызова процедуры обработки при возникновении соответствующего события берет на себя Delphi.
В языке Object Pascal основной программной единицей является подпрограмма. Различают два вида подпрограмм: процедуры и функции. Как процедура, так и функция, представляют собой последовательность инструкций, предназначенных для выполнения некоторой работы. Чтобы выполнить инструкции подпрограммы, надо вызвать эту подпрограмму. Отличие функции от процедуры заключается в том, что с именем функции связано значение, поэтому имя функции можно использовать в выражениях.
Процедура начинается с заголовка, за которым следуют:
раздел объявления констант;
раздел объявления типов;
раздел объявления переменных;
раздел инструкций.
В общем виде процедура выглядит так:
procedure Имя (СписокПараметров);
const
// здесь объявления констант
type
// здесь объявления типов var
// здесь объявления переменных
begin
// здесь инструкции программы
end;
Заголовок процедуры состоит из слова procedure, за которым следует имя процедуры, которое используется для вызова процедуры, активизации ее выполнения. Если у процедуры есть параметры, то они указываются после имени процедуры, в скобках. Завершается заголовок процедуры символом "точка с запятой".
Если в процедуре используются именованные константы, то они объявляются в разделе объявления констант, который начинается словом const.
За разделом констант следует раздел объявления типов, начинающийся словом type.
После раздела объявления типов идет раздел объявления переменных, в котором объявляются (перечисляются) все переменные, используемые в программе. Раздел объявления переменных начинается словом var.
За разделом объявления переменных расположен раздел инструкций. Раздел инструкций начинается словом begin и заканчивается словом end, за которым следует символ "точка с запятой". В разделе инструкций находятся исполняемые инструкции процедуры.
Функция начинается с заголовка, за которым следуют разделы объявления констант, типов и переменных, а также раздел инструкций.
Объявление функции в общем виде выглядит следующим образом:
function Имя (СписокПараметров): Тип;
const // начало раздела объявления констант
type // начало раздела объявления типов
var // начало раздела объявления переменных
begin // начало раздела инструкций
result: = Значение; // связать с именем функции значение
end;
Заголовок функции начинается словом function, за которым следует имя функции. После имени функции в скобках приводится список параметров, за которым через двоеточие указывается тип значения, возвращаемого функцией (тип функции). Завершается заголовок функции символом "точка с запятой".
За заголовком функции следуют разделы объявления констант, типов и переменных.
В разделе инструкций, помимо переменных, перечисленных в разделе описания переменных, можно использовать переменную result. По завершении выполнения инструкций функции значение этой переменной становится значением функции. Поэтому среди инструкций функции обязательно должна быть инструкция, присваивающая переменной result значение. Как правило, эта инструкция является последней исполняемой инструкцией функции.
Группа входных языков предназначена для описания проектируемых объектов и управления процессом проектирования. Данную группу можно рассмотреть как язык взаимодействия проектировщика с системой в виде меню и шаблонов (бланков). При выборе операций по меню предложение системы представляет собой перечень фраз, слов или сокращений на естественном языке. Каждый пункт меню может быть помечен порядковым номером, мнемокодом команды или клавиши. Меню является по сути дела подсказкой. Реакцией на непомеченный список альтернатив может служить ввод ключевого слова или аббревиатуры, выбор строки курсором или вводом управляющего кода. Реакцией на выбор того или иного пункта меню будет выполнение соответствующих действий системой.
Заказ, полученный для разработки проекта, может содержать:
чертежи различных форматов (А4-А0), выполненных на бумаге, а также представленных в электронном виде - в файлах форматов. dwg,. bmp,. jpeg, для представления геометрической формы и более полной детализации модели;
текстовую информацию, представленную как на бумаге, так и в электронном виде - в файлах форматов. doc,. txt для более полного уяснения полученной задачи, для выявления обязательных характеристик системы и пожеланий самого заказчика к проектируемой модели.
Все эти данные должны быть использованы инженером-проектировщиком для создания командного файла формата. bat, понятного программе Ansys, который непосредственно будет формироваться в нашей программе, а в дальнейшем отправляться для расчётов в программу Ansys.
Данные, входящие в командный файл, будут являться входными, и в зависимости от задания могут содержать:
материал модели;
константы для формирования условий функционирования модели;
геометрические размеры;
формы и вид нагрузок;
тип интересуемого расчёта;
тип интересующего результата.
Носителями данной информации являются заказчики разработки и непосредственно разработчики, что касается электронной информации, она хранится на дискетах емкостью 1,44 Мб или на CD-дисках емкостью 700 Мб. Размеры файлов зависят от заказа и могут быть как малыми (≈ 1 Мб), так и большими (≈ 500 Мб).
На входных формах будут располагаться элементы следующих типов:
типа TEdit - для отображения названия проекта;
типа TSpinEdit - для выбора типа расчета и номера варианта;
типа TLabeledEdit - для отображения набора вводимых параметров (длина участков, нагрузка и т.д.);
компоненты типа TComboBox - для выбора единиц измерения параметров (м, Н и т.д.);
компонент типа TMainMenu - для осуществления работы с проектом в меню;
компонент типа TStatusBar - для отображения интерактивных подсказок;
компонент типа TSpeedBar - для дублирования команд меню на панели инструментов;
компоненты типа TButton - для перехода между формами.
Промежуточным языком является язык командного файла. Команды, используемые в командном файле, передаваемом ПК ANSYS, перечислены в таблице 4.1
Таблица 4.1 - Команды ПК ANSYS
Команда | Выполняемое действие |
1 | 2 |
/filname | Имя файла |
/title | Заголовок задачи |
/prep7 | Вход в препроцессор |
antype, static | Тип анализа (статический) |
et, 1, link1 | Тип элемента (2D лонжерон) |
r, 1, area, istrn | Реальные константы (площадь поперечного сечения, начальная деформация) |
n, 1, 0, 0 | Узлы (номер, Х-координат, Y-координата) |
real, 1 | Текущий набор реальных констант (номер) |
е, 1, 2 | Элементы (начало, конец) |
d, all, ux | Закрепления (номер узла либо все) |
/SOLU | Начало расчета |
finish | Завершение расчета |
/post1 | Вход в постпроцессор |
/OUT | Вывод в файл |
*VWRITE | Данные для вывода |
Выходные языки ориентированы на вывод полученных в результате проектирования проектных решений в виде проектной документации, которая имеет естественный язык и пояснений не требует:
распечатки результата расчёта как графического изображения (обязательно цветного) или как текстовых документов на формате А4 (Приложение А - Шаблоны выходных документов);
сохранение результатов в графическом формате. bmp или в текстовых форматах. doc,. txt, в электронном виде на различных носителях: на дискетах емкостью 1,44 Мб или на CD-дисках емкостью 700 Мб, размеры файлов зависят от заказа и могут быть как малыми (≈ 1 Мб), так и большими (≈ 500 Мб).
Сообщения пользователю АРЗМ разделяются на сообщения-результаты проверки модели исследования и на сообщения об ошибках, предупреждения и информационные сообщения, выдаваемые в ходе работы с АРЗМ.
Результаты проверки модели исследования в зависимости от степени определенности нарушения разделяются на ошибки и предупреждения. В таблице 4.2 приводится перечень ошибок и предупреждений, возможных для каждого конкретного класса объектов модели исследования.
Таблица 4.2 - Перечень ошибок и предупреждений, выявляемых после проверки модели исследования.
№ | Вид | Сообщение |
1 | Ошибка | Ошибочные данные |
2 | Предупреждение | Введены не все данные |
Сообщения, выдаваемые по ходу работы, выдаются в диалоговых окнах. Вывод всех сообщений дублируются также в log-файл.
Сообщения об ошибках разделяются на критические, фатальные и исправимые.
Возникновение критических ошибок приводит к прерыванию работы с АРЗМ, выходу из программы и, возможно, к перезагрузке системы. Данный тип ошибок обуславливается только ошибками программирования АРЗМ, необнаруженных на этапе тестирования. При появлении такой ошибки выдается либо стандартное сообщение Windows "Программа выполнила недопустимую операцию и будет закрыта", при этом не представляется возможность сохранить текущую работу, либо выдается сообщение АРЗМ о необходимости прервать работу, сохранить текущую работу и выйти из программы.
Фатальные ошибки приводят к прерыванию обработки текущей выполняемой команды без нарушения целостности системы. Данный тип ошибок возникает из-за ошибок в описании модели исследования: неполное описание, взаимоисключающее и т.д. После появления такой ошибки необходимо проверить модель командами проверки и повторить процедуру.