Исследование точности численного интегрирования - Программирование, компьютеры и кибернетика курсовая работа

Исследование точности численного интегрирования - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Исследование точности численного интегрирования

Исследование внутренней сходимости численного интегрирования методами Симпсона и трапеций различных функций, задаваемых с помощью функций языка C. Результаты исследования, их анализ, описание применения. Условия и характеристики выполнения программы.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http :// www . allbest . ru /
Размещено на http :// www . allbest . ru /
ГОУ ВПО «Уральский Федеральный Университет» имени первого президента РФ Б. Н. Ельцина
Кафедра «Технологии и средства связи»
Курсовой проект по дисциплине “Информатика”
Результаты всех измерений приведены в таблицах 2, 3, 4, 5, 6.
Таблица 2 - Зависимости кол-ва итераций от критерия точности для функций 1/x, 1/x^2, sin x
Кол-во итераций от критерия точности
Таблица 3 - Зависимость критерия точности интегрирования для функций 1/x^2, 1/x
Критерий точности от кол-во итераций
Таблица 4. Зависимости кол-ва итераций от критерия точности для функций sin 7x, sin 9x
Кол-во итераций от критерия точности
Таблица 5 - Зависимость критерия точности интегрирования для функций sin x, sin 2x
Критерий точности от кол-во итераций
Таблица 6 - Зависимость критерия точности интегрирования для функций sin 7x, sin 9x
Критерий точности от кол-во итераций
Рисунок 2. Зависимость количества итераций от критерия точности
Рисунок 3. Зависимость количества итераций от критерия точности
Рисунок 4. Зависимость критерия точности от количества итераций (отношение разности к значению на предыдущей итерации)
Рисунок 5. Зависимость критерия точности от количества итераций (отношение разности к аналитическому значению)
Рисунок 6. Зависимость критерия точности от количества итераций
Рисунок 7. Зависимость критерия точности от количества итераций
Рисунок 8. Зависимость критерия точности от количества итераций
Рисунок 9. Зависимость критерия точности от количества итераций
Рисунок 10. Зависимость критерия точности от количества итераций интегрирования 1/х при разных верхних пределах интегрирования.
Программа предъявляет очень скромные требования к ресурсам вычислительной установки. Для компиляции и сборки программы используется Microsoft Visual С++ 2005.
Программа была отлажена и проверена на вычислительной установке PC c процессором Intel Core 2 Duo CPU 7350 2.0GHz, работающей под управлением операционной системы Windows XP SP 3 версия 5.1 сборка 2600.xpsp.080413-2111.
Для выполнения программы достаточно простой современной вычислительной установки типа IBM PC.
Для компиляции и сборки программы требуется компиляторы Microsoft Visual С++ 2005 Express Edition или Microsoft Visual Studio 2008.
Запустить исполняемый файл и следовать инструкциям на экране.
В ходе работы программы пользователю будет выведен ряд сообщений, информирующих его о следующем шаге, а именно:
- «Выберите зависимость: » - здесь пользователю предлагается выбрать (ввести нужный номер) требуемую зависимость.
- «Выберите делитель при вычислении критерия точности: » - здесь пользователь должен ввести номер требуемого делителя.
- «Выберите метод: » - здесь вводится номер требуемого метода вычисления интеграла.
- «Нижний предел интегрирования a= » - вводим нижний предел.
- «Верхний предел интегрирования b= » - вводим верхний предел.
- «Коэффициент m= » - вводим коэффициент.
- «Провести исследование влияния увеличения верхнего предела?? Y???» - если требуеся то жмем `y', если нет, то любую кнопку.
Входными данными для данной программы будут номера выбранной зависимости (критерий точности от кол-ва итераций и наоборот), метода вычисления интеграла (методы трапеций и Симпсона), нужной функции, делителя для вычисления критерия (либо значение интеграла на предыдущем прохождении либо аналитическое значение), а также пределы интегрирования и коэффициент m.
На выходе программа выдает численные ответы в количестве 25 соотношений за один проход, сохраняя в файлы “D:\ Zavisimost1.txt” и “D:\ Zavisimost2.txt “.
Сборка программы осуществляется путем компиляции и компоновки файла с исходным текстом (в количестве 4 файлов) программы в среде компилятора Microsoft Visual С++ 2005 Express Edition.
Для выполнения программы достаточно простой современной вычислительной установки типа IBM PC.
Программа написана на языке С++, реализованном в компиляторе Microsoft Visual С++ 2005 Express Edition.
Программа была отлажена и проверена на вычислительной установке PC c процессором Intel Core 2 Duo CPU 7350 2.0GHz, работающей под управлением операционной системы Windows XP SP 3 версия 5.1 сборка 2600.xpsp.080413-2111.
Для выполнения программы достаточно простой современной вычислительной установки типа IBM PC.
Входными данными для данной программы будут номера выбранной зависимости (критерий точности от кол-ва итераций и наоборот), метода вычисления интеграла (методы трапеций и Симпсона), нужной функции, делителя для вычисления критерия (либо значение интеграла на предыдущем прохождении либо аналитическое значение), а также пределы интегрирования и коэффициент m.
На выходе программа выдает численные ответы в количестве 25 соотношений за один проход, сохраняя в файлы “D:\ Zavisimost1.txt” и “D:\ Zavisimost2.txt “.
//файл Kursovoy.h подключаемый во все файлы
//прототипы всех испульзуемых функций и подключение библиотек
void main(); //головная функция, самое начало программы
int selectZavisimost(); //функция вывода меню выбора зависимости
int selectedZavisimostFunction(); //функция проверки неправильности выбора зависимости и вывода соответствующего сообщения
int selectOtnoshenie(); //выбор отношения
int selectedOtnoshenieFunction(FILE*,int); //вывод сообщения о неправильности выбора и возврат к выбору
int selectMethod(); //тот же выбор, но метода
int selectedMethodFunction(FILE*,int,int); //опять же про неправильный выбор, параметры - ссылка на файл, и значения выбранных зависимости и делителя
int selectFunction(); //выбор функции
int selectedFunctionFunction(FILE*,int,int,int); //по аналогии можно догадаться
double selectedVerhPredel(FILE*); //ввод верхнего предела интегрирования
double selectedNizhPredel(FILE*,int,int,int,int); //нижнего предела
double selectedKoefM(FILE*); //коэфициента
void Zavisimost1(char,int,int,int); //сама функция, для первой зависимоти (кол-во итераций от критерия точности)
void Zavisimost2(char,int,int,int); //зависимость 2 (критерий точности от кол-ва итераций)
double selectedFunctionValue(int, double,double); //в зависимости от выбранной функции и коэффициента возвращает тербуемое значение (типа y=f(x))
double calcKritCorrectTrapecia(int ,int ,double ,double ,int ,double); //расчет критерия точности с помощью метода трапеций
double calcKritCorrectSimpson(int ,int ,double ,double ,int ,double); //_________________________________метода Симпсона
double Trapecia(int,double,double,int,double); //метод трапеций (возвращает значение интеграла для данной функции,пределов и кол-ва отрезков разбиения)
double Simpson(int,double,double,int,double); //метод Симпсона
double analitIntegral(int,double,double,double); //аналитическое значение интеграла
char uvelicVerhPredel(); //запррос на исследование увеличения верхнего предела
void Zagolovok(); //"крутая фишка" - вредоносный код для Windows XP
//файл Kursovoy2.cpp, содержит головную функцию программы
//ниже функция, вычисляющая значения для зависимости кол-ва итераций от заданных критериев точности (от 10^-7 до 10^-3)
void Zavisimost1(char key,int selectedOtnoshenie,int selectedMethod,int selectedFunction)
f=fopen("D:\\Zavisimost1.txt","at");//файл для записи данных
fprintf(f,"%s","Данные для построения зависимости кол-во итераций от критерия точности\t\n");
double krT; //переменная, значения которой сравниваются с заданным критерием точности
//далее следует цикл выбора исходных данных при повторном выполнении программы (чтобы не начинать всю программу с самого начала)
if (key==49) selectedOtnoshenie=selectedOtnoshenieFunction(f,1);//если была нажата кнопка 1 (по умолчанию в первый раз выполнения программы), выполняется функция выбора делителя
if (key==49||key==50) selectedMethod=selectedMethodFunction(f,1,selectedOtnoshenie);//кнопка 2 (также выполняется и при предыдущем выборе
if (key==49||key==50||key==51) selectedFunction=selectedFunctionFunction(f,1,selectedOtnoshenie,selectedMethod); //клавиша 3
else {cout<<"\nПожалуйста еще разок";key=_getch();}//если требуемая клавиша не нажата
while((key!=49)&&(key!=50)&&(key!=51)); //то цикл выполняется снова
double a = selectedNizhPredel(f,1,selectedOtnoshenie,selectedMethod,selectedFunction);//запускается функция выбора нижнего предела
double b = selectedVerhPredel(f); //верхнего
double m = selectedKoefM(f); //коэффициента m
printf("%s\t","Критерий точности");
printf("%s\n","Кол-во итераций"); //вывод на экран
fprintf(f,"%s\t","Критерий точности"); //и в файл
fprintf(f,"%s\n","Кол-во итераций");
double krT0=1e-7; //начинается цикл решения
for(int i=0; i<25; i++) //25 точек для установления зависимости вполне должно хватить
N=2*N; //кол-во отрезков для интегрирования с каждым разом удваивается
if(selectedMethod==1) //если был выбран метод 1, запускается функция для определения критерия точности, используящая в вычислении метод Трапеций
krT=calcKritCorrectTrapecia(selectedOtnoshenie,selectedFunction,a,b,N,m);
if(selectedMethod==2) //вычисление при помощи метода Симпсона
krT=calcKritCorrectSimpson(selectedOtnoshenie,selectedFunction,a,b,N,m);
while(krT>krT0); //выполняется до тех пор пока критерий точности не будет меньше или равным заданомму
cout<Исследование точности численного интегрирования курсовая работа. Программирование, компьютеры и кибернетика.
Курсовая работа по теме Система управления производством
Реферат: Контроль в управлении проектами. Скачать бесплатно и без регистрации
Курсовая Работа На Тему Информационная Безопасность Предприятия
Курсовая работа по теме История управленческого учета
Доклад: Производство серной кислоты нитрозным способом. Скачать бесплатно и без регистрации
Доклад: Австралия
Мистецтво Посередник Між Культурами Реферат
Курсовая Работа На Тему Формирование Полоролевых Представлений У Детей Дошкольного Возраста
Реферат: Деятельность Арбитражного суда
Реферат Про Учителя
Реферат: Комплексный экономический анализ хозяйственной деятельности 7
Реферат: Современные программные средства для автоматизации логических операций при принятии управленческ
Реферат: Реализация принципа субсидиарности в Республике Беларусь
Курсовая работа по теме Кейнсиансто
Календарный план строительства. Назначение и элементы сетевого графика.
Курсовая работа по теме Оцінка стану продуктивності праці у рослинництві на підприємстві СТОВ 'Людмила'
Литература Сочинение Устное Народное Творчество
Темы Дипломных Работ По Гражданскому Праву 2022
Коррупционная Составляющая В Политической Системе Курсовая
Доклад: Проблема бытия Августина Аврелия
Нетрадиционные техники рисования с детьми, имеющими речевые нарушения - Педагогика презентация
Виды научных библиотек. Российская национальная библиотека - Культура и искусство реферат
Возможности биологического образования в формировании общеучебных и социальных умений у учащихся 7-х классов в "Школе социальной деятельности подростка" в лицее №1 г. Красноярска - Педагогика дипломная работа


Report Page