zhChinese    enEnglish
  ПМ-ПУ  » Образование  » Программы курсов » Современные информационные технологии ...

Современные информационные технологии в научных исследованиях

Курс по выбору

Лекторы: д.ф.-м.н., проф. Андрианов С.Н., к.ф.-м.н., доцент Дривотин О.И.

Раздел 1. Введение

1. Информационное обеспечение научных исследований. Три основные составляющие процесса моделирования: физическая модель, математическая модель, компьютерная модель. Иерархия моделей, их взаимодействие и наполнение. Информационное обеспечение процесса моделирования. Вычислительный эксперимент как составная часть компьютерной модели. Согласованность компьютерной модели и вычислительных систем. Методы искусственного интеллекта в научных исследованиях. Визуализация научных исследований.

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

3. Инструментарий моделирования информационных систем. UML как универсальный инструмент визуального проектирования. Иерархия моделей и метамоделей в UML. Семантическое и графическое описание моделей в UML. Управление моделями.

4. Инструментальные средства. CASE-технологии - основные понятия и представления. Технологии CORBA, COM, DCOM. Распределенные процессы и базы данных в научных исследованиях. Параллельные и распределенные вычисления. Метакомпьютинг в научных исследованиях.

Раздел 2. Объектно-ориентированное проектирование и научные исследования

1. Классы, объекты. Наследование, инкапсуляция, полиморфизм.

2. Реализация объектной модели в системах Delphi, C++ Builder, Java. Иерархия объектов.Поля, свойства объектов, методы. Видимость. Статические, виртуальные и динамические методы. Абстрактные методы. Создание и уничтожение объектов.

3. Компоненты. Владение компонентами. Стандартные компоненты. Палитра компонентов. Визуальные компоненты. Библиотека визуальных компонент.

4. Функционирование программы в объектной среде. События. Обработчики событий. Обработка сообщений Windows.

5. Организация ввода и вывода информации. Работа с файлами и потоками. Вывод графики.

6. Визуализации результатов научных исследований.

7. Многонитевые приложения. Инициализация, прерывание и завершение нитей. Синхронизация с основной нитью.

8. Использование интерфейсов.

9. Создание собственных классов и компонент.

10. Использование объектно-ориентированного программирования для решения вычислительных задач.

11. Объектно-ориентированный подход при исследовании динамики механических систем.

12. Простейшие классы в задачах динамики механических систем и электродинамики.

13. Объектная среда для решения задач управления ансамблем динамических систем.

14. Некоторые классы для задач управления ансамблем заряженных частиц: TDistribution, TIntegrator, TOptimizer.

Раздел 3. Параллельные и распределенные вычисления

1. Эволюция развития вычислительных высокопроизводительных систем. Классическая Фон-Неймановская архитектура. Математическая и технологическая реализация. Суперскалярные, векторные вычислительные системы. Конвейерные и матричные системы. Архитектура памяти. Системы команд для параллельных вычислений. Классификация современных вычислительных систем (по Флинну). Вычислительные и программные аспекты. Тенденции развития высокопроизводительных систем. SIMD и MIMD технологии. Распределенные вычисления. Потоковые и нейронные системы. Оптические вычислительные системы. Квантово-механические вычисления. Естественный параллелизм квантово-механических и оптических систем.

2. Программное обеспечение параллельных вычислений. Две модели программирования: последовательная и параллельная. Параллелизм данных и задач. Вычислительные кластеры. Трудозатраты на распараллеливание или векторизацию программы. Методы векторизации и распараллеливания программ. Применение разных языков программирования. Взаимодействие трех частей программ - параллельной, последовательной и обменом данными. Синхронизация процессов. Параллельные библиотеки. Инженерные и научные задачи. Алгоритмы для высокопроизводительных вычислений. Использование векторных операций и функций ФОРТРАНа-90 (HPF). Что такое PVM и MPI? Использование PVM и MPI в численных расчетах в кластерных системах. Fortran, C, C++ реализации. Библиотеки процедур. Отладка и прохождение программ на PVM и MPI: терминология и обозначения. Общие процедуры. Прием-передача сообщений между отдельными процессами. Объединение запросов на взаимодействие. Коллективные взаимодействия процессов и их синхронизация. Работа с группами процессов. Примеры MPI-программ. Параллельные библиотеки универсальных и специальных методов решения научных задач.

3. Программное обеспечение распределенных вычислений. Распределенные приложения, базы данных. Использование COM, DCOM и CORBA технологий при построении эффективных информационных систем. Корпоративные вычислительные и информационные системы.

Раздел 4. Специализированные и универсальные программные продукты в научных исследованиях

1. Пакеты численного моделирования. Краткая спецификация и характеристика современных программных продуктов универсального предназначения. Специализированные пакеты и их применение.

2. Пакеты для научных и технических расчетов. Пакеты MATLAB, MATCAD - краткая характеристика и классификация.

3. Пакеты символьного моделирования. Специализированные и универсальные пакеты: характеристика и классификация. Краткое описание пакетов MATHEMATICA, MAPLE, AXIOM, MAXIMA, MuPAD и др.

4. Компьютерная алгебра как неотъемлемая часть научных исследований.

5. Цели, методы и средства компьютерной алгебры. «Символизация» вычислений как средство повышения эффективности и информативности моделирования.

Раздел 5. Базы данных и базы знаний в научных исследованиях

1. Базы данных в научных исследованиях. Реляционные, объектно-реляционные и объектно-ориентированные базы данных. Классификация современных СУБД. Распределенные СУБД.

2. Знания, метазнания. Базы знаний и экспертные системы. Автоматизация научных исследований.

3. Информационные системы сопровождения научных исследований. Методы и средства проведения вычислительного эксперимента. Ведение протокола, подготовка презентации и отчета. Электронная публикация отчета, статьи, книги.

Раздел 6. Визуализация научных исследований

Раздел 7. Унифицированный язык моделирования (UML)

1. Методология объектно-ориентированного проектирования и моделирования. Математические основы объектно-ориентированного и системного анализа. Основные понятия из теории графов и семантических сетей. Диаграммы структурного системного анализа.

2. Назначение языка UML. Общая структура. Пакеты в языке UML. Основные пакеты метамодели языка UML.

3. Описание метамодели языка UML. Изображение диаграмм языка UML.

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

5. Средства рационализации CASE-технология. Реализация языка UML в CASE- инструментарии Rational Rose. Другие средства реализации UML.

Список основной литературы

  1. Балл Т. Объектно-ориентированное программирование в действии: Пер. с англ. - СПб.: Питер. 1997.
  2. Боггс. У, Боггс. М. UML и Rational Rose: Пер. с англ. - M.: Лори, 2000.
  3. Буч. Г., Рамбо Дж., Джекобсон А. Язык UML: Руководство пользователя: Пер. с англ. - M.: ДМК, 2000.
  4. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++: Пер. с англ. - М.: Бином; СПб.: Невский диалект, 1999.
  5. Вебер Дж. Технология Java в подлиннике: Пер. с англ. - СПб.:БХВ-Петербург, 1997.
  6. Векторизация программ: теория, методы, реализация: Пер. с англ. и нем. / Под ред. Г.Д.Чинина. - М.: Мир, 1991.
  7. Веремей Е.И., Мисенов Б.А. Программирование в среде Delphi. СПб.: Изд-во СПбГУ, 1998.
  8. Воеводин В.В. Математические основы параллельных вычислений. - М.: Изд-во МГУ, 1991.
  9. Воеводин В.В. Математические модели и методы в параллельных процессах. - М.: Наука, 1986.
  10. Воеводин В.В. Параллельные структуры алгоритмов и программ. - М.: ОВМ АН СССР, 1987.
  11. Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. Приемы объектно-ориентированного проектирования. Паттерны проектирования: Пер. с англ. - СПб.: Питер, 2001.
  12. Дарахвелидзе П., Марков Е., Котенок О. Программирование в Delphi 5. - СПб.: БХВ-Петербург, 2001.
  13. Йордан Э., Аргила К. Структурные модели в объектно-ориентированном анализе и проектировании: Пер. с англ. - М.: Лори, 1999.
  14. Калянов Г.Н. CASE структурный модели в объектно-ориентированном анализе и проектировании: Пер. с англ. - М.: Лори, 1999.
  15. Корнеев В.В. Параллельные вычислительные системы. - М.: Нолидж, 1999.
  16. Коуд П., Норт Д., Мейфилд М. Объектные модели. Стратегии, шаблоны и приложения: Пер с англ. - М.: Лори, 1999.
  17. Леоненков А. Самоучитель UML. - СПб.: БХВ-Петербург, 2001.
  18. Павловский Ю.Н. Проблема декомпозиции в математическом моделировании. - М.: Фазис, 1998.
  19. Программирование на параллельных вычислительных системах под ред. Р.Бэбба. - М.: Мир, 1991.
  20. Роджерсон. Д. Основы СОМ: Пер. с англ. - СПб.: CHannel Trading Ltd, 1997.
  21. СуперЭВМ: Аппаратная и программная организация / Под ред. С. Фернбаха. - М.: Радио связь, 1989.
  22. Тербер К.Дж. Архитектура высокопроизводительных вычислительных систем. - М.: Наука, 1985.