- •Специальность: 220201.65 «Управление и информатика в технических системах»
- •Пояснительная записка к дипломному проекту на тему: «Управление методами и параметрами оптимизации расчетных сеток для численного моделирования механики сплошной среды в реакторных установках»
- •Специальность: 220201.65
- •Задание на дипломный проект
- •Исходные данные к проекту
- •Содержание проекта
- •Отчетный материал проекта
- •Консультанты по проекту (с указанием относящихся к ним разделов проекта)
- •Календарный план работы над проектом
- •Аннотация
- •Содержание
- •Введение
- •1 Постановка задачи
- •2 Анализ современных подходов к оптимизации 2d расчетных сеток
- •2.1 Анализ процесса математического моделирования механики сплошной среды (мсс)
- •2.1.1 Основные положения мсс
- •2.1.2 Численное моделирование в мсс
- •2.1.3 Необходимость применения математического моделирования в реакторных установках
- •2.2 Классификация этапов моделирования в мсс
- •2.1.1 Расчет начальных данных
- •2.1.2 Построение расчетных сеток
- •2.3 Общая характеристика оптимизации расчетных сеток с использованием оптимизатора Mesquite
- •3 Изучение и анализ особенностей программирования в среде visual studio 2008
- •3.2 Роль языка c#
- •3.3 Платформа .Net Framework
- •4 Теоретические вопросы оптимизации 2d расчетных сеток с использованием оптимизАтора Mesquite
- •4.1 Основные принципы оптимизации с использованием оптимизатора Mesquite
- •4.2 Создание динамической библиотеки Mesquite в среде Microsoft Visual Studio 2008
- •4.2.1 Создание динамической библиотеки Mesquite
- •4.2.2 Создание и запуск тестового проекта по оптимизации расчетных сеток
- •5 Проектирование и программная реализация оптиМИзации 2d расчетных сеток для численного моделирования мсс в реакторных установках
- •5.1 Изучение среды GeomGrid2
- •5.2 Структура программы
- •5.3 Библиотека MesqExport
- •5.4 Библиотека ProxyMesqImport
- •5.5 Windows – приложение
- •6 Технико-экономический раздел
- •6.1 Расчет и составление сетевого графика дипломного проекта
- •6.2 Расчет себестоимости дипломного проекта
- •6.2.1 Общие положения
- •6.2.2 Расчет расходов на материалы
- •6.2.3 Расчет основной заработной платы
- •6.2.4 Расчет отчислений на страховые взносы
- •6.2.5 Расчет отчислений в резерв на оплату отпусков
- •6.2.6 Резерв на выплату премии по результатам выполнения кпэ
- •6.2.7 Расчет прямых расходов
- •6.2.8 Расчет косвенных расходов
- •6.3 Расчет экономической эффективности разработки
- •7 Безопасность и экологичность
- •7.1 Основные положения
- •7.2 Анализ опасных и вредных производственных факторов
- •Психофизиологические:
- •7.3 Требования безопасности при работе с эвм
- •7.4 Требования безопасности к рабочему месту
- •7.5 Требования безопасности к рабочему помещению
- •7.6 Требования к обслуживающему персоналу
- •7.7 Экологичность дипломного проекта
- •7.8 Методы анализа риска
- •7.9 Анализ риска разрабатываемого модуля
- •7.10 Первая помощь при поражениях электрическим током
- •7.11 Требования по пожарной безопасности
- •Заключение
- •Список литературы
- •Приложения
3.2 Роль языка c#
Язык программирования C# является языком программирования, по синтаксису очень похожим на Java, но не идентичным ему. С# основан на синтаксических конструкциях С++, поэтому C# можно назвать «рафинированной» версией С++, ведь они являются языками одного семейства.
В C# поддерживаются формальные свойства типов и возможность объявления методов с переменным числом аргументов (через массивы параметров). Подобно С++, в C# позволяется перегрузка операций, а также создание структур, перечней и функций обратного вызова (посредством делегатов).
C# является гибридом множества языков, который синтаксически «чист» как Java, прост, как Visual Basic и обладает мощью и гибкостью, как С++.
В [7] перечислены следующие возможности языка C#:
- не требуется никаких указателей;
- автоматическое управление памятью через сборку мусора;
- формальные синтаксические конструкции для перечней, структур и свойств классов;
- аналогичная С++ перегрузка операций для пользовательских типов, но без лишних сложностей;
- возможность строить общие типы и общие члены с использованием синтаксиса, очень похожего на шаблоны С++;
- полная поддержка техники программирования, основанной на использовании интерфейсов;
- полная поддержка технологии аспектно-ориентированного программирования через атрибуты, что позволяет назначить характеристики типам и их членам для уточнения их поведения.
Получаемый с помощью C# программный код может выполняться только в среде выполнения .NET. Официальный термин, используемый для описания программного кода, предназначенного для среды выполнения .NET, - управляемый программный код (managed code). Бинарный объект, содержащий такой управляемый программный код, называется компоновочным блоком.
3.3 Платформа .Net Framework
Язык С# и средства его поддержки в настоящее время крепко связаны с платформой разработки .NET Framework. Названная платформа[8] включает общеязыковую исполняющую среду (CLR – Common Language Runtime) и библиотеку классов (FCL – Framework Class Library). Платформа .Net Framework разработана Microsoft и реализована в последних версиях ОС Windows.
Следует заметить, что язык С# является только одним из многих языков, на которых можно писать программы, работающие на платформе .NET Framework. При использовании данной платформы подготовленный код программы вначале транслируется в код на общем для всех исходных языков промежуточном языке (CIL – Common Intermediate Language). На рисунке 2.4 это показано схематически.
Исходный код C#
Компилятор C#
CIL-инструкции, метаданные (*.dll or *.exe)
Исходный код C++
Компилятор C++
Рисунок 2.4 – Генерация .Net-компиляторами инструкций CIL и метаданных
Последовательность процессорных команд появляется позднее – во время выполнения команд CIL средой CLR.
Основным преимуществом платформы .NET Framework является возможность разработки приложений, используя одновременно несколько разных языков программирования. Такая возможность обеспечена общей системой типов (CTS – Common Type System), которую используют все языки, ориентированные на CLR.
Для обеспечения межъязыкового взаимодействия необходимо придерживаться общеязыковой спецификации (CLS – Common Language Specification). Эта спецификация ограничивает все разнообразие типов того или иного языка программирования тем подмножеством, которое присутствует одновременно во всех языках. Любой из типов, соответствующих спецификации CLS присутствует в каждом из языков и понятен в каждой части многоязыковой программы.
