Руководство пользователя системы sigma «Исследование напряженно-деформированного состояния плоского объекта» - davaiknam.ru o_O
Главная
Поиск по ключевым словам:
Похожие работы
Название работы Кол-во страниц Размер
Исследование напряжённо-деформированного состояния. Предположим,... 1 8.88kb.
Прикладная механика 1 25.47kb.
Литература ко второй части 1 252.26kb.
Цветной картплоттер с датчиками Руководство пользователя -i 9 1104.01kb.
Реологические свойства грунтов и их учет 6 398.55kb.
Руководство пользователя Содержание Общие положения 1 Требования... 1 75.69kb.
Руководство пользователя Май 1994 Версия 50 beta 1 294.21kb.
Руководство пользователя электронного сервиса смэв 6 715.45kb.
Руководство пользователя электронного сервиса смэв 5 546.45kb.
Теория пластичности 1 27.51kb.
Руководство пользователя Стандартные функции системы 4 518.98kb.
Проведение научно-исследовательских и опытно-конструкторских работ... 3 642.96kb.
Направления изучения представлений о справедливости 1 202.17kb.

Руководство пользователя системы sigma «Исследование напряженно-деформированного - страница №1/5




Столярчук В.А. «Моделирование систем». Курсовой проект. Описание и руководство пользователя

системы SIGMA

Кафедра 609

Если ничто другое не помогает,

прочтите, наконец, инструкцию

Закон Мерфи

Столярчук В.А.
ОПИСАНИЕ

И РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

системы SIGMA

«Исследование напряженно-деформированного состояния плоского объекта»

Предисловие


Учебный программный комплекс SIGMA «Исследование напряженно-деформированного состояния плоского объекта» предназначен для проведения курсовых работ студентов старших курсов высших технических учебных заведений.

Целями курсовой работы, проводимой на основе данного комплекса, являются:



  • Знакомство студентов с программной системой, приближенной к реальным системам,. И Пполучение навыков работы с подобными системами;

  • Изучение логики построения вычислительного модуля, его структуры и возможностей;

  • Углубленное изучение основных методов алгоритмизации в программных системах, предназначенных для решения задач механики простых сред;

  • Приобретение опыта в практических вопросах проектирования математического обеспечения и конструирования соответствующих алгоритмов для подобных программных систем.

Заданием к курсовой работе будет являться моделирование определенного объекта при заданных способах нагружения и закрепления. В каждой точке объекта необходимо рассчитать и проверить на сходимость:

  • Напряжение, направленное по оси Х;

  • Напряжение, направленное по оси Y;

  • Касательное напряжение;

  • 1-ое главное напряжение;

  • 2-ое главное напряжение;



Содержание.





Предисловие 1

Содержание. 2

Методология сравнения языков программирования. 3

ООП 3

Выбор языка 6

Особенности и достоинства системы программирования Delphi 7

Структура программного комплекса Sigma 9



Структура главного модуля. 9

Структура проекта. 9

Функции проекта 10

Структура файла проекта. 11



Структура расчетного блока программного комплекса 12

Структура модуля редактирования форм. 17

Класс основных параметров 17

Класс множество зон и узлов 17

Класс пластины 18

Структура файла формы 18

Структура модуля графическое отображение результатов расчета. 20

Класс узлов 20

Класс конечных элементов 21

Структура системы плагин. 21



Основные функции плагина 22

Основные функции главного модуля. 22

Инициализация плагинов. 23

Описание конвертора входных данных в формат Msc NASTRAN 70 23



Формат входного файла NASTRAN-a. 23

Алгоритм работы конвертора 25

Принципы взаимодействия подсистем 25



Взаимодействие с плагинами общего плана. 26

Взаимодействие с плагином редактирования формы. 26

Взаимодействие с плагином редактирования расчетного блока. 27

Руководство пользователя 27



Требования к аппаратному обеспечению 27

Установка программного комплекса 27

Описание комплекса 28

Главное окно программного комплекса 28

Создание нового проекта 29

Открытие существующего проекта 29

Сохранение проекта 30

Закрытие проекта 30

Редактирование формы 30

Панель статуса 31

Рабочая область 31

Функциональная панель 32

Масштаб 32

Настройки 32

Зона 33

Узел 33


Действия 33

Дополнительная панель 34

Некоторые правила задания геометрии пластины 34

Задание параметров пластины 35

Модификация исходных текстов расчетного блока 36

Конфигурирование проекта 37

Компиляция проекта. 38

Расчет. 39

Текстовый результат. 39

Графическое отображение результатов расчета. 40

Рабочая область 42

Панель цветовой шкалы 42

Функциональная панель 42

Показывать. 42

Масштаб 43

Количество уровней. 43

Тип напряжений. 43

Перемещения. 44

Отображение вектора силы. 44

Определение напряжения в точке. 44

Дополнительная панель 44

Панель статуса 45

Экспорт в NASTRAN. 45

Загруженные модули. 46

Конфигурирование комплекса. 46

Файлы. 46

Результат расчета. 47

Обработка результатов. 47



Работа с программным комплексом 48

Работа с унифицированным расчетным блоком. 50

Возможности. 50

Настройка. 50

Использование. 51



Список программного обеспечения и систем 55

Список литературы 56

Приложение. 58

Главный модуль 58



Взаимодействие с проектом 58

Взаимодействие с комплексом 59

Внешние функции плагинов 59

Модуль редактирования формы 59

Классы чтения файла отчета расчета. 61

Методология сравнения языков программирования.


Прототипом автоматизированной системы является система учебно-исследовательская САПР «Sigma», разработанная на PC для ОС Microsoft® MS-DOS на языке Турбо-Паскаль.

Настоящая система разрабатывается на PC AT/ATX для работы под управлением ОС Microsoft® Windows 95/98 в системе программирования для Windows — Borland Delphi 3.

Рассмотрим основные особенности, достоинства и недостатки, а также другие аспекты упомянутых выше языков и систем.

ООП


Объектно-ориентированное программирование (ООП) стало сегодня естественным способом разработки сложного программного обеспечения с графическим интерфейсом пользователя. Объектно-ориентированные методы — это мощный инструмент, позволяющий вам разрабатывать сложные системы, устойчивые по отношению к ошибкам и допускающие последующее расширение. ООП основано на объектно-ориентированной модели, для которой объекты являются основными предметами рассмотрения. Объектно-ориентированная модель предоставляет объектам средства взаимодействия друг с другом.

Сегодня существует много немало объектно-ориентированных языков программирования (ООЯП), таких как Object Pascal, C++, Ada, Java и др. Удобство объектно-ориентированной нотации, предоставляемой ООЯП, является одним из важных факторов объектного подхода в программировании. Одна и та же зЗадача, выраженная в объектно-ориентированных терминах, выглядит, как правило, и проще, и более естественно, чем с использованием других методов, благодаря введению классов, отражающих понятия рассматриваемой предметной области.



ООП может быть характеризовано следующими утверждениями:

  • ООП использует объекты как строительные блоки. Объект — это активная единица данных.

  • Объект — это комбинация, как элементов данных, так и операций с этими элементами, упакованных вместе для удобства использования. Конструктивно класс устроен так, чтобы отделить общедоступный интерфейс от специфики реализации. Размещение деталей реализации в одном месте и отделение их от абстрактного интерфейса называется инкапсуляцией. Сокрытие данных (размещение данных в закрытом разделе класса) есть пример инкапсуляцииОбъединение данных и кода называется инкапсуляцией.

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

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



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

Без сомнения, наиболее фундаментальным понятием ООП является понятие объекта.

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

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

Концепция объекта является ключом к пониманию объектно-ориентированного программирования. Экземпляры объекта, или просто объекты, считаются активными образованиями с определенными обязанностями. Обязанность объекта состоит в определенном “контракте” с окружающим миром по предоставлению некоторых “услуг”.

Термины объект и экземпляр объекта используются здесь вперемежку и обозначают конкретные экземпляры, или воплощения, или образцы, построенные согласно определению класса.

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



  • Порция данных. Как порция данных объект выглядит подобно паскалевской записи record. Он имеет поля, которым присваиваются значения, и эти поля могут быть различного типа. Комбинация значений всех полей объекта определяет состояние объекта. Изменение значения поля изменяет состояние объекта.

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

Комбинация двух взаимно дополняющих взглядов делает объекты такими мощными средствами. Они становятся удобным инструментом для абстракций: внутренность объектов рассматривается как “черный ящик”, доступ к которому осуществляется только через определенный интерфейс методов. Только явно объявленные видимыми характеристики объектов становятся сигнатурой, называемой еще протоколом, объекта.

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

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

Однако класс не отвечает за уничтожение экземпляров, поскольку эту способность поддерживает сам активный экземпляр, имеющий соответствующий метод — деструктор.

Объявление класса определяет структуру представителей класса и набор допустимых операций, которые могут выполняться с представителями этого класса. В принципе, объявление класса — это объявление типа; это статическое описание представителя класса и его поведения после создания. Его можно рассматривать как рецепт создания представителей класса, нечто определяющее характеристики и поведение “живого” объекта. Класс, сам по себе, не “живой”, но он является заготовкой для своих представителей.

Короче говоряДругими словами, класс инкапсулирует концепцию данных и действий в единое унифицированное образование. Объявления классов определяют три характеристики объектов:



  • Данные объекта. Атрибуты исходных данных, называемые еще полями, содержатся в каждом объекте.

  • Методы объекта. Их еще называют операциями, функциями-элементами или действиями в других языках программирования.

  • Свойства объектов. Высокоуровневые атрибуты данных, которые тесно связаны с соответствующими методами доступа к данным.

Интерфейс класса — это набор всех элементов описания класса — полей, методов и свойств. Эти элементы иногда называют особенностями класса.

Выбор языка


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

Что является целью планируемого сравнения языков — академические интерес или прагматические причины, такие, например, как выбор наиболее подходящего языка программирования для реализации некоторого проекта?

Для кого и с какой целью разработаны сравниваемые языки программирования?

Являются ли программы, написанные на этом языке программирования, «удобочитаемыми»? Является ли синтаксис этого языка программирования целостным? Является ли синтаксис этого языка кратким и в тоже время достаточно выразительным?

Какие примитивные типы данных поддерживаются в этом языке? Возможно ли создание новых типов данных? Насколько строгим является язык в трактовке данных?

Сколько уровней областей действия имеется в данном языке программирования? Имеется ли возможность рекурсивного обращения к подпрограммам?

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

Учитывая вышесказанное, а также тот факт, что прототип системы был разработан на языке Турбо-Паскаль, выбор языка Паскаль является достаточно разумным по следующим соображениям: среди возможных языков для реализации при заданной конфигурации (Паскаль, Си, Фортран...) выбор должен быть сделан в пользу языка, имеющего широкие возможности по использованию графики и наиболее легкого и доступного в обучении. Язык Паскаль был специально разработан для обучения программированию, содержит все необходимые функции для выполнения предусмотренных в системе расчетов.

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

Разумеется, выбор языка Си также являлся бы вполне обоснованным, т.к. являясь языком высокого уровня, мало в чем уступает Ассемблеру, кроме того, он достаточно распространен и имеет эффективные средства поддержки, такие как интегрированные среды Турбо-Си, Builder и другие. Язык также невелик по объему и лаконичен, ориентирован на создание структурированных программ. Однако в данном случае недостатки языка являются продолжением его достоинств. Так, лаконичность может обернуться трудно читаемыми программами, а богатство выразительных возможностей порождает сложность в освоении языка. Таким образом, выбор языка Паскаль в данном случае является наиболее предпочтительным.

Одной из самых могучих сред разработки для ОС Microsoft® Windows, использующих Паскаль (Объектный Паскаль), является система Borland Delphi, в частности Borland Delphi версия 3.

Особенности и достоинства системы программирования Delphi


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

Delphi — это не просто редактор и компилятор. Это могучая среда разработки, значительно облегчающая участь разработчика приложений.

В течение многих лет разработчиков вполне устраивали традиционные средства программирования, включающие редактор, компилятор и отладчик. Windows-ориентированные системы разработки добавили к этому набору визуальные методы создания интерфейса программ и автоматическую генерацию соответствующего программного кода. Delphi, вобрав в себя все эти черты, идет и дальше. Например, Open Tools API (Application Programming Interface — интерфейс прикладного программирования) позволяет писать такие утилиты, например эксперт автосохранения (auto-save expert), которые включаются в интегрированную среду Delphi (Integrated Development Environment, или IDE). Действительно, приложения с помощью Delphi разрабатываются быстро, причем взаимодействие разработчика с интерактивной средой Delphi не вызывает внутреннего отторжения, а наоборот, оставляет ощущение комфорта. Delphi-приложения эффективны, если разработчик соблюдает определенные правила (и часто — если не соблюдает). Эти приложения надежны и при эксплуатации обладают предсказуемым поведением.

Такие языки, как Visual Basic, являются псевдообъектопсевдо объектно-ориентированными — они используют объекты и методы, но не поддерживают основных концепций объектно-ориентированного программирования, таких как инкапсуляция, наследование и полиморфизм. Delphi лишена этого недостатка. Это настоящий объектно-ориентированный язык, который позволяет объединять данные и код в один класс (инкапсуляция), создавать дочерние классы (наследование) и обращаться с классами-потомками, как с родительскими классами (полиморфизм).

Элементы экрана, составляющие приложения Windows, довольно просты. Например, стандартная кнопка — обычно она представлена в виде выступающего серого прямоугольника, на поверхности которого написан текст, соответствующий назначению кнопки. Delphi «берет» функциональность кнопки — ее способность отвечать на щелчок мышью и отображать некоторый текст — и «подает» ее в виде объекта, известного как компонент. Компоненты хранятся в библиотеке компонентов, содержащей все объекты, необходимые для создания полноценных программ, использующих интерфейс Win32.

Объектно-ориентированная природа Delphi делает библиотеку компонентов необычайно гибкой. Если требуется дополнительная функциональность либо модифицирование поведения компонента, наследуется новый компонент из того, который уже хранится в библиотеке, и добавляется немного изменений.

Delphi поддерживает объекты, которые создаются с помощью других языков (например, C++) на основе стандарта ОСХ. ОСХ-объекты чаще всего поставляются независимыми компаниями, разрабатывающими программное обеспечение, удовлетворяя при этом широкому спектру потребностей сегодняшних компьютерных пользователей. ActiveX представляет измененную модель ОСХ и принят как стандарт для подключаемых объектов, особенно это касается броузеров браузеров Internet. Благодаря способности Delphi создавать объекты ActiveX и манипулировать ими, становится доступной мощность Internet.

Delphi оперирует четырьмя типами шаблонов: формами, приложениями, компонентами и кодами. Шаблоны формы, приложения и компонента дают возможность повторно использовать созданные ранее коллекции объектов либо в отдельных программах, либо в качестве основы для новой программы. Шаблон кода — это новое средство, которое значительно уменьшает потребности во вводе повторяющихся фрагментов кода.

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

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

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


следующая страница >>



Сплетня — это плата за гостеприимство. Дон-Аминадо
ещё >>