IPB

Здравствуйте, гость ( Вход | Регистрация )

Поиск по файловому архиву
  Add File

> Решение систем линейных дифференциальных уравнений пятиточечным методом Адамса – Башфорта

Информация о файле
Название файла Решение систем линейных дифференциальных уравнений пятиточечным методом Адамса – Башфорта от пользователя z3rg
Дата добавления 15.4.2009, 8:17
Дата обновления 15.4.2009, 8:17
Тип файла Тип файла (zip - application/zip)
Скриншот Не доступно
Статистика
Размер файла 926,75 килобайт (Примерное время скачивания)
Просмотров 2143
Скачиваний 1
Оценить файл

Описание работы:


Тип работы: курсовая
Постановка задачи. Методы решения. Описание алгоритма.описание программы. Примеры расчетов.
Загрузить Решение систем линейных дифференциальных уравнений пятиточечным методом Адамса – Башфорта
Реклама от Google
Доступные действия

Введите защитный код для скачивания файла и нажмите "Скачать файл"

Защитный код
Введите защитный код

Текст работы:


РЕШЕНИЕ СИСТЕМ ЛИНЕЙНЫХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ПЯТИТОЧЕЧНЫМ МЕТОДОМ АДАМСА – БАШФОРТА

Работу выполнил студент гр.И-29 Уханов Е.В.

Кафедра “Системы и Процессы Управления”

“ХАРЬКОВСКИЙ ПОЛИТЕХНИЧЕСКИЙ ИНСТИТУТ”

Харьков 2001

ВВЕДЕНИЕ

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

Решение такого рода задач связано с необходимостью использования численных методов , таких как : метод прогноза и коррекции , метод Адамса-Башфорта , метод Эйлера , метод Рунге-Кута , и др.  При этом , стоит задача решения системы линейных дифференциальных уравнений первого порядка одним из методов интегрирования , на произвольном промежутке времени . Одним из оптимальных методов дающих высокую точность результатов – является пяти точечный метод прогноза и коррекции Адамса-Башфорта . Для повышения точности метода используется трех точечный метод прогноза и коррекции с автоматическим выбором шага , что приводит к универсальному методу интегрирования систем дифференциальных уравнений произвольного вида на любом промежутке интегрирования  .

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

Целью данной курсовой работы является разработка алгоритма решения систем линейных дифференциальных уравнений первого порядка пяти точечным методом прогноза и коррекции Адамса-Башфорта .

1. ПОСТАНОВКА ЗАДАЧИ

Рассмотрим произвольную систему линейных дифференциальных уравнений первого порядка :

                          (1.1)

тогда как :

               А =                                                          (1.2)

 где  А заданная матрица размером  N x N .

  - вектор с N координатами , который подлежит определению ;

N – произвольное целое число ;

заданные вектора правых частей с N  координатами .

    С  использованием метода прогноза и коррекции Адамса-Башфорта пятого порядка  , необходимо получить значения  неизвестных для заданных  временных интервалов . Для  стартования  метода необходимо использовать метод прогноза и коррекции   третьего порядка с переменным шагом  , на заданных временных промежутках ..

2. МЕТОДЫ РЕШЕНИЯ

2.1. Метод прогноза и коррекции

Метод прогноза и коррекции относится к задачам класса Коши , а именно к численным решениям многошаговыми методами .

Рассмотрим задачу Коши :

            ,                                                   (2.1.1)

Подставим в (2.1.1) точное решение  y(x)  , и проинтегрируем это уравнение на отрезке   , тогда получим :

                  (2.1.2)


      где в последнем член предполагаем , что   p(x)   полином , аппроксимирующий   f(x,y(x))  . Чтобы построить этот полином , предположим , что    - приближения к решению в точках              . Будем считать для начала , что узлы Xi  расположены равномерно с шагом  h . тогда  fi  = f(xi,yi), ( i=k,k-1,k-2,…,k-N) есть приближения к   f (x,y(x))  в точках   и мы в качестве P  возьмем интерполяционный полином для выбора данных (xi,fi) ,

( i =k,k-1,k-2,…,k-N) . Таким образом , P – полином степени N , удовлетворяющий условиям  P(xi)=fi  , ( i = k,k-1,k-2,…,k-N) .  В принципе , можем проинтегрировать этот полином явно , что ведет к следующему методу  :

                                                                           (2.1.3)

         В простейшем случае , когда  N=0  , полином  P  есть константа  , равная fk  ,  и (2.1.3) превращается в обычный метод Эйлера :

                                                                                       (2.1.4)

         Если  N=1 , то P есть линейная функция , проходящая через точки 

(xk-1,fk-1)  и (xk,fk) , т.е. 

                                              (2.1.5)

     интегрируя этот полином  от Xk  до Xk+1  , получим следующий метод :

                                                                  (2.1.6)

         который является двухшаговым , поскольку использует информацию в двух точках  xk  и   xk-1  . Аналогично , если N=2  , то P  - есть кубический интерполяционный полином , а соответствующий метод определяется формулой  :

                   (2.1.7)

                Отметим , что метод (2.1.6) – есть метод Адамса-Башфорта второго порядка , (2.1.7) – метод Адамса-Башфорта четвертого порядка  .

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

                                    

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

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

          Рассуждая также , как для метода Адамса-Башфорта , который излагается в работах : [1],[2],[3]  ,  мы мы приходим к формулам :

Прогноз :

                                                                       (2.1.8)

Коррекция :

                                                        (2.1.9)

где  h  - шаг интегрирования , изменяющийся на малом промежутке времени  в соответствии с условиями Рунге :

                     ,

где в свою очередь  - малое конкретное значение , при невыполнении условия которого увеличивается шаг  h=h*N  а - малое конкретное значение , при невыполнении условия шаг соответственно уменьшается  h=h/N , где N  - некоторое целое число больше единицы .

Оптимально , для вычисления новой точки , с помощью метода прогноза и коррекции  , используется формула :

                                                  (2.1.10)

Таким образом, мы воспользовались простым трех шаговым методом прогноза и коррекции  , для стартования метода Адамса-Башфорта . Преимущества данного  метода заключаются :в его высокой точности , авто подборе шага , что во много раз повышает точность самого метода Адамса-Башфорта , и делает его оптимальным для задач такого рода .

Метод Адамса-Башфорта использует уже посчитанные значения в точке Xk  и в предыдущих точках . В принципе , при построении интерполяционного полинома , мы можем использовать и точки Xk+1,Xk+2,… . Простейший случай при этом состаит в использовании точек Xk+1,Xk,…,Xk-N

 и построения интерполяционного полинома степени  N+1  , удовлетворяющего условиям  P(Xi)=fi , (I=k+1,k,…,k-N) .  При этом возникает класс методов , известных как методы Адамса-Моултона . Если  N=0  , то  p – линейная функция , проходящая через точки  (Xk,fk) и  (Xk+1,f k+1) , и соответствующий метод :

                                                                   (2.1.11)

является методом Адаиса-Моултона  [2]  , именно им мы воспользовались в формуле  (2.1.9) – коррекции спрогнозированной точки в трех шаговом методе . Если  N=2  , то p – кубический полином , построенный по точкам  и соответствующий метод :

                (2.1.12)

            является методом Адамса-Моултона четвертого порядка . В силу того , что по сути fk+1 – неизвестная , то методы Адамса-Моултона   (2.1.11),(2.1.12) называют неявными . В тоже время методы Адамса-Башфорта – называют явными .

Теперь воспользовавшись явной формулой  (2.1.7)  , и неявной формулой  (2.1.12)  , используя их совместно , мы приходим к методу Адамса-Башфорта четвертого порядка :

       (2.1.13)

        Стоит обратить внимание , что в целом этод метод является явным   . Сначало по формуле Адамса-Башфорта вычисляется значение , являющееся  “прогнозом”   . Затем      используется для вычисления приближенного значения  , которое в свою очередь используется в формуле Адамса-Моултона . Таким образом формула  Адамса-Моултона “корректирует” корректирует приближение , называемое формулой Адамса-Башфорта .

            Теперь рассмотрим  произвольную систему линейных дифференциальных уравнений первого порядка  :

 

 где

                              A =  

Заданная матрица размером  NxN ;   - вектор с N координатами , который подлежит определению . В связи с тем , что связь между искомыми неизвестными  определяется матрицей коэффициентов A , на каждом шаге по времени , необходимо решить систему относительно неизвестных скоростей , для её решения воспользуемся модифицированным методом Гаусса , который описан в разделе 2.2  .

   Далее, интегрируя сначала  ранее описанными методами  : методом Эйлера  на первом шаге , трех точечным методом прогноза и коррекции с авто подбором шага , на малом промежутке времени и с малым начальным шагом  , для повышения точности стартующих методов на оставшемся промежутке времени производим интегрирование с постоянным шагом – пяти точечным методом прогноза и коррекции Адамса-Башфорта (2.1.13) ,  [2] , [3]  .

2.2 Модифицированный метод Гаусса

Как типичный пример решения систем линейных дифференциальных уравнений  , рассмотрим систему четырех линейных алгебраических уравнений .

Для решения системы четырех линейных алгебраических уравнений с четырьмя неизвестными модифицированным  методом Гаусса необходимо

Составить систему :       (2.2.1)

1) Каждое уравнение делиться на коэффициент   при X1

                

 2) Теперь образуем нули в первом столбце матрицы системы : вычитаем 2-ое

из 1-ого , 3-е из 2-ого , 4-ое из 3-его :

                                                                         

                                                                                
                                          (2.2.2)

3) Повторив еще раз эти операции   получим систему двух уравнений с двумя неизвестными , решение которой можно получить по формулам Крамера :

                                                                                 (2.2.3)

         Решение же X1  и  X2   можно получить , подставив в какое-либо из уравнений систем (2.2.1) и (2.2.2) и разрешив эти уравнения относительно соответствующей переменной .     

3. ОПИСАНИЕ АЛГОРИТМА

Программа начинается с вывода сообщения о программе . После происходит считывание необходимых исходных данных из файла , для дальнейшей работоспособности алгоритма , а именно – начальных условий и матрицы коэффициентов системы линейных дифференциальных уравнений первого рода , начального шага интегрирования , левого и правого условий Рунге , время интегрирования по  трех шаговому методу прогноза и коррекции ,  время интегрирования по пяти точечному методу Адамса-Башфорта .

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

Далее составляем цикл , для реализации алгоритма нахождения всех Yk+1   точек на заданном малом промежутке времени , и проверкой на условия Рунге , по трех шаговому методу прогноза и коррекции с авто подбором шага  . После чего мы организовываем цикл , реализующий алгоритм нахождения точек по методу Адамса-Башфота  , на заданном большом промежутке времени и с шагом автоматически подобранным предыдущим методом .

Вычисленные данные записываем файл , по ним формируем массив данных , которые выводим в сответствии с масштабированием на экран в виде  графиков .

Блок-схема приведена в  Приложении 1 .

4.ОПИСАНИЕ ПРОГРАММЫ

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

Основная программа включает в себя только один модуль PACM , и использует всего два метода объекта TApplPandC   , -  метод  Application  - рабочий цикл программы  ; деструктор Done – реализует разрушение таблицы виртуальных методов  , и операций , связанных с завершением программы .

Модуль PACM включает в себя модули библиотек  - реализующих построение интерфейса  . Модуль реализующий алгоритм метода Адамса-Башфорта , и по вычесленным данным строящий график , есть – PACMBtn .

Главным родителем всех объектов есть объект – Tobject  . Основным рабочим объектом библиотеки VFH  есть объект  Tform  .  Рассмотрим потомка являющегося типичным представителем родителя  TForm  -  TApplPandC .  Он имеет два виртуалых метода  :  MouseHandler : Boolean  Б – выходным параметром которого  есть  признак закрытия формы  , и метод  FormCreate  - реализующий построение интерфейса формы  . Не виртуальный метод  Application  - предназначен для создания формы , конфигурирования программной среды , и дальнейшего управления программой .

Модуль реализующий создание и управления главного и субменю ,    есть – PACMMenu    , позволяющий пользователю изменять параметры и настройки системы , предоставляющий справку о разработчике , а также дает доступ к справочной системе  PrandCo M Help System  . Данные свойства меню реализуют объекты  TMenu  , и  THelpForm  ,  объектной библиотеки  VFH  .

Теперь  рассмотрим модуль PACMBtn – рреализующий алгоритм построения вычисленных данных . Процедура реализующая алгоритм пяти точечного метода прогноза и коррекции Адамса-Башфорта  , -  MethodAdamsaBashforta ( h,tp,ta : real ; NU : array[1..N] of real ) – параметры которой представляют : h -  начальный шаг интегрирования ; tp – время интегрирования трех точечным методом прогноза и коррекции  , ta – время интегрирования по методу Адамса-Башфорта , NU – массив начальных условий . Данная процедура способна производить решения систем линейных дифференциальных уравнений произвольного размера , на произвольном промежутке времени интегрирования  . Вычисленные данные записываются в файлы  prandcom*.df  .  Метод реализующий алгоритм построения вычисленных данных произвольной степени сложности  , с возможностью построения графиков с не линейно изменяющимся шагом  ,  построения одновременно любого количества графиков , - есть объект TCartFile  , обладающего всеми свойствами родителей   Tform , Tchart  .

К заключению стоит заметить , что программа   PrandCo M version 2.41 -  разработана на языке Borland Pascal  под защищенный режим работы процессора и  имеет доступ ко всей оперативной памяти компьютера  . Реализует гибкий интерфейс , облегчающим работу с программным обеспечением .  Позволяет решить систему линейных дифференциальных уравнений первого порядка методом Адамса-Башфорта , с возможность просмотра результатов вычисления в виде графиков .

Как показали тестовые программы – разработанный алгоритм предоставляет точность вычислений , погрешность которых не превышает  1% .

Тексты  программной оболочки PrandCo M  version 2.41 приведены в приложении 4 .

5. ПРИМЕРЫ РАСЧЕТОВ

Для анализа достоверности получаемых результатов рассмотрим следующие примеры :

5.1.Решение одного дифференциального уравнения

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

Пусть требуется  решить уравнение  :

                                       

при начальном условии  y(0)=1 , 0


Поиск по файловому архиву
Fast Reply  Оставить отзыв  Add File

Collapse

> Статистика файлового архива

Десятка новых файлов 
10 пользователей за последние 3 минут
Active Users 10 гостей, 0 пользователей, 0 скрытых пользователей
Mail.ru Bot, MJ12bot, Bing Bot, Yandex Bot
Статистика файлового архива
Board Stats В файловом архиве содержится 217133 файлов в 132 разделах
Файлы в архив загрузили 7 пользователей
Файлы с архива были скачаны 13155623 раз
Последний добавленный файл: Дельфин от пользователя admin (добавлен 2.1.2019, 21:39)
RSS Текстовая версия
Рейтинг@Mail.ru

Сергей Николаевич ВОЛКОВ
заслуженный мастер спорта, первый советский спортсмен, завоевавший первенство в одиночном фигурном катании (1975).
>>>
Смотреть календарь

Трагедией завершилась осада силами ФБР сторонников апокалиптического культа «Ветвь Давидова» в местечке Вако (шт. Техас). Во время штурма усадьбы «Маунт Кармол» погибли 86 членов секты во главе с предводителем Дэвидом Корешом, устроившие самосожжени... >>>
Смотреть календарь

между уровнями твердого неба и верхнего края надгортанника), сообщающаяся с полостью рта через зев ротовая щель (rima oris) см. Ротовое отверстие ротовая ямка (stomodaeum; син. стомодеум) - эктодермальное впячивание на переднем конце тела зародыша, к которому прилегает слепо замкнутый передний конец кишечной трубки; место образования ротового отверстия ротовое отверстие (...

"Я была тогда с моим народом" А.Ахматова

Автор в этой работе говорит о жизни А. Ахматовой в её тяжелые годы, когда ей грозил расстрел.