47312 (608212), страница 2

Файл №608212 47312 (Інтегрування Нютона-Котеса) 2 страница47312 (608212) страница 22016-07-30СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

.

Для знаходження цих сталих отримуємо систему рівнянь

(11)

Ця система є нелінійною і її розв'язування звичайними методами пов'язано зі значними труднощами. Однак‚ якщо використати систему для поліномів виду

‚(12)

де - поліном Лежандра‚ то її можна звести до лінійної системи відносно коефіцієнтів із заданими точками .

Поліномами Лежандра називаються поліноми виду

.

Перші п'ять поліномів Лежандра мають вигляд

Оскільки степені поліномів у співвідношенні (12) не перевищують ‚ то повинна виконуватись система (11) і формула (8):

.

Внаслідок властивості ортогональності ліва частина останньої рівності дорівнює нулю‚ тоді

що завжди забезпечується при довільних значеннях в точках ‚ які відповідають кореням відповідних поліномів Лежандра.

Підставивши ці значення в систему (11) і враховуючи перші n рівнянь‚ можна легко визначити коефіцієнти .

Формула (8)‚ де - нулі поліному Лежандра ‚ а визначаються з системи (11)‚ називається формулою Гауса.

Таблиця 3. Елементи формули Гауса.

1

1

0

2

2

1; 2

0,57735027

1

3

1;3

2

0,77459667

0

0,55555556

0,88888889

4

1;4

2;3

0,86113631

0,33998104

0,34785484

0,65214516

6

1; 6

2; 5

3; 4

0,93246951

0,66120939

0,23861919

0,17134250

0,36076158

0,46791394

7

1; 7

2; 6

3; 5

4

0,94910791

0,74153119

0,40584515

0

0,12948496

0,27970540

0,38183006

0,41795918

8

1; 8

2; 7

3; 6

4; 5

0,96028986

0,79666648

0,52553142

0,18343464

0,10122854

0,22238104

0,31370664

0,36268378

В таблиці 3 подано значення та для формули Гауса для різних від 1 до 8.

Стандартні програми‚ які використовують формули Гауса з різним числом вузлів як формули‚ що забезпечують найкращу точність‚ входять до складу багатьох пакетів програм для наукових та інженерних розрахунків.



2. Практична частина

2.1 Архітектура програми

Для реалізації поставленої задачі розроблено програму INTEGRALY.PAS (лістінг програми представлено в додатку 4).

Програма складається з головного блоку, шести процедур:

  • VVID_INTERVAL;

  • INIT_GAUS;

  • INIT_CHEB;

  • CALCULATION;

  • VYVID_REZ;

  • INFORM.

Запуск програми здійснити двома способами:

  • з головного меню інтегрованого середовища Turbo Pascal шляхом вибору опції Run (попередньо програма повинна бути завантажена в ОП - F10, File, Open, INTEGRALY.PAS);

  • з середовища операційної оболонки Norton Commander шляхом запуску INTEGRALY.EXE (попередньо програма повинна буди відкомпільована з опцією Destination To Memory).

Програма виводить на дисплей головного меню, котре пропонує користувачеві вибір однієї з опцій:

- ВВІД

- ОБЧИСЛЕННЯ

  • РЕЗУЛЬТАТИ

  • ІНФОРМАЦІЯ

- ВИХІД.

При виборі певної опції активізується відповідна процедура. Завершення роботи програми і повернення в середовище системи програмування Turbo Pascal здійснюється при натисканні клавіші Esc, що відповідає вибору опції "ВИХІД". Програма знаходить розв’язки систем лінійних рівнянь з двома та трьома невідомими, виводить обчислені визначники та знайдені розв’язки на дисплей, або інформує користувача про відсутність розв’язків.

Опишемо процедури програми INTEGRALYS.PAS.

Процедура VVID_INTERVAL. Призначення - ввід лівої та правої меж інтегрування (інтервалу інтегрування). Процедура викликається з головного меню програми при виборі пункту "ВВІД" шляхом натискання функціональної клавіші F2.

Після вводу меж інтегрування процедура припиняє роботу і повертає керування в програму. Процес виконання процедури представлено екранною копією (див. додаток 1).

Процедура INIT_GAUS. Призначення - визначення (ініціація) значень елементів квадратурної формули Гауса. Виклик процедури здійснюється процедурою CALCULATION.

Процедура INIT_CHEB. Призначення - визначення (ініціація) значень елементів квадратурної формули Чебишева. Виклик процедури здійснюється процедурою CALCULATION.

Процедура CALCULATION. Призначення - обчислення визначеного інтеграла з допомогою квадратурних формул‚ розглянутих в попередньому розділі. Процедура викликається з головного меню програми при виборі пункту "ОБЧИСЛЕННЯ" (функціональна клавіша F3). Обчислені різними методами значення визначеного інтеграла зберігаються в масиві змінних. Після обчислення інтегралів процедура передає керування головному блокові програми.

Блок схема процедури представлена в додатку 3.

Процедура VYVID_REZ. Призначення - форматований вивід результатів обчислення визначеного інтеграла на дисплей. Процедура викликається з головного меню програми при виборі пункту "РЕЗУЛЬТАТИ" (функціональна клавіша F4). Результат роботи процедури представлено не екранній копії (див. додаток 5). Для отримання друкованого результату потрібно натиснути клавішу PrtScr (при роботі в режимі MS DOS) або комбінацію клавіш Shift+PrtScr (при роботі з ОС Windows 3.xx, Windows 9x).

Процедура INFORM. Призначення - ввід короткої інформації про методи чисельного інтегрування та квадратурні формули. Процедура викликається з головного меню програми при виборі пункту "ІНФОРМАЦІЯ" шляхом натискання функціональної клавіші F1.

Після вводу текстової інформації на екран дисплею процедура організовує паузу в роботі і повертає керування в програму при натисканні довільної клавіші. Результат виконання процедури представлено екранною копією (див. додаток 1).

Головний блок програми реалізовано у вигляді вертикального меню з використанням функціональних клавіш. Вибір опції меню здійснюється за допомогою натискання відповідної функціональної клавіші‚ вихід з меню (а тим самим і з програми) здійснюється при натисканні клавіші Esc. Блок-схема головного блоку програми подано в додатку 2.


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

Програма складена‚ відкомпільована і відлагоджена в середовищі Turbo Pascal 6.0.

На початку програми, відповідно до вимог технології програмування, знаходиться вступний коментар до програми, а решта операторів програми мають таке призначення:

Оператор

Призначення оператора

001

Заголовок програми

002

Підключення зовнішнього модуля управління виводом на дисплей (Crt)

003-008

Опис глобальних змінних програми

009-011

Опис підінтегральної функції

012

Заголовок процедури Init_Gauss

013

Початок процедури

014

Визначення кількості вузлів інтегрування

015-022

Ініціалізація абсцис інтегрування та коефіцієнтів формули Гауса

023

Кінець процедури Init_Gauss

024

Заголовок процедури Init_Cheb

025

Початок процедури

026

Визначення кількості вузлів інтегрування

027-032

Ініціалізація абсцис інтегрування та коефіцієнтів формули Чебишева

033

Кінець процедури Init_Cheb

034

Початок процедури Vvid_Interval

035

Опис локальної змінної

036

Початок процедури

037

Очистка вікна виводу

038-040

Вивід екранної форми для вводу даних

041-042

Ввід меж інтегрування

043

Кінець процедури Vvid_Interval

044

Заголовок процедури Calculation

045

Початок процедури

046-047

Присвоєння значення 0 масиву integral [1..5]

048-051

Обчислення наближеного значення інтегралу за формулою прямокутників і присвоєння цього значення змінній integral[1]

052-055

Обчислення наближеного значення інтегралу за формулою трапецій і присвоєння цього значення змінній integral[2]

056-064

Обчислення наближеного значення інтегралу за формулою Сімпсона і присвоєння цього значення змінній integral[3]

065

Виклик процедури Init_Gauss

066-069

Обчислення наближеного значення інтегралу за формулою Гауса і присвоєння цього значення змінній integral[4]

070

Виклик процедури Init_Cheb

071-076

Обчислення наближеного значення інтегралу за формулою Чебишева і присвоєння цього значення змінній integral[5]

077

Заголовок процедури Vyvid_Rez

078

Початок процедури

079-089

Вивід на дисплей екранної форми для виводу результатів обчислень

090-093

Вивід масиву вихідних наближених значень інтегралу‚ обчислених різними методами

094

Організація паузи в роботі програми

095

Кінець процедури Vyvid_Rez

096

Початок процедури Inform

097-098

Опис локальних змінних процедури

098

Початок процедури

099-104

Очистка вікна виводу

105-128

Вивід короткої інформації про чисельне інтегрування та про методи‚ що використовуються для наближеного обчислення визначених інтегралів

129

Організація паузи в роботі програми

130

Кінець процедури Inform

131

Початок головного блоку програми

132

Організація циклу виводу меню програми

133

Початок тіла циклу

134

Очистка екрану

135-136

Визначення основного та фонового кольорів

137

Оголошення вікна виводу

138-162

Вивід головної екранної форми програми та меню

163

Очікування натискання довільної клавіші і присвоєння коду цієї клавіші змінній choise

164-165

Зміна основного та фонового кольорів

166-174

Заголовок оператора вибору(аналіз коду клавіші)

167

Виклик процедури Vvid_Interval‚ якщо користувачем натиснуто клавішу F2 (код клавіші 6016)

168-170

Виклик процедури Calculation‚ якщо користувачем натиснуто клавішу F3 (код клавіші 6116)

171

Виклик процедури Vyvid_Rez‚ якщо користувачем натиснуто клавішу F4 (код клавіші 6216)

172

Виклик процедури Inform‚ якщо користувачем натиснуто клавішу F1 (код клавіші 5916)

173

Кінець роботи програми при натисканні користувачем клавіші Esc (код клавіші 2716)

174

Кінець дії оператора вибору

175

Кінець тіла циклу

176

Кінець програми.

2.3 Контрольний приклад та аналіз результатів машинного експерименту

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

Характеристики

Тип файла
Документ
Размер
1,58 Mb
Тип материала
Учебное заведение
Неизвестно

Список файлов курсовой работы

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6665
Авторов
на СтудИзбе
292
Средний доход
с одного платного файла
Обучение Подробнее