Оценка точности методов численного интегрирования - Курсовая работа

бесплатно 0
4.5 94
Разработка кода программы, написанной на языке программирования С, вычисляющей определенный интеграл заданной в варианте функции и представление ее действия на примере заданных значений аргументов: шага интегрирования, левого и правого пределов.

Скачать работу Скачать уникальную работу

Чтобы скачать работу, Вы должны пройти проверку:


Аннотация к работе
Извечным отличаем цифровой информации от аналоговой заключалось в том, что аналоговая информация сравнительно полно отражала реальный мир, в то время, как цифровая информация передавала приближенные, или аппроксимированные данные, при наиболее малом реальном объеме носителей и большей долговечностью хранения. Соответственно, с самого начала существования цифровой техники (техники, основанной на передаче, использовании, обработке и хранении цифровой информации) имела место проблема аппроксимации (приближения к реальности) данных с наименьшими погрешностями. Требовалось выработать наиболее оптимальные методы приближения, при которых данные передавались бы как можно более точные, но при этом не требовалось бы выделять слишком большие ресурсы как памяти, так и обработчика данных (к примеру, компьютера). интеграл код программирование Для функции f(x)=-x x*x-x*x*x на интервале [0,4.5] рассчитать определенный интеграл приближенным и точным методами, оценить погрешность и вывести результаты на консоль. if (d == 0.25) s = string.Format(" Точное={0:f7}

Приближенное={1:f7}

========================================================

", прям, ИНТЛЕЙБНИЦ); //определение содержания возвращаемоего аргумента double Delta = (прям - ИНТЛЕЙБНИЦ) / ИНТЛЕЙБНИЦ * 100; //вычисление погрешностиИтак, погрешности при вычислении приблизительного значения интеграла заданной функции оказались довольно небольшими ,что показывает достаточно высокую степень точности аппроксимации, и, как следствие, интегрирования данного метода. И так же Я узнал что чем больше кратность интегрирования тем меньше погрешность.

Введение
Извечным отличаем цифровой информации от аналоговой заключалось в том, что аналоговая информация сравнительно полно отражала реальный мир, в то время, как цифровая информация передавала приближенные, или аппроксимированные данные, при наиболее малом реальном объеме носителей и большей долговечностью хранения. Соответственно, с самого начала существования цифровой техники (техники, основанной на передаче, использовании, обработке и хранении цифровой информации) имела место проблема аппроксимации (приближения к реальности) данных с наименьшими погрешностями. Требовалось выработать наиболее оптимальные методы приближения, при которых данные передавались бы как можно более точные, но при этом не требовалось бы выделять слишком большие ресурсы как памяти, так и обработчика данных (к примеру, компьютера). интеграл код программирование

1. Изложение задания

1) Вариант задания.

Оценка точности численного интегрирования методом Симпсона. Вариант задания-15: функция 2*х 3*х*х-х*х*х, нижний предел 2, верхний10,кратность интегрирования 400.

2) Постановка задачи.

Для функции f(x)=-x x*x-x*x*x на интервале [0,4.5] рассчитать определенный интеграл приближенным и точным методами, оценить погрешность и вывести результаты на консоль. Для приближенного вычисления определенного интеграла использовать метод Входящих прямоугольников с кратностями: 0,25m,0,5m,0,75m,,1,25m,1,5m при m=300

3)Схема типа Integral

2. Код программы using System;

class altysha

{ static double d = 0.25;

struct Integral

{ double a, b; //определение типа переменных, яввляющихся пределами интегрировани int m; // определение типа переменной, яввляющейся кратностью интегрирования public Integral(double ina, double inb, int inm) //определение полей и общедоступности типа

{ a = ina =inb,помещение inb в а,если ina<inb ina в a b = ina =inb ,помещение ina в b,если если ina<inb inb в b m = inm; //помещение в поле введенного значения d = 0.25;

} public override string TOSTRING()//определение общедоступного метод, возвращающий строку

{ string s = "";

if (d == 0.25) s = string.Format(" Точное={0:f7}

Приближенное={1:f7}

========================================================

", прям, ИНТЛЕЙБНИЦ); //определение содержания возвращаемоего аргумента double Delta = (прям - ИНТЛЕЙБНИЦ) / ИНТЛЕЙБНИЦ * 100; //вычисление погрешности

Delta = Math.Abs(Delta);

s = string.Format("\NПОГРЕШНОСТЬ={0:f7}% - {1}m", Delta, d,h);

return s; //возвращение аргумента

} public double fx(double x) // определение общедоступного метода

{ return -x x * x - x * x * x;

} public double h//определение общедоступного свойства,в котором вычисляется шаг численного интегрирования

{ get

{ return (b - a) / (m * d);

}

} public double прям //определение общедоступного свойства,в котором вычисляется интеграл численным методом

{ get

{ double sum = 0;

int k = 1;

for (double i = a; i < b; k )

{ sum = fx((i a (h * k)) / 2);

i = a h * k;

} return h * sum;

}

} public double Fx(double x) // определение общедоступного метода

{ return ((-x * x) / 2) (x * x * x / 3) - (x * x * x * x / 4);

} public double ИНТЛЕЙБНИЦ//определение общедоступного свойства,в котором вычисляется точное значение интеграла

{ get

{ return Fx(b) - Fx(a);

}

}

} static void Main()

{

{

Integral obj = new Integral(0, 4.5, 300);//значения переменных for (d = 0.25; d <= 1.5; d = 0.25)

Console.WRITELINE(obj.TOSTRING());());//вывод на экран

Console.READKEY();

}}

}

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

Приложение “Блок-схема программы”

Вывод
Итак, погрешности при вычислении приблизительного значения интеграла заданной функции оказались довольно небольшими ,что показывает достаточно высокую степень точности аппроксимации, и, как следствие, интегрирования данного метода. И так же Я узнал что чем больше кратность интегрирования тем меньше погрешность.

Список литературы
1.Воробьев Г.Н., Бахвалов Н.С. «Численные методы». М.: Наука, 1973. 231с.

2. Ефимов А.В., Демидович Б.П. «Линейная алгебра и основы математического анализа». М.: Наука, 2011. 386с.

3. Бараненков Г.С., Демидович Б.П. «Задачи и упражнения по математическому анализу для ВТУЗОВ». М., 2012. 184с.

4. Абрамов С.А., Зима Е.В. «Начало программирования на языке Паскаль». М.: Наука, 2007. 8с.

5. Епанешников А.Е., Красильников Ю.И. «Программирование в среде турбо Паскаль». М.: Центр МИФИ СП Диалог, 2010. 3-6с.

Размещено на .ru

Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность
своей работы


Новые загруженные работы

Дисциплины научных работ





Хотите, перезвоним вам?