Введение к работе
Актуальность темы. Современный уровень развития вычислительной техники, программирования и численных методов решения задач математической физики позволяет ставить вопрос о создании и исследовании с помощью вычислительных машин математических моделей сложных физических процессов и инженерно-технических объектов. Если модель достаточно полно эписывает процессы, протекающие в реальном объекте, то ее исследование на вычислительной машине позволяет изучать свойства этого объекта, с одной стороны, без упрощающих предположений, готорые необходимо делаются при теоретическом исследовании, и, с іругой стороны, без затрат на создание экспериментальной установки, которые зачастую бывают довольно значительными. Тодчеркивая аналогию между программой и экспериментальной остановкой, проведение больших комплексных расчетов естественно >ассматривать как эксперимент, проводимый с помощью іичислитєльной машины, или как вычислительный эксперимент. Таким )бразом, наряду с традиционными методами исследования -'еоретическим и экспериментальным, развитие вычислительной 'ехники предоставило науке качественно новый метод познания -іьічислительньй эксперимент.
Типичным примером крупной проблемы, изучение которой іедется не только теоретическими и экспериментальными методами, іо и моделированием на вычислительных машинах, служит проблема правляемого термоядерного синтеза СУТС) . Процессы, протекающие , плазме, существенно нелинейны, и их теоретическое исследование опряжено с большими трудностями. Экспериментальное исследование сего комплекса процессов требует затрат на строительство орогостоящих установок. Эти затраты настолько значительны, что ама необходимость строительства установок в настоящее время бычно подтверждается их моделированием на вычислительных ашинах. Проведение вычислительного эксперимента в настоящее ремя является наиболее успешным способом изучения различных спектов управляемого термоядерного синтеза.
Исследование некоторой проблемы методом вычислительного ксперимента включает ряд этапов, отражающих постановку задачи, е решение и интерпретацию полученных данных. Каждый из этапов редставляет собой относительно законченный цикл работ. В то же ремя эти этапы взаимосвязаны, так что только их согласованное
выполнение может дать желаемый результат. Поскольку в каждый из этапов в процессе решения проблемы могут вноситься изменения, вычислительный эксперимент, как правило, представляет собой итерационный процесс постепенного приближения к нужной цели.
С точки зрения программирования задачи вычислительного эксперимента характеризуются тем, что:
для решения задач приходится создавать большие программы, большие как по объему, так и по данным, и по количеству операций, которые должна выполнить вычислительная машина;
над созданием программы работает обычно группа специалистов и весьма остро встает проблема организации их взаимодействия, распараллеливания работ и стыковки их результатов;
-в задачах вычислительного эксперимента основная работа на всех этапах приходится, как правило, не на первое выполнение, а на многократное повторение указанного выше цикла. В частности, подавляющая часть работ по программированию бывает связана не с написанием первой расчетной версии, а с многочисленными модификациями программ, отражающими вновь принимаемые решения о физической и математической моделях объекта, методах вычислений или организации расчетов.
Опыт показывает, что разработка программ, необходимых для проведения вычислительного эксперимента, только в рамках системы программирования общего назначения, сталкивается со значительными трудностями. В связи с этим возникает задача создания специализированного программного обеспечения, называемого пакетом прикладных программ.
В общем случае пакет прикладных программ представляет собой ориентированный на решение определенного круга задач комплекс взаимосвязанных прикладных программ и системных средств. В пакете можно выделить три основные компоненты: функциональное наполнение, системное наполнение и язык заданий. Функциональное наполнение отражает специфику предметной области и представляет собой совокупность модулей, конструктивных элементов, используемых для сборки программ. Язык заданий является средством общения пользователя с пакетом.: Системное наполнение обеспечивает взаимодействие пользователя с пакетом и выполнение задания. Функции пакета программ, его архитектура, т.е.
звокупность средств, создающих среду, в которой работает эльзователь при общении с пакетом, определяются технологией эоведения вычислительного эксперимента и служат для зтоматизации выполнения его отдельных этапов.
Таким образом, актуальной является задача создания эограммных средств Спакета прикладных программ) для зтоматизации проведения вычислительного эксперимента, причем ігнкциональное и системное наполнения пакета должны эответственно обеспечить решение задач из данной предметной 5ласти и системную поддержку принятой технологии зограммирования.
Целью работы является разработка концепции создания ізвитьіх программных средств, ориентированных на автоматизацию доведения вычислительного эксперимента в предметных областях, зиводящих к уравнениям математической физики, реализация этих эинципов в пакете прикладных программ Сафра, ориентированном на ідачи управляемого термоядерного синтеза, и решение с помощью эзданного программного обеспечения ряда актуальных физических »дач.
Научная новизна. В диссертации предложен, реализован и )актически подтвержден решениием ряда прикладных задач новый эдход к созданию программного обеспечения, ориентированного на зганизацию проведения вычислительного эксперимента в физических ^следованиях. В цикле исследований, связанных с формированием и ізвитием этого подхода, в частности:
предложена новая технология разработки прикладных программ, зеспечивающая характерную для задач вычислительного ссперимента модификацию программного фонда, обусловленную ірестройкой моделей и алгоритмов;
предложены и реализованы в виде функционального наполнения ікета прикладных программ новые методы решения задач магнитной ізовой динимики, предложен характеристико - интерполяционный >тод построения разностных схем для уравнения переноса; получены новые физические результаты, объясняющие протекание гоцессов в высокотемпературной плазме термоядерных установок.
Практическая значимость. На основе исследований, юведенных в диссертации, создан пакет прикладных программ іфра, предназначенный для автоматизации проведения
вычислительного эксперимента. Пакет характеризуется следующим чертами:
- пользователе предоставляется возможность решения широког
круга задач управляемого термоядерного синтеза в магнитно
гидродинамической постановке с учетом протекания различны
физических процессов;
-функциональное наполнение пакета, являясь открытой системой может быть расширено для охвата новых моделей и предметны областей;
- использование пакета Сафра, благодаря принятой в не:
технологии программирования, дает возможность трудиться на.
одной проблемой целому коллективу разработчиков функциональное
наполнения, устраняет ненужное дублирование;
Разработка пакета прикладных программ Сафра велась соответствии с Постановлением ГКНТ СССР Н 430 от 36.11.76 г. распоряжением АН СССР N 10103 от 17.01.77 г., планами Комиссиі многостороннего сотрудничества Академий наук социалистически: стран по проблеме "Научные вопросы вычислительной техники".
Пакет внедрен и успешно эксплуатируется в: Ф1 им. П.Н.Лебедева АН СССР, ИАЭ им. И. В.Курчатова, ФТИ им. А. Ф.Иоффе Ленинградском научно - исследовательском вычислительном центре, Киевском государственном университете, Ростовскої государственном университете, Таганрогском радиотехническо» институте и ряде других организаций.
Личный вклад автора. В цикле исследований, проводимых і Институте прикладной математики им. М.В. Келдыша АН СССР пс проблеме автоматизации вычислительного эксперимента, автої руководил и непосредственно участвовал в:
разработке технологии программирования, адекватной указанном! классу задач;
выборе, изучении и создании новых методов для решения зада1 математической физики;
созданиии функционального- наполнения пакета прикладныэ программ Сафра.
Апробирование работы. Основные результаты дяссертациі докладывались и обсуждались ка ряде всесоезных и международны* конференций, семинарах и заседаниях Рабочих групп, в том числе: на Международной конференции "Структура и организация пакетої
гаграмм" СТбилиси, 1976); школе-семинаре "Численные иетоды гшения задач физики плазмы" СКрасноярск, 1977); Всесоюзном імпозиуме "Перспективы системного и теоретического гаграммирования" (Новосибирск, 1978); Всесоюзной научной шференции "Современные проблемы математической физики и ічислительной математики" (Москва, 1979); VI Объединенном !минаре по вычислительной физике (Сухуми, 1979); Заседании ібочей группы IFIP (Новосибирск, 1979); Совещании Комиссии по Ш при ККВТ АН СССР "Текущее состояние и перспективы разработки ікетов прикладных программ" (Дубна, 1980); Международном местре Банаха (Варшава, 1980); Международных заседаниях бочих групп Комиссии многостороннего сотрудничества Академий ук социалистических стран по проблеме "Научные вопросы числительной техники" (Дубна, 1975; Тбилиси, 1976; София, 76; Ташкент, 1977; Карл-Маркс Штадт, 1978; Будапешт, 1979; ршава, 1980; Прага, 1980; София, 1982; Тбилиси, 1983; рл-Маркс Штадт, 1984); на Школах-семинарах по комплексам ограмм математической физики; на семинарах в ФИ .П.Н.Лебедева АН СССР, ИАЭ им. И. В.Курчатова, Институте тематики и кибернетики АН ЛитССР, Институте кибернетики . В. М. Глушкова АН УССР, Институте проблем механики АН СССР, ФГИ .А. Ф. Иоффе АН СССР, Ленинградском научно-исследовательском ВЦ.
Публикации. Содержание диссертации отражено в 36 Зликациях в научных журналах, сборниках, препринтах, трудах и кладах конференций, семинаров и совещаний.
Структура и объем диссертации. Диссертация состоит из эдения, пяти глав и Заключения, Общий объем 286 страниц, іфики расположены на 30 страницах. В списке литературы жводится 287 наименований.