Предметно-ориентированное расширение языка программирования общего назначения средствами решения задач эфемеридной астрономии Михеева Вероника Дмитриевна.

Презентация:



Advertisements
Похожие презентации
Эффективная технология графического представления астрометрических данных Вероника Михеева Институт Прикладной Астрономии РАН Санкт-Петербург 8 июня 2004.
Advertisements

Учебный курс Объектно-ориентированный анализ и программирование Лекция 4 Трансформация логической модели в программный код Лекции читает кандидат технических.
Ф. Т. Алескеров, Л. Г. Егорова НИУ ВШЭ VI Московская международная конференция по исследованию операций (ORM2010) Москва, октября 2010 Так ли уж.
РАЗРАБОТКА И ВНЕДРЕНИЕ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ АНАЛИЗА И ПРОГНОЗИРОВАНИЯ ПРОИЗВОДСТВЕННЫХ СИТУАЦИЙ ДОМЕННОГО ЦЕХА С ЦЕЛЬЮ ПОВЫШЕНИЯ ЭФФЕКТИВНОСТИ УПРАВЛЕНИЯ.
Проектирование архитектуры ИСО 1. UML 2 Структура определения языка 4.
Разработка баз данных предприятий ЯОК Саровский физико-технический институт.
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ СТАВРОПОЛЬСКИЙ ГОСУДАРСТВЕННЫЙ АГРАРНЫЙ УНИВЕРСИТЕТ.
Выполнила студентка гр. ВТБ – 112 Мурзина М.. План 1.Программное обеспечение компьютера (определение)Программное обеспечение компьютера (определение)
«Запросы в MS Access» Преподаватели: Андреева Е. С. Никитенко Т. В.
Лекция 5 Способы конструирования программ. Основы доказательства правильности.
БЭСТ Дизайнер проектов Введение Концепции Основные понятия.
Кафедра математики, логики и интеллектуальных систем ИЛ РГГУ 1 Система управления базой понятий ЭЗОП Е. М. Бениаминов © Институт лингвистики.
Презентация дисциплины по выбору Для студентов, обучающихся по направлению «Прикладная информатика» (магистерская программа «Прикладная информатика.
ИС «Научный институт РАН» А.Н.Бездушный, ВЦ РАН. 2 ЕНИП РАН Эта инициатива призвана помочь научным коллективам: сделать несколько шагов в направлении.
Санкт-Петербургский государственный университет информационных технологий, механики и оптики Санкт-Петербург 2009 Санкт-Петербургский государственный университет.
Информационная система прогнозирования оптимальной структуры подготовки кадров и КЦП в учреждения профессионального образования.
1. Определить последовательность проезда перекрестка
Белорусский государственный университет Механико-математический факультет Кафедра теоретической и прикладной механики Царева Алина Александровна Кинематическое.
ГОСТЕХКОМИССИЯ РОССИИ РУКОВОДЯЩИЙ ДОКУМЕНТ Защита от несанкционированного доступа к информации.
Этапы решения задач на компьютере 1. Постановка задачи. 2. Построение математической модели. 3. Составление алгоритма. 4. Запись алгоритма на языке программирования(кодирование)
Транксрипт:

Предметно-ориентированное расширение языка программирования общего назначения средствами решения задач эфемеридной астрономии Михеева Вероника Дмитриевна Научные руководители: к.ф.-м.н. Новиков Ф. А. к.ф.-м.н. Скрипниченко В. И. ДИССЕРТАЦИЯ на соискание ученой степени кандидата физ.-мат. наук Институт прикладной астрономии РАН Санкт-Петербург – «Астрометрия и небесная механика» «Дельта»

Успешное применение системы ЭРА более 20 лет Периодические издания ИПА РАН: АЕ, МАА-2, МАЕ, PersAY, Штурман Ограничения системы ЭРА Потребность в одновременном применении средств СЛОН и Object Pascal Потребность в графических средствах 1. Исторические предпосылки и постановка задачи Стр. 2/22 Глава 1 Михеева В.Д. «Дельта»

Цель. Расширение области применения системы ЭРА (Эфемеридные Расчеты в Астрономии) за счёт развития её выразительных и функциональных средств. Задача. Разработать подход, позволяющий интегрировать в одной системе программирования средства предметно-ориентированного языка (СЛОН) и языка программирования общего назначения (Object Pascal). На стыке научных областей: 1.Предметная область – эфемеридная астрономия 2.Теоретическая информатика Основная цель и задача Стр. 3/22 Глава 1 Михеева В.Д. «Дельта»

Стр. 4/22 Обоснование поставленной задачи Практическое обоснование Теоретическое обоснование Глава 1 Михеева В.Д. «Дельта»

Стр. 5/22 Конкретизация постановки задачи Глава 1 Разработать новый язык Дельта как расширение языка программирования общего назначения табличными операторами ЭРА и реализовать соответствующие средства программирования. Требования: – Доступ к табличным операторам СЛОН в Object Pascal с возможными расширениями – Эффективность исполнения не хуже интерпретации СЛОН-процессором – Усовершенствованные средства отладки целевых программ – Обратная совместимость с программами на языке СЛОН – Настройка на предметную область по описанию конфигурации ЭРА – Развитие инструментальных средств в области графического представления данных эфемеридной астрономии Михеева В.Д. «Дельта»

Стр. 6/22 Анализ методов расширения языков программирования Определены методы расширения языков прог. (8) Выделены соответствующие классы расширений (8) Выработаны методы реализации языка Дельта (5) Глава 1 Интеграция расширений: 1.API к внешней реализации 2.Подмножество языка 3.Строковый параметр 4.Новые конструкции языка (расширение синтаксиса) Исполнение расширений: 1.Библиотека объектов на основном языке 2.Библиотека объектов на другом языке 3.Программная интерпретация 4.Аппаратная интерпретация Михеева В.Д. «Дельта»

Стр. 7/22 Формальное определение языка Табличный подход к обработке данных (из системы ЭРА) –Описание предметной области –Определение таблицы ЭРА –Алгебра таблиц Основные конструкции языка –Табличные операторы 2. Определение языка Дельта Глава 2 Михеева В.Д. «Дельта» D := (A+B)٭C begin y=2٭x end.

Стр. 8/22 Основные нововведения системы Дельта Два вида программ на языке Дельта: –Только табличные операторы –Расширение ими кода на Object Pascal Различные типы приложений Дельта: –Консольное, графическое GUI, отдельный модуль –Многомодульные приложения Доступ ко всем выразительным средствам Object Pascal Расширение средств описания блоков-действий: –Определение локальных и глобальных переменных –Вызов внешних функций, не включенных в конфигурацию –Pascal-подобный стиль синтаксиса операторов СЛОН –Употребление операторов Object Pascal Доступ к специализированным функциям из конфигурации вне табличных операторов Употребление табличных операторов внутри структурных операторов: циклы и условные переходы, оператор выбора (case), оператор доступа к полям структур данных (with), в телах процедур* и функций* Глава 2 Михеева В.Д. «Дельта»

Стр. 9/22 Сопоставление с реляционной моделью данных Использовано сопоставление ТОП Реляционная модель Глава 2 ТОП-модель Реляционная модель Дельта ЭРА [В.Д. Михеева] Вывод: Модель данных системы Дельта (ЭРА) реляционно суб-полна. | ЭРА-таблицы Дельта ЭРА Михеева В.Д. «Дельта» [С.В. Крашенинников, ТОП-модель]

Стр. 10/22 3. Система программирования Дельта Основные принципы реализации Жизненный цикл приложений Дельта Категории пользователей Инструментальные средства Сравнение архитектур ЭРА и Дельта Интегрированная среда PersAY Технологические процессы Дельта Глава 3 Михеева В.Д. «Дельта»

Стр. 11/22 Глава 3 Жизненный цикл приложений Дельта Михеева В.Д. «Дельта»

Процесс разработки приложения на языке Дельта Редактирование исходного текста Первый этап трансляции (с помощью транслятора Дельта) Второй этап трансляции (с помощью компилятора Borland Delphi) Глава Михеева В.Д. «Дельта»Стр. 12/22

Набор инструментальных средств Дельта Транслятор Дельта Интерпретатор Дельта (или СЛОН') Компилятор, компоновщик, отладчик Object Pascal (Borland Delphi 6.0) Конфигуратор Дельта (транслятор конфигурации) Подсистема средств научной графики Глава Стр. 13/22Михеева В.Д. «Дельта»

Стр. 14/22 4. Дополнительные средства графической интерпретации Концепция научной графики для эфемеридной астрономии –ERA-7, Ample, AGAT, … => ERA-32, PersAY Объектная модель научной графики –Объекты, Параметры, Методы –Отображение табличных данных в модель научной графики –Метод изображения «Живая графика» –Сохранение (EGC, BMP, JPG) –Внешние интерфейсы (GUI, API, DSL) –Мастер настройки графика Сравнение с концепцией графики ЭРА-7 Глава 4 Михеева В.Д. «Дельта»

Реализация в контексте системы ЭРА Организация процесса построения графического изображения: 1.Система ЭРА генерирует таблицу 2.Имена столбцов это атрибуты предметной области (описанные в конфигурации ЭРА) 3.Пользователь выбирает атрибуты (столбцы) в диалоговом интерфейсе (GUI) 4.Значения выбранных атрибутов в строке таблицы определяют значения соответствующих параметров графического изображения Стр. 15/22Михеева В.Д. «Дельта» Глава 4

Настраиваемый рисунок обобщенного вида Составные части графика: Область прямоугольных координат X, Y в 2D-плоскости графиков серий Набор графиков (серий ) Графический образ Графический образ Пояснительные надписи Разметка осей Координатная сетка Фоновый рисунок Автомасштабирование (3 вида) Графическая интерпретация в эфемеридной астрономии: График точкиГрафик точки – последовательность положений объекта График линииГрафик линии – орбита, координатная линия Графический образГрафический образ – тип и состояние объекта (н-р, фазы Луны) Стр. 16/22Михеева В.Д. «Дельта»

Пример 1. Остаточные невязки LLR измерений эфемериды ERA EPM в метрах ERA-32, PersAY (Windows) ERA-7 (MS-DOS) Стр. 17/22Михеева В.Д. «Дельта»

Пример 2. Траектории видимых движений малых планет Сизиф, Церера, Паллада (1 января 2000 г. – 1 января 2100 г.) ERA-32, PersAY AMPLE Стр. 18/22Михеева В.Д. «Дельта»

5. Применение инструментальных средств Дельта Элементы реализации приложений Дельта Примеры программ решения реальных задач эфемеридной астрономии на языке Дельта Решение задач в других предметных областях (медицина, физика, финансы…) Оценка результатов работы Глава 5 Стр. 19/22Михеева В.Д. «Дельта»

Пример 3. Определение поправки компаса. Общий метод. [МАА-2] Вычислить t M t_gr_Sun = t_grt_Sun + D1t + D2t 2 if t_gr_Sun => 360*600 then t_gr_Sun = t_gr_Sun - 360*600 3 t_m_Sun = t_gr_Sun + lambda_c_sign*(lambda_c_ddd* lambda_c_m1*100+lambda_c_m2*10+lambda_c_m3) 5 if t_m_Sun => 360*600 then t_m_Sun = t_m_Sun *600 6 if t_m_Sun < 0 then t_m_Sun = t_m_Sun *600 7 t_m_Sun_EW = "W" 8 t_m_Sun180 = t_m_Sun360 9 t_m_Sun180_EW = "W" 10 if t_m_Sun180 > 180*600 then begin t_m_Sun180 = 360*600 - t_m_Sun 11 t_m_Sun180_EW = "E" end 1 l[44]=l[41]+n[25]+n[26] 2 if l[44]=>360*600 then l[44]=l[44]-360*600 3 l[45]=l[44]+n[28]*(n[15]* n[16]*100+n[17]*10+n[18]) 5 if l[45]=>360*600 then l[45]=l[45]-360*600 6 if l[45]180*600 then begin l[46]=360*600-l[45] 11 name[29]="E" end Дельта СЛОН t ГР = t ГР,T + Δ 1 t ГР + Δ 2 t ГР t M = t ГР ± λ Вычислить t ПР по t M Стр. 20/22Михеева В.Д. «Дельта»

Глава 5 Разновидности приложений Дельта Типы приложений Дельта Консольное приложение (EXE) Приложение с графическим интерфейсом (GUI) Библиотека динамической загрузки (DLL) Разновидности сборки приложений Дельта С использованием общей библиотеки Интерпретатора Дельта в виде DLL С включением библиотеки Интерпретатора Дельта в состав приложения Стр. 21/22 Михеева В.Д. «Дельта»

Архитектура системы Дельта, существенно дополняющей функциональные возможности системы ЭРА и расширяющей перспективные пути её применения. Синтаксис языка Дельта, инструментальные средства программирования на языке Дельта. Применение этих средств для МАА-2, PersAY, Штурман. Анализ методов расширения языков программирования. Формальное определение модели данных систем ЭРА и Дельта, доказательство реляционной суб-полноты этой модели, определение достаточных условий для обеспечения реляционной полноты этой модели. Оригинальная модель графического представления данных для предметных областей, связанных с обработкой данных, и реализованная на ее основе графическая подсистема. Положения и результаты, выносимые на защиту Стр. 22/22Михеева В.Д. «Дельта» 14 публикаций: 7 самостоятельных и 7 в соавторстве, из них 2 в рецензируемых изданиях

Архив Страница 23Михеева В.Д. «Дельта»

1. Михеева В. Д., Скрипниченко В. И. Расширение языка Object Pascal (Delphi) таблично-ориентированными средствами решения задач эфемеридной астрономии // Сообщения ИПА РАН. СПб., 2006, c. 2. Михеева В. Д., Новиков Ф. А., Скрипниченко В. И. Дельта язык и система программирования для решения прикладных задач с табличными данными // Научно- технические ведомости СПбГПУ. СПб., 2007, 4 (52), том 2 сс Михеева В. Д. Разработка предметно-ориентированных приложений с помощью инструментальных средств Дельта // Сообщения ИПА РАН. СПб., 2008, с. 4. Глебова Н. И., Лукашова М. В., Михеева В. Д., Нецветаева Г. А., Парийская Е.Ю., Свешников М. Л., Скрипниченко В. И. Программная система PersAY «Персональный астрономический ежегодник». // Труды ИПА РАН, Вып. 17. СПб.:Наука, сс Глебова Н. И., Лукашова М. В., Михеева В. Д., Нецветаева Г. А., Парийская Е.Ю., Свешников М. Л., Скрипниченко В. И. Система PersAY Персональный астрономический ежегодник. Версия 1.0 // Сообщения ИПА РАН. СПб., 2010, c. 6. Михеева В. Д. Методы расширения языков программирования (часть 1) // Информационно-управляющие системы. СПб., 2010, 4. сс Михеева В. Д. Проблемно-ориентируемый язык Дельта и его модель // Актуальные проблемы гуманитарных и естественных наук. Москва, 2010, 6. в печати. Публикации (основные) Страница 24Михеева В.Д. «Дельта»

8. Михеева В. Д. Разработка и реализация представления и визуализации графической информации в системе таблично-ориентированного программирования АстроТОП. // Диссертация на соискание ученой степени магистра. Направление: – Прикладная математика и информатика. Руководитель, к. ф.-м. н., доц. Ф. А. Новиков. Санкт-Петербургский государственный технический университет, физико- механический факультет, кафедра прикладной математики, Санкт-Петербург, с. 9. Shor V. A., Bytsin A. Yu., Chernetenko Yu. A., Kochetova O. M., Mikheeva V. D., Netsvetaeva G. A., Parijskaya E. Yu., Skripnichenko V. I., Sumzina N. K., Vinogradova T. A. New possibilities for ephemeris support of minor planets. // IAA Transactions, No. 8 Celestial Mechanics, St.-Petersburg, 2002, Труды ИПА РАН. Вып.8. Небесная механика. С. Петербург, 2002, сс Михеева В. Д. Научная графика в электронной версии эфемерид малых планет // Сообщения ИПА РАН 151, Санкт-Петербург, с. 11. Shor V. A., Bytsin A. Yu., Kochetova O. M., Mikheeva V. D., Netsvetaeva G. A., Parijskaya E. Yu., Skripnichenko V. I., Sumzina N. K., Vinogradova T. A. A M P L E Integrated multi-purpose software package for minor planets. // Communications of IAA RAS, St.-Petersburg, 2003, N с. 12. Михеева В. Д. Эффективная технология графического представления астрометрических данных // Труды Государственного астрономического института им. П.К. Штернберга, Т.75, М., 2004, 278 с. (Тезисы докладов на Всероссийской астрономической конференции ВАК-2004 «Горизонты вселенной», Москва, МГУ, ГАИШ, 3-10 июня 2004 г. с. 234). 13. Shor V. A., Chernetenko Yu. A., Kochetova O. M., Mikheeva V. D., Netsvetaeva G. A., Parijskaya E. Yu., Skripnichenko V. I., Vinogradova T. A., Zheleznov N. B. AMPLE Integrated multi- purpose software package for minor planets // Communications of IAA RAS, St.-Petersburg, 2006, N с. 14. Михеева В. Д. Средства графического представления данных в 32-разрядной версии системы ЭРА // Сообщения ИПА РАН. СПб., 2010, с. Публикации (по графике) Страница 25Михеева В.Д. «Дельта»

Архив Страница 26Михеева В.Д. «Дельта»

Настраиваемый рисунок Страница 27Михеева В.Д. «Дельта»

Пример. Движение полюса График на основе таблицы EOP.ERA Кадр «А»Кадр «B» Михеева В.Д. «Дельта»

Режим «Живая графика» Базовые принципы [5]: –Постепенное последовательное построение изображения (в процессе перебора кортежей таблицы) –В каждый момент времени отображается текущее состояние изображения –Возможность моделирования динамических процессов и явлений (движение/состояние объектов с течением времени) Разновидности «живых» графиков объектов: –Движение, след, трек (точки/линии) Михеева В.Д. «Дельта»

Пример 2. Траектории видимых движений малых планет Сизиф, Церера, Паллада (1 января 2000 г. – 1 января 2100 г.) ERA-32, PersAY AMPLE Стр. 30/22Михеева В.Д. «Дельта»

Решение задачи Разработана концепция научной графики для эфемеридной астрономии (базовые принципы): –Применение таблично-ориентированного подхода –Объектная модель представления научной графики в астрометрии –Ее отображение на таблично-ориентированные данные Разработано средство графического представления: –Двумерный рисунок обобщенного типа –Двумерный рисунок обобщенного типа, настраиваемый для каждого конкретного случая с помощью широкого набора параметров. –Набор параметров изображения –Набор параметров изображения на основе графической интерпретации табличных данных и их отображения в объектную модель научной графики. Подавляющее большинство параметров могут получить свое значение автоматически по умолчанию. –Набор операций с изображением –Набор операций с изображением: построение графика, сохранение в статическом (BMP, JPG) или изменяемом виде (EGC), настройка параметров, режим «Живая графика». Михеева В.Д. «Дельта»

32 Многомодульное приложение Включение модуля на языке Дельта в многомодульное приложение на языке Object Pascal

33 Настройка на предметную область с помощью Конфигуратора Конфигурация СЛОН-процессора Конфигурация средств системы Дельта Транслятор конфигурации Дельта создан на базе Конфигуратора СЛОН

34 Настройка параметров трансляции программ на языке Дельта Использовать интерфейс к библиотеке интерпретатора Дельта из заданной папки Папка для помещения результирующего приложения Дельта Включать ли интерпретатор СЛОН в состав приложения Использовать исходный код ядра СЛОН из заданной папки Использовать исходный код интерфейса интерпретатора СЛОН из заданной папки Выбрать результат трансляции – тип приложения (EXE, DLL, модуль) Вывести краткую справку о параметрах транслятора Дельта Некоторые параметры: Михеева В.Д. «Дельта»

35 Отладка приложения Дельта с помощью отладчика Borland Delphi

Страница 36 Основное содержание работы Структура и объем диссертации –Введение –Глава 1. Исторические предпосылки и постановка задачи –Глава 2. Определение языка Дельта –Глава 3. Система программирования Дельта –Глава 4. Доп. средства графической интерпретации данных –Глава 5. Применение инструментальных средств Дельта –Заключение –Список литературы –Приложения 1-9. Описания примеров решения эфемеридных задач Синтаксис языков СЛОН, Дельта, Object Pascal Краткое руководство пользователя инстр. средств Дельта Михеева В.Д. «Дельта»

Страница 37 Заключение Решена поставленная задача разработки нового языка Дельта и графической подсистемы как развитие концепций и средств системы ЭРА Выполнены предъявленные требования Получены новые теоретические и практические результаты Подтверждена практическая ценность Открыты пути расширения применения концепций ТОП, реализованных в системе ЭРА, и улучшения качества решений задач в предметных областях, в первую очередь, в эфемеридной астрономии Михеева В.Д. «Дельта»

Страница 38 Положения, выносимые на защиту Определение языка Дельта, в т.ч. формальный синтаксис языков СЛОН и Дельта в форме РБНФ Определение методов расширения языков программирования и классификация расширений Подбор методов реализации предметно-ориентированного расширения – языка Дельта Формальное определение модели данных систем ЭРА и Дельта, в т.ч. алгебры таблиц Формальный вывод о суб-полноте этих моделей данных Описание категорий пользователей, жизненного цикла приложений Дельта, технологических процессов их разработки и использования Формальное выражение метода двухпроходной трансляции для языка Дельта Концепция графического представления данных Теоретические результаты Михеева В.Д. «Дельта»

Страница 39 Положения, выносимые на защиту Реализованы инструментальные средства программирования Дельта, удовлетворяющие предъявленным требованиям Расширена функциональность конфигуратора системы ЭРА для настройки на предметную область средств Дельта Реализована графическая подсистема для визуализации данных в предметной области с табличными данными Выполнена интеграция с графической оболочкой системы PersAY Практические результаты Михеева В.Д. «Дельта»

Страница 40 Оценка результатов Достоверность Практическая ценность Реализация и внедрение Личный вклад автора Апробация работы Публикации Михеева В.Д. «Дельта»