1.26M
Категория: ПрограммированиеПрограммирование

Zhuchkov_dipPrez

1.

Южный Фередральный университет, г. Ростов-на-Дону.
Институт математики, механики и компьютерных наук им. И.И. Воровича
Кафедра математического моделирования
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА
Разработка серверной части БД для ACELAN
COMPOS
по направлению подготовки
01.03.02 – Прикладная математика и информатика
Работу выполнил: Жучков М. Ю.
Научный руководитель: Герасименко Т. Е.

2.

ACELAN-COMPOS
ACELAN-COMPOS представляет собой конечно-элементный комплекс программ
для анализа и изучения материалов и структур композитного происхождения.
Средства ACELAN-COMPOS позволяют получить различные свойства и
характеристики изучаемых материалов для измерения различных физических
характеристик, проведения анализа моделей и внесения изменений.
2 / 12

3.

Постановка задачи
Данная работа посвящена разработке и реализации способа хранения
материальных свойств изотропных и анизотропных материалов с использованием
реляционных
баз
данных,
а
также
пользовательского
интерфейса,
предназначенного для удобного просмотра и редактирования материалов
различных классов с учётом их свойств.
3 / 12

4.

Особенности модели рассматриваемых материалов
Пакет ACELAN-COMPOS позволяет исследовать различные пьезоэлектрические и
магнитно-электрические композиты. Характер таких задач подразумевает
необходимость хранения различных пьезоэлектрических и диэлектрических
постоянных, а также матриц для различных свойств. Данные матрицы
заполняются определенным образом, что определяет тип материала и его
свойства.
4 / 12

5.

Model-View-Controller
При создании использовался архитектурный шаблон Model-View-Controller. Он
обеспечивает интеграцию с веб-сервером и сервером баз данных. Данный
архитектурный шаблон разделяет приложение на три логических компонента, где
модель (Model) — структура данных, обрабатывающая информацию,
представление (View) — представление данных для пользователя, контроллер
(Controller) — связь между моделью и представлением.
5 / 12

6.

Реализация базы данных
Хранения материалов было реализовано с применением реляционной СУБД
PostgreSQL в виде таблицы «materials» и определена её структура.
6 / 12

7.

Реализация базы данных
В рамках экспериментов удобно сортировать материалы по тегам. Для этого были
созданы таблица tags и таблица связи между материалами и тэгами
materials_tags.
7 / 12

8.

Реализация базы данных
Между таблицами materials и tags реализована связь «многие ко многим», что даёт
возможность связи одного или нескольких элементов из одной таблицы с одним
или несколькими элементами из другой таблицы.
8 / 12

9.

Пользовательский интерфейс
Пользовательский интерфейс реализован в виде web-приложения, позволяющего
просматривать и редактировать материалы разных классов анизотропии с учетом
их свойств.
9 / 12

10.

Реализация добавления и просмотра данных
При организации и представлении данных должно быть определено, что для
просмотра и дальнейшего редактирования данные должны соответствовать
текущему авторизованному пользователю. Для решения данной задачи
реализовано ограничение, которое не позволяет добавлять тэги к материалам, не
относящимся к данному пользователю. Добавление материала доступно при
нажатии кнопки «New» на главной странице. При нажатии данной кнопки
открывается страница для создания мате-риала.
10 / 12

11.

Реализация добавления и просмотра данных
Для добавления тэга необходимо нажать на кнопку со знаком «+». При нажатии
данной кнопки открывается страница для создания тэга к выбранному материалу.
Введённые пользователем данные отправляются в соответствующий контроллер
методом POST протокола HTTP. Для того, чтобы обеспечить правильную
обработку контроллером, пользователь не может сохранить введённые данные
при неверном заполнении форм. Пока поле не будет заполнено корректно,
пользователь не сможет сохранить эти данные.
11 / 12

12.

Реализация поиска
Для пользователя предусмотрена возможность поиска по материалам и по тэгам.
Для организации поиска в экземплярах класса предусмотрен scope :search,
который позволяет осуществлять запрос о наличии в базе данных фрагмента
названия, преобразованного в нижний регистр.
12 / 12
English     Русский Правила