Параллельная программа построения линий уровня. Применение к задаче о брахистохроне в центральном поле тяготения

А.Г.Иванов

Создана программа построения линий уровня функций двух переменных для системы MVS-100. Программа рассчитана на функции, имеющие звездчатые множества уровня. Предполагается, что любой луч, проведенный из общего центра звездчатости, пересекает линию уровня только один раз.

Рис. 1
Рис. 1: Схема наследования радиусов

Последовательный алгоритм заключается в следующем: из центра звездчатости равномерно по азимуту проводятся лучи, для каждого из них находятся точки пересечения с искомыми линиями уровня. Нахождение точки пересечения равнозначно решению нелинейного уравнения. В качестве начального приближения при поиске точек пересечения линий уровня с очередным лучом целесообразно брать значения радиусов точек пересечения с предыдущего луча (рис.1).

При распараллеливании алгоритм хорошо ложится [2] на схему процессорной фермы, но в программном обеспечении MVS-100 [1] нет средств для автоматического создания такой конфигурации. Поэтому необходимо "ручное" программирование распределения вычислительной нагрузки на процессоры.

Рассмотрено несколько вариантов параллельного алгоритма. В простейшем алгоритме корневой процессор выполняет только обмен с задачами-рабочими и не занят продуктивными вычислениями, что при малом числе процессоров дает плохую производительность. Более сложные алгоритмы реализуют на корневом процессоре "псевдопараллельное" совмещение вычислений и обмена.

Результатом работы программы является файл с численным описанием линий уровня и метафайл, содержащий их график.

Рис. 2
Рис. 2: Изохроны

При помощи описанной параллельной программы исследована задача о брахистохроне [3] в центральном поле тяготения. Построены изохроны -- линии уровня времени оптимального спуска (рис.2).


Литература

[1] Лацис А.О. Операционная среда ROUTER для транспьютерных систем. Москва, ИПМ им. М. В. Келдыша РАН, 1995.

[2] Иванов А.Г. Опыт построения линий уровня на транспьютерных системах // Алгоритмы и программные средства параллельных вычислений: [Сб. науч.тр.]. Екатеринбург: УрО РАН, 1995.

[3] Эльсгольц Л.Э. Вариационное исчисление. М.: Техгиз, 1958.


Пишите по адресу: iagsoft@imm.uran.ru