Разработка программы для вычисления определённого интеграла с помощью квадратурной формулы Чебышева

Автор: Пользователь скрыл имя, 11 Декабря 2011 в 20:13, курсовая работа

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

В курсовой работе представлено интегрирование функции при помощи квадратурной формулы Чебышева (Чебышев Пафнутий Львович 1821-1894) с применением языка программирования Basic. А так же проверка правильности решения при помощи MathCad и табличного процессора Excel, при создании текста пояснительной записки использованы Microsoft Word.

Содержание

Введение 5
Задание 6
Решение средствами MS Excel 10
Проверка вручную 11
Описание программы 12
Текст программы на языке Qbasic 12
Результат работы программы 13
Заключение 14
Библиографический список 15

Работа содержит 1 файл

Аннотация.docx

— 60.04 Кб (Скачать)

Аннотация  

      Пояснительная записка представляет собой отчёт  по курсовой работе на тему: разработка программы для вычисления определенного  интеграла с помощью квадратурной формулы Чебышева. В работе используются язык программирования QBasic, расчёты выполнены в MS Excel и MathCAD, отчёт оформлен в Microsoft Word. Тремя разными способами был найден определенный интеграл.

      Страниц 14 , таблиц 3 . 
 

The summary 

      The explanatory note represents the report on course work on a theme: development of the program for calculation of the certain integral by means of квадратурной formulas Чебышева. In work are used programming language QBasic, calculations are executed in MS Excel and MathCAD, the report is issued in Microsoft Word. Three different ways had been found the certain integral.

     Pages 14 , tables3 .

 

Оглавление 

Введение 5

Задание 6

Решение средствами MS Excel 10

Проверка вручную 11

Описание программы 12

Текст программы на языке Qbasic 12

Результат работы программы 13

Заключение 14

Библиографический список 15 

 

Введение

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

     В курсовой работе представлено интегрирование функции при помощи квадратурной формулы Чебышева (Чебышев Пафнутий Львович 1821-1894) с применением языка программирования  Basic.  А так же проверка правильности решения при помощи MathCad и табличного процессора Excel, при создании текста пояснительной записки использованы Microsoft  Word.

 

Задание

 

     Требуется найти определенный интеграл по квадратурной формуле Чебышева.   
 

     Еще надо выполнить решение определенного  интеграла средствами QBasic, вычисления оформить в виде процедур, предусмотреть вывод результата на экран. Выполнить проверку решения средствами MS Excel и MathCad. 
Теория метода

     Интегрирование  функции квадратурной формулой Чебышева.

 

Интегрирование  квадратурной формулой Чебышева:   Эта формула немного похожа на одну из Гауссовых квадратур. Она использует для интегрирования весовую функцию W(x) = 1 и делает веса при точках одинаковыми.    Интеграл на отрезке [-1, 1] задается формулой

при этом узлы, в которых вычисляются значения функции, находятся, как корни полиномов  определенного вида, что ограничивает применение формулы теми случаями, когда все корни этих полиномов  являются вещественными. Доказано (Hildebrand 1956), что это верно только для  n < 8 и n=9. Таким образом, данная формула применима только для n из списка: 2, 3, 4, 5, 6, 7, 9. Таким образом, достаточно один раз вычислить узлы интегрирования для каждого из этих n, и поместить их в таблицу, что и проделано в данном алгоритме. Для малых n используются аналитически известные значения, для больших - рассчитанные при помощи численных методов.

На  входе:

  • a, b - отрезок интегрирования. Внутри алгоритма автоматически производится требуемая замена переменных
  • n - число точек, равно 2, 3, 4, 5, 6, 7 или 9.

Результат функции:

  • Если задано корректное n, то результат равен приближенному значению интеграла.
  • Если задано некорректное n, то результат равен 0.

      Квадратурная формула Чебышева 

Общие сведения: При интегрировании функции  на интервале  [-1,1] применим квадратную формулу  

,                                (1)

В которой  абсциссы Xi выбираются в соответствии со следующими предложениями Чебышева:

    1. Коэффициенты Bi равны между собой;
    2. Формула (1) является точкой для всех полиномов до степени n включительно.

      Таким образом

      В1 = В2 = …. = Вn = В

      При f(x) = 1 получаем

      η =

      Тогда квадратурная формула Чебышева имеет  вил

                            (2)

      Для определения абсцисс Xi формула (2) должна быть точна для функции вида

      F(x) = x , x2 , … , xn .                                     (3)

      Подставляя  функции (3) в формулу (2), получим следующую  систему уравнений:

                       (4)

      Система (4) не имеет решение при n = 8 и n ≥ 10. Следовательно, значения абсцисс формулы (2) могут быть найдены только в случае n = 2,3,…7,9. Значения абсцисс даны в таблице       

                                                                                                              Табл.1

n I ti n i ti
2 1;2 ± 0,577350 6 1;6 ± 0,866247
3 1;3 ± 0,707107   2;5 ± 0,422519
  2 0   3;4 ± 0,266635
4 1;4 ± 0,794654 7 1;7 ± 0,883862
  2;3 ± 0,187592   2;6 ± 0,529657
5 1;5 ± 0,832498   3;5 ± 0,321912
  2;4 ± 0,374541   4 0
  3 0      

      Таблица.1 Значения х1,х2,..,хn для различных n. 
       
       
       
       
       
       

Интервал по произвольному промежутку [a;b] приводится к виду (2) заменой переменной по формуле

        

                                 (5) 

Тогда

       .                               (6) 

Значения  ti принимаются по данным таблице. Формула (6) называется квадратной формулой Чебышева с n узлами.

 

Решение средствами MS Excel

 

 Вычислить  интеграл  
 
 
 

b= 4.2     a= 2.2

f(x)=e-3xln(x2+2)

n=2,3…7

Хi = (4,2+2,2)/2+(4,2-2,2)/2*ti=3.2+1ti 
 
 

табл.2. Фрагмент листа MS Excel с решением определенного интеграла с помощью формулы Чебышева

По формуле (6) находим 

     У= 
 

n=2  y=0.00086935  ; n=3 y=0.00092174; n=4 y=0.00095606;

n=5 y=0.00095771; n=6 y=0.00095942; n=7 y=0.00095891;

 

Решение средствами MathCad 
 
 

MathCad с решением определенного интеграла с помощью формулы Чебышева 
 
 

Проверка вручную

 

 

Табл.3.

 Вычисление  абсцисс и значений подынтегральной  функции вручную

t x f(x)
-0,832498 2,367502 1,669793*10-3
-0,374541 2,825459 0,479352*10-3
0 3,2 0,169638*10-3
0,374541 3,574541 0,592965*10-4
0,832498 4,032498 0,161882*10-4
 
 
 
 

∑F(x)= 2,39427*10-3 
 

 

Описание программы

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

       Вначале программы определяются типы данных, используемых в основной программе. Коэффициенты t для n задаются как массив . Чтобы вычислить интеграл, мы пользуемся формулой Чебышева. Таким образом, программа будет иметь две подпрограммы, задающиеся с помощью оператора процедуры «sub».

     В первой подпрограмме «natur», вычисляются Xi. Во второй подпрограмме  «integral», с помощью оператора FOR происходит циклический процесс нахождения значения функции Fi в зависимости от Xi, до тех пор пока условие не будет верным, а параллельно с этим подсчитывается сумма значений функций. Затем по квадратурной формуле Чебышева находится значение определенного интеграла. Программой предусмотрено вывод результата на экран.

Текст программы на языке Qbasic

 

Подпрограммы: 

SUB integral (x() AS SINGLE, f() AS SINGLE, n AS INTEGER,  a AS SINGLE, b AS SINGLE)

DIM i AS INTEGER

DIM s AS SINGLE

DIM y AS SINGLE

CLS

s = 0

FOR i=1 TO n

f(i) = EXP(x(i) * -3) * LOG(X(i)^2 + 2)

s = s + f(i)

y = (b - a) / n * s

NEXT i

PRINT " y="; y

END SUB 

SUB natur (t() AS SINGLE, x() AS SINGLE, n AS INTEGER, a AS SINGLE, b AS SINGLE)

DIM i AS INTEGER

FOR i = 1 TO n

x(i) = (a + b) / 2 + (b - a) / 2 * t(i)

NEXT i

END SUB  
 
 
 
 
 

Основная программа: 

DECLARE SUB natur (t() AS SINGLE, x() AS SINGLE , n AS INTEGER, a AS SINGLE, b AS SINGLE)

DECLARE SUB integral (x() AS SINGLE, f() AS SINGLE, n AS INTEGER, a AS SINGLE, b AS SINGLE)

DIM t(7) AS SINGLE

DIM x(7) AS SINGLE

DIM f(7) AS SINGLE

DIM i AS INTEGER

CLS

INPUT “n=”; n

IF n = 5 THEN

DATA -0.832498,-0.374541, 0, 0.374541, 0.832498

Информация о работе Разработка программы для вычисления определённого интеграла с помощью квадратурной формулы Чебышева