ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Рішення диференціальних рівнянь 1 порядку методом Ейлера
         

     

    Інформатика, програмування

    Зміст

    Вступ 3

    1. Постановка задачі 5

    2. Огляд існуючих методів вирішення задачі 6

    2.1.Метод Рунге-Кутта четвертого порядку для вирішення рівняння першого порядку
    6

    2.2.Задача Коші
    6

    2.3.МЕТОДИ Булірша-Штер з використанням раціональної екстраполяції для системи рівнянь
    7

    2.4 Метод Адамса 8

    2.5. Метод Ейлера 9

    3. Опис алгоритмів вирішення завдання 13

    3.1. Опис змінних
    13

    3.2. Блок-схема головного модуля
    14

    3.3. Опис алгоритму головної програми 14

    3.4. Блок-схема функції "func" 15

    3.5. Опис блок-схеми функції "func" 15

    4. Опис програмного забезпечення 16

    4.1. Опис операційної системи 16

    4.2. Опис мови програмування 18

    4.3. Опис програми 19

    5. Контрольний приклад
    21

    6.Аналіз отриманих результатів 22

    Список літератури 24

    Додаток
    25

    Введення

    Рівняння називається звичайним диференціальних n-гопорядку, якщо F визначена і неперервна в деякій області і, поусякому випадку, залежить від. Його рішенням є будь-яка функція u (x),яка цьому рівнянню задовольняє при всіх x в певному кінцевомуабо нескінченному інтервалі. Диференціальне рівняння, дозволенущодо старшої похідної має вигляд

    Рішенням цього рівняння на інтервалі I = [a, b] називається функція u (x)

    Розв'язати диференціальне рівняння у/= f (x, y) чисельним методом - цезначить для заданої послідовності аргументів х0, х1 ..., хn і числа у0,не визначаючи функцію у = F (x), знайти такі значення у1, у2, ..., уn, щоуi = F (xi) (i = 1,2, ..., n) і F (x0) = y0.

    Таким чином, чисельні методи дозволяють замість знаходження функціїy = F (x) (3) отримати таблицю значень цієї функції для заданоїпослідовності аргументів. Величина h = xk-xk-1 називається крокомінтегрування.

    Метод Ейлера ставитися до чисельних методів, що дає рішення у виглядітаблиці наближених значень шуканої функції у (х). Він єпорівняно грубим і застосовується в основному для орієнтовних розрахунків.
    Однак ідеї, покладені в основу методу Ейлера, є вихідними для рядуінших методів.

    Метод Ейлера для звичайних диференціальних рівняньвикористовується для рішень багатьох задач природознавства якматематичної моделі. Наприклад задачі електродинаміки системивзаємодіючих тіл (у моделі матеріальних точок), задачі хімічноїкінетики, електричних ланцюгів. Ряд важливих рівнянь в приватних похідних ввипадках, що допускають поділ змінних, призводить до завдань длязвичайних диференціальних рівнянь - це, як правило, крайові задачі
    (задачі про власні коливання пружних балок і пластин, визначенняспектру власних значень енергії частинки в сферично-симетричнихполях і багато чого іншого).

    1.Постановка завдання
    1.1. Вирішити наближено диференціальне рівняння виду методом Ейлера
    1.2. Скласти блок-схему алгоритму для вирішення даного завдання.
    1.3. Розробити програму на мові Microsoft Visual C + +
    1.4. Протестувати програму на прикладі y '= 2x + y (n = 5, [0,1], y0 = 1)
    1.5. Виконати аналіз результатів.
    1.6. Оформити пояснювальну записку з додатком.

    2.Обзор методів вирішення задачі.

    2.1. Метод Рунге-Кутта четвертого порядку для вирішення рівняння першого порядку.
    Ідея Рунге-Кута полягає в тому, щоб використовувати метод невизначенихкоефіцієнтів. Найбільш вживаною методом Рунге-Кутта рішеннярівняння першого порядку y '= F (x, y) (2.1.1) є метод четвертогопорядку, в якому обчислення проводяться за формулою:yk 1 = yk + (k1 +2 k2 +2 k3 + k4)/6,
    (2.1.2)деk1 = Fk h = F (xk, yk) hk2 = F (xk + h/2, yk + k1/2) hk3 = F (xk + h/2, yk + k2/2) hk4 = F (xk + h, yk + k3) h,k = 0, ..., n-1h = (xf-x0)/n

    (2.1.3)

    2.2. Задача Коші.
    Розглянемо задачу Коші для рівнянь першого порядку на відрізку [a, b]:
    , (2.1.4)
    Розіб'ємо проміжок [a, b] на N частин. Позначимо, де u (x)-точнерішення задачі Коші, і через значення наближеного розв'язку в точках
    . Існує 2 типи чисельних схем:

    1. явні:) (2.2.1)

    2. неявні: (2.2.2)
    Тут F деяка функція, що зв'язує наближення. В явних схемахнаближене значення в точці визначається через деякийчисло k вже певних наближених значень. В неявних схемахвизначається не рекурентним способом, як в явних схемах, а для йоговизначення виникає рівняння, оскільки рівність (2.2.2) представляєз себе саме рівняння на. Явні схеми простіше, проте частонеявні схеми переважно.

    2.3. Метод Булірша-Штер з використанням раціональної екстраполяції для системи рівнянь

    Метод Булірша-Штер (Bulirsch-Stoer Method) - це метод розв'язання системизвичайних диференціальних рівнянь першого порядку з гладкими правимичастинами. Гладкість правих частин є необхідною для роботи методу.
    Якщо праві частини вашої системи не є гладкими або містять розриви,то краще використовувати метод Рунге-Кутта. У випадку ж гладкою системи метод
    Булірша-Штер дозволяє досягти істотно більшої точності, ніж метод
    Рунге-Кутта.

    Принцип роботи методу
    Основною ідеєю методу є обчислення стану системи в точці x + h,як результату двох кроків довжини h/2, чотирьох кроків довжини h/4, восьми кроківдовжини h/8 і так далі з наступною екстраполяцією результатів. Методбудує раціональну інтерполюється функцію, яка в точці h/2 проходитьчерез стан системи після двох таких кроків, в точці h/4 проходить черезстан системи після чотирьох таких кроків, і т.д., а потім обчислюєзначення цієї функції в точці h = 0, проводячи екстраполяцію.

    Гладкість правих частин призводить до того, що обчислена за допомогоюекстраполяції стан системи виявляється дуже близько до дійсного,а використання раціональної екстраполяції замість поліноміальною дозволяєще більше підвищити точність.
    Таким чином проводиться один крок методу, після чого приймається рішення --чи варто змінювати крок, а якщо так - то в який бік. При цьомувикористовується оцінка похибки, яку ми отримуємо в якостідодаткового результату при раціональній екстраполяції. Слідвідзначити, що алгоритм вирішує автономну систему, тобто якщо рівняннясистеми містять час, то необхідно ввести час в якості змінної,похідна від якої тотожно дорівнює одиниці.

    4. Метод Адамса

    Явна схема Адамса.
    Розглянуті вище методи є явними однокроковий (для знаходженняподальшого наближення використовується лише одне попереднє). Наведенийнижче метод є багатокрокових.

    Нехай задана задача Коші:

    (2.4.1)
    Для точного рішення (яке нам не відомо) виконано:

    (2.4.2)
    Припустимо, нам відомі наближені значення функції u (x) в kточках (стартові k точок, зокрема, можна знайти методом Ейлераабо методом Рунге-Кутта того чи іншого порядку), тоді функцію f (x, u (x)) в
    (2.4.2) для наближеного обчислення інтеграла можна замінити наінтерполяційний поліном порядку k-1, побудований за k точкам,інтеграл від якого вважається явно і являє собою лінійнукомбінацію значень c деякими множники. Таким чином,ми отримуємо наступну рекурентних процедуру обчислення наближенихзначень функції u (x) (що є точним рішенням задачі Коші) вточках:

    (2.4.3)
    Описана схема є k-крокової явною формулою Адамса.

    Неявна схема Адамса.
    Нехай - інтерполяційний поліном порядку k, побудований за k +1значенню б одне з яких, саме, ми будемо вважатиневідомим. Модифікуємо (2.4.3), замінивши в ньому на поліном більшевисокого ступеня, інтеграл від якого виражається у вигляді лінійноїкомбінації значень з деякими новими коефіцієнтами:

    (2.4.4)
    Формула (2.4.4) є неявно схему Адамса і єрівнянням на, яке можна вирішувати методом послідовнихнаближень. Природно, що початкове наближення, повинно бутирозумно вибрано. Для цього зручно об'єднати явну і неявно схеми Адамса водну, яка називається «методом корекції». Саме за допомогою явної схемивизначається початкове наближення (прогноз), а потім по неявноїсхемою воно необхідне число разів (звичайно один або два) коригуєтьсяметодом послідовних наближень до досягнення заданої точності
    (корекція).

    2.5.Метод Ейлера.

    Розв'язати диференціальне рівняння у/= f (x, y) чисельним методом - цезначить для заданої послідовності аргументів х0, х1 ..., хn і числа у0,не визначаючи функцію у = F (x), знайти такі значення у1, у2, ..., уn, щоуi = F (xi) (i = 1,2, ..., n) і F (x0) = y0. (2.5.1)
    Таким чином, чисельні методи дозволяють замість знаходження функції
    У = F (x) отримати таблицю значень цієї функції для заданоїпослідовності аргументів. Величина h = xk-xk-1 називається крокомінтегрування.

    Метод Ейлера ставитися до чисельних методів, що дає рішення у виглядітаблиці наближених значень шуканої функції у (х). Він єпорівняно грубим і застосовується в основному для орієнтовних розрахунків.
    Однак ідеї, покладені в основу методу Ейлера, є вихідними для рядуінших методів.

    Розглянемо диференціальне рівняння першого порядку (2.5.1)з початковою умовою x = x0, y (x0) = y0 (2.5.2)
    Потрібно знайти рішення рівняння (2.5.1) на відрізку [а, b].
    Розіб'ємо відрізок [a, b] на n рівних частин і отримаємо послідовність х0,х1, х2, ..., хn, де xi = x0 + ih (i = 0,1, ..., n), а h = (ba)/n-крок інтегрування.

    У методі Ейлера наближені значення у (хi) (yi обчислюютьсяпослідовно за формулами уi + hf (xi, yi) (i = 0,1,2 ...).
    При цьому шукана інтегральна крива у = у (х), що проходить через точку М0 (х0,у0), заміняється ламаною М0М1М2 ... з вершинами Мi (xi, yi) (i = 0,1,2, ...); кожнеланка МiMi 1 цієї ламаною, званої ламаної Ейлера, має напрям,що збігається з напрямком тієї інтегральної кривої рівняння (2.5.1),яка проходить через точку Мi. Якщо права частина рівняння (2.5.1) вдеякому прямокутнику R (| x-x0 | (a, | y-y0 | (b) задовольняє умовам:

    | f (x, y1) - f (x, y2) | (N | y1 -y2 | (N = const), (2.5.3)

    | df/dx | = | df/dx + f (df/dy) | (M (M = const),то має місце наступна оцінка похибки:

    | y (xn)-yn | (hM/2N [(1 + hN) n-1],

    (2.5.4)де у (хn)-значення точного рішення рівняння (2.5.1) при х = хn, а уn -наближене значення, отримане на n-му кроці.
    Формула (13) має в основному теоретичне застосування. На практиці інодівиявляється більш зручним подвійний прорахунок: спочатку розрахунок ведеться з крокомh, потім крок дроблять і повторний розрахунок ведеться з кроком h/2. Похибкабільш точного значення уn * оцінюється формулою

    | yn-y (xn) | (| yn *- yn |.

    (2.5.5)

    Метод Ейлера легко поширюється на системи диференціальнихрівнянь і на диференціальні рівняння вищих порядків. Останні повиннібути попередньо приведені до системи диференціальних рівнянь першогопорядку.

    Модифікований метод Ейлера
    Розглянемо диференціальне рівняння (2.5.1) y/= f (x, y) з початковимумовою y (x0) = y0. Розіб'ємо наш ділянку інтегрування на n рівних частин.
    На малому участ інтегральну криву замінимо прямоїлінією.

    Рис.1 Метод Ейлера в графічномувідa

    Отримуємо точку Мк (хк, ук). Через Мк проводимо дотичну: у = ук = f (xk, yk) (x -xk). Ділимо відрізок (хк, хк1) навпіл: xNk/= xk + h/2 = xk 1/2

    (2.5.6)

    yNk/= yk + f (xk , yk) h/2 = yk + yk 1/2
    Отримуємо точку Nk /. У цій точці будуємо наступну дотичну: y (xk +1/2) = f (xk 1/2, yk 1/2) =? K

    (2.5.7)
    З точки Мк проводимо пряму з кутовим коефіцієнтом? До і визначаємо точкуперетину цієї прямої з прямою Хк1. Отримуємо точку Мк /. Як ук 1Приймаються ординаті точки Мк /. Тоді: ук +1 = ук +? Кh xk +1 = xk + h

    (2.5.8)? K = f (xk + h/2,yk + f (xk, Yk) h/2) yk = yk-1 + f (xk-1, yk-1) h
    (2.5.8)-рекурентние формули методу Ейлера.

    Спочатку обчислюють допоміжні значення шуканої функції ук 1/2 вточках хк 1/2, потім знаходять значення правій частині рівняння (11) в середнійточці y/k 1/2 = f (xk 1/2, yk 1/2) та визначають ук 1.

    Для оцінки похибки в точці хк проводять обчислення ук з кроком h,потім з кроком 2h і беруть 1/3 різниці цих значень:

    | ук *- у (хк) | = 1/3 (yk *- yk),

    (2.5. 9)де у (х)-точне рішення диференціального рівняння.
    Таким чином, методом Ейлера можна вирішувати рівняння будь-яких порядків.
    Наприклад, щоб вирішити рівняння другого порядку y// = f (y /, y, x) c початковимиумовами y/(x0) = y/0, y (x0) = y0, виконується заміна: y/= z

    (2.5.10) z/= f (x, y, z)
    Тим самим перетворюються початкові умови: y (x0) = y0, z (x0) = z0, z0 = y/0.
    (2.5.12)

    3.Опісаніе алгоритмів рішення задачі

    3.1.Опісаніе змінних.
    | Найменування | Тип | Опис |
    | Вхідні дані |
    | Xi | double | Початкове значення (x) |
    | | | Інтервалу обчислення |
    | Xkon | double | Кінцеве значення (x) |
    | | | Інтервалу обчислення |
    | n | integer | Кількість кроків |
    | Yi | double | Початкове значення y |
    | kx | double | Коефіцієнт при зміною |
    | | | X |
    | ky | double | Коефіцієнт при |
    | | | Змінної y |
    | Вихідні дані |
    | h | double | Фіксоване приріст |
    | | | Аргументу (x) |
    | res | double | Розрахункове значення |
    | | | Рівняння y '= F (x, y) в |
    | | | Точці (x) |
    | Проміжні |
    | i | integer | Лічильник циклу |
    | Yprom | double | Проміжне значення y |
    | | | В точці Xprom |
    | Xprom | double | Проміжне значення x |
    | | | При h/2 |
    | a | double | Рішення рівняння в |
    | | | Точках f (Xprom, Yprom) |
    | f1 | double | Функція f (x, y) |

    3.2. Блок-схема головного модуля

    3.3 Опис алгоритму головної програми.
    | Номер блоку | Опис |
    | 1 | Введення початкового і кінцевого значень інтервалу обчислення |
    | | Рівняння, кількість кроків, початкове значення у, а також |
    | | Коефіцієнти при kx і ky. |
    | 2 | Обчислення фіксованого приросту аргументу х |
    | 3 | Цикл з кроком 1 і кінцевим значенням не перевищує кількість |
    | | Кроків, який вираховує значення y на певному |
    | | Інтервалі |
    | 4 | Функція для розрахунку рівняння виду y '= f (x, y); |
    | | |
    | 5 | Висновок результатів на інтервалі X |

    3.4 Блок-схема функції "func".

    3.5 Опис блок-схеми функції "func".
    | Номер | Опис |
    | блоку | |
    | 1 | Обчислення: функції f1 з підстановкою початкових значень; |
    | | Проміжних значень Yprom і Xprom, значення a для обчислення |
    | | F (Xprom, Yprom) і розрахунок результатів функції і перехід на наступний |
    | | Крок. |
    | 2 | Приріст аргументу x на h |
    | 3 | Висновок результатів рівняння та інтервалу |

    * Реалізація алгоритму мовою програмування C + + представлена вдодатку.

    4.Опісаніе програмного забезпечення.

    4.1 Опис операційної системи

    Основна вимога до операційної системи (ОС), що пред'являєтьсяпоставленим завданням, це наявність ANSI або POSIX сумісного компіляторамови C ++.

    Для реалізації завдання була обрана остання клієнтська версіяопераційної системи Microsoft, заснована на ядрі NT - Microsoft Windows
    XP Professional.

    Вказана операційна система має низку переваг:

    . наявність достатньої кількості ANSI або POSIX сумісних компіляторів мови C + +, розроблених для цієї ОС, а саме - o Microsoft C + + (version 2-6) o gcc o Borland C + + o Intel C + + o інші;

    . достатня керованість, надійність і безпека;

    . широке розповсюдження заснованих на ядрі NT операційних систем

    Microsoft, сумісних з програмного забезпечення з Windows XP

    Professional (NT/2000/XP/2003 - client & server);

    . висока швидкість роботи додатків, розроблених для даної ОС з використанням компіляторів C ++.

    вихідного коду програми може бути відкомпілювати і під іншоюопераційною системою, якщо такий є ANSI або POSIX суміснийкомпілятор мови C ++.

    Програма була протестована на операційній системі Microsoft
    Windows XP Professional SP1.

    Технічні дані:

    . HDD: 60 Gb

    . Процессор x86 Family 15 Model 2 Stepping 7 GenuineIntel ~ 1817

    МГц

    . Версія BIOS Award Software International, Inc. F4,

    06.03.2003

    . Апаратно-залежний рівень (HAL) Версія = "5.1.2600.1106

    (xpsp1.020828-1920)"

    . Повний обсяг фізичної пам'яті 256,00 МБ

    . Доступно фізичної пам'яті 29,97 МБ

    . Всього віртуальної пам'яті 873,69 МБ

    . Доступно віртуальної пам'яті 350,04 МБ

    . Файл підкачки 618,21 МБ

    4.2 Опис мови програмування

    Мова програмування С + +

    С + + - це універсальна мова програмування, задуманий так, щобзробити програмування більш приємним для серйозного програміста. Завинятком другорядних деталей С + + є надмножеством мовипрограмування C. Крім можливостей, які дає C, С + + надаєгнучкі та ефективні засоби визначення нових типів. Використовуючивизначення нових типів, точно відповідають концепціям додатки,програміст може розділяти розроблювану програму на ліг до піддаютьсяконтролю частини. Такий метод побудови програм часто називають абстракцієюданих. Інформація про типи міститься у деяких об'єктах типів,визначених користувачем. Такі об'єкти прості і надійні у використаннів тих ситуаціях, коли їх тип не можна встановити на стадії компіляції.
    Програмування з застосуванням таких об'єктів часто називають об'єктно -орієнтованим. При правильному використанні цей метод дає більшкороткі, зрозумілі простіше і легше контрольовані програми.

    У С + + немає типів даних високого рівня і немає первинних операційвисокого рівня. У ньому немає, наприклад, матричного типу з операцією поводженняабо типу рядок з операцією конкатенації. Якщо користувачу знадоблятьсяподібні типи, їх можна визначити в самму мовою. По суті справи, основне,чим займається програмування на С + + - це визначення універсальних іспеціально-прикладних типів. Добре розроблений тип, обумовленийкористувачем, відрізняється від вбудованого типу лише способом визначення,але не способом використання.

    Реалізація С + + дуже легко переносимо. Однак є повні підставивикористовувати С + + в середовищі, де є набагато більш суттєва підтримка.
    Такі засоби, як динамічне завантаження, покрокова трансляція і базаданих визначень типів можуть з користю застосовуватися без впливу намова.

    Типи та засоби приховування даних в С + + спираються на що проводиться під часкомпіляції аналіз програм з метою запобігання випадкового викривленняданих. Вони не забезпечують секретності або захисту від навмисного порушенняправил. Однак ці кошти можна використовувати без обмежень, що непризводить до додаткових витрат часу на виконання або просторупам'яті.

    Компілятор Microsoft C + + і середовище розробки Microsoft Visual Studio

    Як компілятора для розробки програми було обрано Microsoft
    C + + з наступних причин:

    . практично повна сумісність зі стандартом ANSI C ++;

    . наявність зручної середовища розробки Microsoft Visual Studio;

    . наявність відмінної документації;

    . висока швидкість роботи результуючих додатків;

    . сумісність розроблених програм з великою кількістю широко поширених операційних систем;

    . достатня швидкість компіляції.

    4.3 Опис програми

    Розроблений додаток поставляється у вигляді 2-ух файлів:

    1. method Eulera.cpp - вихідний код програми на мові C ++;

    2. method Eulera.exe - виконуваний файл.

    Для виконання виконавчого файлу необхідна одна з нижчеперерахованих операційних систем:

    . Microsoft Windows 3.11 + Win32s;

    . Microsoft Windows 95/98/Me;

    . Microsoft Windows NT/2000/XP/2003 - клієнтська або серверна версія.

    Програма не вимагає попередньої установки і може бути відразу жзапущено на виконання.

    вихідного коду програми може бути відкомпілювати в будь-якому ANSI або
    POSIX сумісному компіляторі С + + для отримання здійсненним програми. Дляуспішної компіляції потрібна наявність стандартної бібліотеки «iostream».

    5. Контрольний приклад
    Даний метод протестований на контрольному прикладі і реалізований за допомогоюмови програмування С + +.
    У результаті обчислень контрольного прикладу виду y '= 2x + y з інтервалом
    [0,1],кількістю кроків рівному 5 і початковим умовою у рівним 1, за допомогоюпрограми, вийшли наступні результати:

    Рис. 2. Екран з результатами виконання програми.
    Як видно, при обчисленні програма на першому кроці бере початковізначення для обчислення, а на наступних бере значення отримані запопередніх кроків. Можна зробити висновок, що точність обчислення даногометоду залежить від кількості обраних кроків: чим більше кроків, тим меншефіксоване приріст, а отже вона більш точно обчислюєзначення всього інтервалу.
    По роботі програми стало видно, що з її використанням набагатоспростилася робота користувача. Користувач просто вводить інтервал наякому повинен обчислюватися приклад, кількість кроків і початкове значення іпрограма видає вже готове рішення даного прикладу.

    6.Аналіз отриманих результатів.
    За результатами програми можна скласти таблицю порівняння результатівотриманих внаслідок використання та результатів, отриманих ручнимспособом:
    | Ручний спосіб обчислення | Програмний спосіб обчислення |
    | Х | Y | X | Y |
    | 0 | 0,82 | 0 | 0,82 |
    | 0,2 | 0,75 | 0,2 | 0,7516 |
    | 0,4 | 0,77 | 0,4 | 0,770248 |
    | 0,6 | 0,85 | 0,6 | 0,856793 |
    | 0,8 | 0,99 | 0,8 | 0,996299 |

    З наведеного порівняння можна зробити висновок, що один результатвідрізняється від іншого тим, що в прикладі, вирішену програмним способомвідповідь обчислюється з найбільшою точністю, ніж при ручному способі. Це можебути пов'язано з тим, що в ручному способі результат округлюється для зручностіобчислення прикладу.
    Рішення диференціальних рівнянь методом Ейлера можна також відобразити вграфічному вигляді:

    Ріс.3.Графіческое зображення рішення прикладу y '= 2x + y
    Як видно з рис.3 графіком рішення рівняння є крива, формаякої залежить від кількості розбиття інтервалу.

    За результатами виконаної роботи можна зробити висновок, що рішеннядиференціальних рівнянь методом Ейлера є методом обчислення зсередньої точністю і точність обчислення даного методу залежить відкількості розбиття інтервалу інтегрування. При порівнянні результатіввирішеними різними способами можна сказати, що даний метод був вірнореалізований на мові програмування Microsoft Visual C + +. Отриманірезультати сходяться з невеликою похибкою.

    Список літератури.

    1. Чисельні методи (аналіз, алгебра, звичайні диференціальні рівняння), Н.С. Бахвалов. Головна редакція фізико-математичної літератури изд-ва «Наука», М., 1975р.

    2. Методи, теорії звичайних диференціальних рівнянь. Н.І. Гаврилов

    . Державне видавництво «Вища школа» Москва-1962р.

    3. В. В. Пак., Ю.Л. Носенко. Вища математика: Підручник .- Д.: Сталкер,

    1997р.

    4. Б. П. Демидович, И. А. Марон Основи обчислювальної математики. - М.,

    1966

    5. Загускін В. Л. - Довідник з чисельних методів розв'язання рівнянь.

    - М.: Физматгиз, 1960. - 216 с.

    6. Ліберті, Джесс.

    Освой самостійно С + + за 21 день, 4-е видання.: Пер с англ.-М.:

    Видавничий дім «Вільямс», 2003 .- 832с.

    7. П. Нортон, П. Іао «Програмування на С + + в середовищі Windows»

    ( «Діалектика» Київ 2003р.)

    8. Янг М. Microsoft Visual C + + - М.: ентропія, 2000.

    9. Марченко А.И., Марченко Л.А. - Програмування в середовищі

    Turbo Pascal 7.0 - К.: ВЕК +, М.: Бином Универсал, 1998. - 496 с.

    10. Вища математика: Справ. матеріали: Книга для учащихся .- М.:

    Просвещение, 1988.-416 с.: ил.

    Додаток.

    Лістинг програми.

    # include using namespace std; void func (double & Xi, double & Yi, double kx, double ky, double h); int main ()

    (double h, Xi, Yi, Xkon, kx, ky; int n; cout

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status