Реферат: Расчет двойного интеграла при помощи метода Симпсона - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Расчет двойного интеграла при помощи метода Симпсона

Банк рефератов / Математика

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Архив Zip, 12 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

/***************************************************************************** * .FILE : numeric.c * .TITLE : Расчет двойного интеграла при помощи метода Симпсона (парабол ) * .DESCR : Курсовой проект по численным методам (1994 год ) * : * : Выполнил : Петренко В.С . (гр . ПС -301) * : Проверил : Панюков А.В. * : * .NOTE : NOT FOR RENTAL OR SALE. * : FEDERAL LAW PROVIDES SEVERE CIVIL & CRIMINAL PENALTIES FOR * : UNAUTHORIZED DUPLICATION OR DISTRIBUTION. * : * : (C) '94 by P$P *****************************************************************************/ #include #include /***************************************************************************** * .NAME : m_Simpson * .TITLE : Расче т интеграла методом Симпсо на (парабол ) * .DESCR : * : * .PARAMS : double m_Simpson (double (*func) (double, double), * : double t_fix, double t_limit, int N); * : double (*func) (double, double) - подынтегр альная ф - я * : double t_fix - фиксированный первый аргу мент * : double t_limit - верхний предел интегрирования, * : нижний равен -t_limit * : int N - число точек разбие ния * .RETURN : Значение вычисленного интеграла *****************************************************************************/ double m_Simpson (double (*func) (double, double), double t_fix, double t_limit, int N) double sum1 = 0; /* -¬ */ double sum2 = 0; /* ¦ временные переменные */ double sum3 = 0; /* -- */ double sum; /* конечный результат */ double h = (2 * t_limit) / N; /* шаг сетки */ int i; /* временная */ sum1 = (*func) (t_fix, -t_limit) + (*func) (t_fix, +t_limit); for (i = 1; i <= N - 1; i++) sum2 += (*func) (t_fix, -t_limit + (i * h)); sum2 *= 2; for (i = 1; i <= N; i++) sum3 += (*fun c) (t_fix, -t_limit + ((i-0.5) * h)); sum3 *= 4; sum = sum1 + sum2 + sum3; sum = (h / 6) * sum; return sum; /* */ /* Глобальные переменные */ /* ~~~~~ ~~~~~~~~~~~~~~~~ */ #define PI 3.1415926536 /* число П */ double k; /* параметр функции - задается пользователем */ int N_MAX; /* число узлов сетки разбиения */ double (*currFunc) (d ouble, double); /* выбранная пользователем функ ция */ double f1 (double x, double y); double f2 (double x, double y); double f3 (double x, double y); /***************************************************************************** * .NAME : double F (dou ble dummy, double t) * .TITLE : Вычисляет внутренний интеграл (G (t)). * : См . текст курсового проекта. * .DESCR : П /2 * : - * : первая вычисляемая функция ¦ G (t + П /2) * sin (t + П /2) dt * : t - * : - - П /2 * : где G (t) = ¦ currFunc (t, tau) dtau * : - * : -t * .PARAMS : double F (double dummy, double t); * : double dummy - фиктивный первый а ргумент , при вызове этой * : функции он не используется , т.к . она * : функция одного аргумента * : double - действительный вт орой аргумент * .RETURN : Значение функции : G (t) * sin (k * t); *****************************************************************************/ double F (double dummy, double t) double G; t = t + PI / 2; /* сдвижка начала координат , чтобы пр еделы */ /* были симметричны (в нашем случае - на П /2) */ G = m_Simpson (currFunc, t, t, N_MAX); return G * sin (k * t); /***************************************************************************** * .NAME : main * .TITLE : Ос новная диалоговая функция. * .DESCR : Запрашивается интересующая пользователя функция, * : параметр k и число узлов сетки N_MAX. * : Выводит на экран вычисленное значен ие интеграла и * : два справочных значения - П и П /2. * : * .PARAMS : void main (void); * .RETURN : *****************************************************************************/ void main (void) double integral; /* значение вычисленного интеграла */ int selection; /* номер выбранной функ ции */ /* мас сив доступных функций */ double (*functions []) (double, double) = f1, f2, f3 ; printf ("\ n Вычисление интеграла м етодом Симпсона (парабол ) "); printf ("\n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "); printf ("\n -- "); printf ("\ n I = ¦¦ sin k(x + y) f (x, y) dx dy "); printf ("\n -- "); printf ("\n D "); printf ("\n где D = (x, y): x, y >= 0; x + y <= П , f Е C (D)"); printf ("\n"); printf ("\ nДля какой функции рассчитывать : "); printf ("\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ "); prin tf ("\n 1) f (x, y) = 0.5 * cos (y) "); printf ("\n - -- 0; k != 1 "); printf ("\ n ¦ sin x * sin (kx) dx => ¦ "); printf ("\n - L- П /2; k = 1 "); printf ( "\n "); printf ("\n 2) f (x, y) = 0.5 - sin (y) "); printf ("\n - "); printf ("\ n ¦ x * sin (kx) dx =====> П ; k = 1 "); printf ("\ n - "); printf ("\n "); printf ("\n 3) f (x, y) = sqrt (x * x + y * y)"); printf ("\n"); do printf (" Ваш выбор : "); scanf ("%d", &sele ction); while (!(1 <= selection && selection <= 3)); printf (" Параметр k: "); scanf ("%lg", &k); do printf ("Число узлов сетки N: "); scanf ("%d", &N_MAX); while (!(N_MAX > 0)); printf ("\n"); printf ("\ n Расчет интеграла ..."); currFunc = functions [selection - 1]; /* текущая функция */ integral = m_Simpson (F, 0, PI / 2, N_MAX); /* вычисляем интеграл */ printf ("\ n Значение интеграла рав но : %.12lg", integral); /* вывод */ printf ("\ n Величины : П = %.12lg; П /2 = %.12lg", PI, PI / 2); /***************************************************************************** * .FILE : func.c * .TITLE : Содержит функции пользователя , которые можно * : изменять без перек омпиляции осно вной программы * .DESCR : После изменения этого модуля его необходимо перекомпилировать * : и слинковать с numeric.obj * : * : * .NOTE : NOT FOR RENTAL OR SALE. * : FEDERAL LAW PROVIDES SEVERE CIVIL & CRIMINAL PEN ALTIES FOR * : UNAUTHORIZED DUPLICATION OR DISTRIBUTION. * : * : (C) '94 by P$P *****************************************************************************/ #include /* выбираемая пользователем функция No.1 */ double f1 (do uble x, double y) return 0.5 * cos (y); /* выбираемая пользователем функция No.2 */ double f2 (double x, double y) return 0.5 - sin (y); /* выбираемая пользователем функция No.3 */ double f3 (double x, double y) return sqrt (x * x + y * y);
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Молодожёны! Прежде чем бежать в ЗАГС, поклейте вместе обои.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по математике "Расчет двойного интеграла при помощи метода Симпсона", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru