![]() |
ИСТИНА |
Войти в систему Регистрация |
ИСТИНА ЦЭМИ РАН |
||
Программа de78d_p предназначена для выполнения одного шага приближенного интегрирования канонической системы обыкновенных дифференциальных уравнений второго порядка методом рядов Чебышёва. Версия на языке Паскаль. Если правая часть решаемой системы имеет непрерывные ограниченные частные производные и решение единственно, то это решение разлагается на заданном промежутке интегрирования в равномерно сходящийся ряд по смещенным многочленам Чебышёва первого рода. Частичная сумма этого ряда принимается в качестве приближенного аналитического решения задачи на этом промежутке. При уменьшении длины промежутка интегрирования скорость сходимости построенного ряда убыстряется. Указанный промежуток может быть разбит на элементарные сегменты, на каждом из которых строится свой ряд Чебышёва. В этом случае аналитическое решение задачи состоит из совокупности частичных сумм рядов Чебышёва, построенных на этих элементарных сегментах. Порядок этих частичных сумм и элементарные сегменты задаются пользователем при обращении к программе. При разбиении промежутка интегрирования на элементарные сегменты решение задачи сводится к определению нескольких наборов коэффициентов рядов Чебышёва, которые вычисляются приближенно итерационным способом, исходя из некоторого начального приближения. Вычисления выполняются с помощью квадратурной формулы Маркова, один из узлов которой совпадает с началом элементарного сегмента, а остальные узлы лежат внутри этого сегмента. Количество итераций, которое предписывается выполнить в рассматриваемом итерационном процессе, задается при обращении к подпрограмме и может меняться от сегмента к сегменту. Если длина элементарного сегмента H подобрано достаточно малой, то хорошая точность приближенного решения может быть получена на небольшом числе итераций. Начальное приближение коэффициентов ряда Чебышёва для второй производной на элементарном сегменте может вычисляться двумя способами. В первом способе начальное приближение определяется только с использованием значения решения и его первой производной в начале элементарного сегмента. При этом погрешность начального приближения для всех коэффициентов является величиной порядка O(H2) при H, стремящемся к нулю. Во втором способе начальное приближение определяется через коэффициенты ряда Чебышёва для производной решения на предыдущем элементарном сегменте. В этом случае погрешности начального приближения для коэффициентов Чебышёва a0*[Φ], a1*[Φ], ... , aK*[Φ] имеют соответственно порядки O(H), O(H2), ..., O(HK + 1). Заметим, что длина H текущего элементарного сегмента [X, X + H] может быть больше или меньше длины H' предыдущего элементарного сегмента [X - H', X] или равна ей. Второй способ определения начального приближения в некоторых случаях может привести к более быстрой сходимости итерационного процесса и, тем самым, к меньшему числу выполняемых итераций. Второй способ может быть применен только начиная со второго элементарного сегмента [x0 + H0, x1 + H], где H0 - длина начального (первого) элементарного сегмента, x1 = x0 + H0. На начальном элементарном сегменте [x0, x0 + H] всегда применяется исключительно первый способ. Способ выбора начального приближения задается пользователем при обращении к программе. Разбиение промежутка интегрирования на элементарные сегменты (шаги интегрирования) выполняется для того, чтобы на каждом таком сегменте ряды Чебышёва для решения и его производной были быстросходящимися рядами. Другими словами, длина элементарных сегментов, задаваемая параметром H, подбирается таким образом, чтобы убывание коэффициентов этих рядов Чебышёва на элементарном сегменте происходило достаточно быстро, вследствие чего можно было бы считать частичные суммы этих рядов близкими к многочленам наилучшего равномерного приближения на элементарном сегменте для решения и его производной. Порядок этих частичных сумм задается пользователем. Программа накапливает значения коэффициентов частичных сумм рядов Чебышёва на заданных элементарных сегментах, которые используются для аналитического представления как самого решения, так и для аналитического представления его производной. Язык программирования: Паскаль Аналогов этой программы нет, поскольку она реализует новый численный метод, разработанный авторами программы. Программа распространяется бесплатно. Исходные тексты доступны по запросам пользователей.