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

     

     

     

     

     

         
     
    Обчислення визначених інтегралів
         

     

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

    Міністерство Освіти Російської Федерації

    Рязанська державна радіотехнічна академія

    Кафедра обчислювальної та прикладної математики.

    ОБЧИСЛЕННЯ визначених інтегралів.

    Пояснювальна записка до курсової роботи з дисципліни «Інформатика»

    Виконав: студент гр.

    Перевірив:

    Нікітін В.І.

    Рязань , 2001р

    Завдання.

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

    Метод обчислень - Формула Гаусса.

    | № | f (x) | a | b | c | d | |
    | 1 | edx/2cos2 (cx) | 0 | (| 0.9; 1; 1.05; | 2.4; 2.5; 2.6 | 10-4 |
    | | | | | 1.1 | | |
    | 2 | (x ln (cdx)) 2 | 1 | e | 3; 3.2; 3.4; | 0.5; 0.4; | 10-3 |
    | | | | | 3.5 | 0.85 | |

    Зміст.


    Завдання. 1


    Зміст. 2


    Опис методу рішення. 3


    Блок-схема програми. 4


    Текст програми та результати рахунку. 5


    Висновок. 7


    Бібліографічний список. 7

    Опис методу рішення.

    У формулі Гаусса на кожному інтервалі інтегрування значення функціїf (x) обчислюється не в рівномірно розподілених по інтервалу вузлах, а вабсцис, обраних з умови забезпечення мінімуму похибкиінтерполяції:

    де n-число інтервалів інтегрування, m - число обчислюваних на кожномуінтервалі значень функції. , - Межі інтервалівінтегрування; і - коефіцієнти значення яких визначаютьсявеличиною m. Для m = 3 A1 = 5/9, A2 = 8/9, A3 = 5/9,, t2 = 0, t3 =- t1

    Блок-схема програми.

    Блок-схема1: Функція обчислення інтеграла.

    Блок-схема 2: Основна програма.

    Текст програми та результати рахунку.

    program Kursovoy;const A1 = 5/9; A2 = 8/9; t =- 0.77459; (константи для взяття інтеграла методом
    Гаусса)type func = function (x, c, d: real): real; (прототип функції від якої беретьсяінтеграл)var a, b, eps: real; (межі інтегрування і точність обчислення) c: array [1 .. 4] of real; (параметри функції, від якої береться інтеграл) d: array [1 .. 5] of real; ( взяті з таблиці 2)function f_test (x, c, d: real): real; (тестова функція sin (x))begin (інтеграл від 0 до пи теоретично дорівнює 2) f_test: = sin (x);end;function f1 (x, c, d: real): real; (перша функція з таблиці 2)begin f1: = exp (d * x/2) * sqr (cos (c * x));end;function f2 (x, c, d: real): real; (друга функція з таблиці 2)begin f2: = sqr (x * ln (c * d * x));end;
    (Функція взяття інтеграла від функції f, прототип (вид) якої описаний в типіfunc a, b-межі інтегрування, cm, dm-параметри c і d функції f, eps
    -точність обчислень k-число ітерацій, за які вдалося знайти інтеграл)function Integral (f: func; a, b, cm, dm, eps: real; var k: integer): real;var S, z, h, c, d, l, x, x1, x2, x3: real; (S-поточне наближене значення інтеграла, z-Попередні наближене значення інтеграла, h-крок інтегрування, c, d, l, x , x1, x2, x3-допоміжні змінні див. стор.25 методички) i, n: integer; (i-лічильник циклу, n-число інтервалів інтегрування)begin n: = 1; S: = 0; k: = 0; repeat k: = k +1; (збільшуємо кількість ітерацій) z: = S; (попереднє значення інтеграла одно поточному) n: = n * 2; (в два рази збільшуємо кількість інтервалів інтегрування) h: = (ba)/n; x: = a; S: = 0; c: = h/2; l: = c * t; (визначення крокуінтегрування, початкового значення x, сам інтеграл спочатку дорівнює 0, допоміжні змінні вважаємо) for i: = 0 to n-1 do (перебираємо всі інтервали інтегрування) begin d: = x + c; x1: = dl; x2: = d; x3: = d + l; (обчислюємо значення абцісс вузлів, вибраних з умови забезпечення мінімуму похибки інтерполяції)

    S: = S + A1 * (f (x1, cm, dm) + f (x3, cm , dm)) + A2 * f (x2, cm, dm); (додаємо до суми) x: = x + h; (переходимо на новий інтервал інтегрування) end;

    S: = S * c ; (множимо отриману суму на h/2) until (abs (zS) = 14); (виходимо з циклу, якщо відносна похибка попереднього і поточного інтегралів меншезаданої точності або якщо кількість ітерацій перевищило допустимий)
    Integral: = S; (повертаємо значення отриманого Інтергал)end;var i, j, n: integer;begin
    (обчислюємо значення перевірочного інтеграла, передаючи у функцію Integralім'я обчислює функцію в даному випадку f_test, інтервал інтегрування a = 0 b = 3.14159 cm = 0 dm = 0 (останні два параметри в даному випадку можуть бути будь-якими, тому щоf_test від них не залежить) eps = 1e-3 (точність), в параметр n, після виходу з функції обчисленняінтеграла буде записано число ітерацій) writeln ( 'Перевірочний інтеграл від 0 до пи sin (x) dx
    = ', Integral (f_test, 0,3.14159,0,0,1 e-3, n): 7:5,

    ' ', n,' ітерацій '); c [1]: = 0.9 ; c [2]: = 1; c [3]: = 1.05; c [4]: = 1.1; (введення параметрів для першогофункції) d [1]: = 2.4; d [2]: = 2.5; d [3]: = 2.6; eps: = 1e-4; a: = 0; b: = 3.14159; writeln ( 'Інтеграл від', a: 1:0, 'до', b: 5:3, 'функції f1', 'зточністю ', eps: 5,' при: '); for i: = 1 to 4 do (перебираємо параметр з) for j: = 1 to 3 do (перебираємо параметр d) begin
    (обчислюємо значення першого інтеграла, передаючи у функцію Integral ім'яобчислює функцію в даному випадку f1, інтервал інтегрування a = 0 b = 3.14159 cm = c [i] dm = d [i] (останні два параметри перебираються в циклі і не рівні
    0, тому що f1 від них залежить) eps = 1e-4 (точність), в параметр n, після виходу з функції обчисленняінтеграла буде записано число ітерацій) writeln ( 'з =', c [i]: 4:2, 'd =', d [j]: 4:2, 'дорівнює
    ', Integral (f1, a, b, c [i], d [j], eps, n): 8:5,' ', n,' ітерацій '); end; readln; (очікуємо натискання клавіші enter, інакше всі виводяться дані непомістяться на один екран) c [1]: = 3; c [2]: = 3.2; c [3]: = 3.4; c [4]: = 3.5; (введення параметрів для першогофункції) d [1]: = 0.5; d [2]: = 0.4; d [3]: = 0.85; eps: = 1e-3; a: = 1; b: = exp (1); (b = e ) writeln ( 'Інтеграл від', a: 1:0, 'до', b: 5:3, 'функції f2', 'зточністю ', eps: 5,' при: '); for i: = 1 to 4 do (перебираємо параметр з) for j: = 1 to 3 do (перебираємо параметр d) begin
    (обчислюємо значення другого інтеграла, передаючи у функцію Integral ім'яобчислює функцію в даному випадку f2, інтервал інтегрування a = 1 b = e cm = c [i] dm = d [i] (останні два параметри перебираються в циклі і не рівні
    0, тому що f2 від них залежить) eps = 1e-3 (точність), в параметр n, після виходу з функції обчисленняінтеграла буде записано число ітерацій) writeln ( 'з =', c [i]: 4:2, 'd =', d [j]: 4:2, 'дорівнює
    ', Integral (f2, a, b, c [i], d [j], eps, n): 8:5,' ', n,' ітерацій '); end;end.

    Результати рахунку.


    Перевірочний інтеграл від 0 до пи sin (x) dx = 2.00000 2 ітерацій

    Інтеграл від 0 до 3.142 функції f1 з точністю 1.0E-0004 при:с = 0.90 d = 2.40 рівний 17.12437 3 ітераційс = 0.90 d = 2.50 рівний 19.52435 3 ітераційс = 0.90 d = 2.60 рівний 22.28654 3 ітераційс = 1.00 d = 2.40 рівний 22.33040 2 ітераційс = 1.00 d = 2.50 рівний 25.49172 2 ітераційс = 1.00 d = 2.60 рівний 29.12609 3 ітераційз = 1.05 d = 2.40 рівний 24.19102 3 ітераційз = 1.05 d = 2.50 рівний 27.60541 3 ітераційз = 1.05 d = 2.60 рівний 31.52694 3 ітераційз = 1.10 d = 2.40 рівний 25.37969 3 ітераційз = 1.10 d = 2.50 рівний 28.93760 3 ітераційз = 1.10 d = 2.60 рівний 33.01928 3 ітерацій

    Інтеграл від 1 до 2.718 функції f2 з точністю 1.0E-0003 при:с = 3.00 d = 0.50 дорівнює 8.40102 2 ітераційс = 3.00 d = 0.40 дорівнює 5.52503 2 ітераційс = 3.00 d = 0.85 рівний 17.78460 2 ітераційс = 3.20 d = 0.50 дорівнює 9.35094 2 ітераційс = 3.20 d = 0.40 дорівнює 6.29171 2 ітераційс = 3.20 d = 0.85 рівний 19.17026 2 ітераційс = 3.40 d = 0.50 рівний 10.29153 2 ітераційс = 3.40 d = 0.40 дорівнює 7.06018 2 ітераційс = 3.40 d = 0.85 рівний 20.52016 2 ітераційс = 3.50 d = 0.50 рівний 10.75780 2 ітераційс = 3.50 d = 0.40 дорівнює 7.44414 2 ітераційс = 3.50 d = 0.85 рівний 21.18214 2 ітерацій

    Висновок.

    У цій роботі обчислювалися певні інтеграли методом
    Гаусса. Як видно з отриманих результатів, програма працює правильно, тому щотеоретично = 2, що співпадає з розрахунковим, забезпечує задануточність обчислень, при малому числі ітерацій. До переваг даногометоду обчислення функцій варто віднести, те що метод Гаусса забезпечуєточне обчислення інтеграла від полінома ступеня 2m-1. До недоліків слідвіднести відносно великий час розрахунку інтеграла, при великих m.

    Бібліографічний список.

    1. Рішення рівнянь і чисельне інтегрування на ЕОМ: Методичні вказівки до курсової роботи з дисципліни «Інформатика». Рязань, 2000р. 32 c.

    2. Бронштейн И.Н., Семендяев К.А. Довідник з математики для інженерів і учнів втузов. М.: 1986 544с.
    3. Бахвалов Н.С. Чисельні методи. М.: 1975.


    -----------------------

    Вихід

    j

    Висновок S, n

    Наближене обчислення другого інтеграла S

    j = 1,3

    i = 1,4

    c [1]: = 0.9 ; c [2]: = 1; c [3]: = 1.05; c [4]: = 1.1; d [1]: = 2.4; d [2]: = 2.5; d [3]: = 2.6; eps : = 1e-4; a: = 0; b: = 3.14159;

    c [1]: = 0.9; c [2]: = 1; c [3]: = 1.05; c [4 ]: = 1.1; d [1]: = 2.4; d [2]: = 2.5; d [3]: = 2.6; eps: = 1e-4; a: = 0; b: = 3.14159;

    i

    Наближене обчислення перших інтеграла S

    Висновок S, n

    i

    j

    j = 1,3

    i = 1,4

    Висновок S

    S =

    Вхід

    S = S * c

    d = x + c; x1 = dl; x2 = d; x3 = d + l;

    S = S + A1 * (f (x1, cm, dm) + f (x3, cm, cd)) + A2 * (f (x2, cm, dm)) x = x + h

    i = 0, n-1

    i

    Вихід (S, k)


    НІ

    ТАК

    | zS | <(| S | or k> = 14

    k = k +1; z = S; n = n * 2; h = (ba)/n; x = a; S = 0; c = h/2; l = c * t

    n = 1; S = 0; k = 0;

    Вхід (f, a, b, cm, dm, ()

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

     

     

     

     

     

     

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