Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Задача 1. 1.Исследование методов численного интегрирования в MATLABЦель работы 1. Исследование методов численного интегрирования в MATLAB. 2. Изучение средств аналитического и численного интегрирования, имеющихся в MATLAB. 3. Программирование циклических алгоритмов в MATLAB. Задача 1. Вычислить значение интеграла где _ EMBED Equation.DSMT4 ___с помощью квадратурных формул левых прямоугольников, средних прямоугольников, трапеций и Симпсона для элементарного отрезка интегрирования. Оценить величину погрешности. Примен⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪⨪ Текст файла m-функции: function ff=fz1(x) %Лабораторная работа №4. Задача 1. %Интегрируемая функция C0=1.3; C1=0; C2=-0.1; C3=0.7; C4=8.1; ff=C4*x^4+C3*x^3+C2*x^2+C1*x+C0; 2) Текст m-файла сценария: Результат: %лабороторная работа №4 % выполнил студент гр 5а10 Стасов К.Э % задача1 %Вычисление точного значения интеграла %Пределы интегрирования a=1; b=1.44; %Задание под интегральной функции fp='8.1*x^4+0.7*x^3-0.1*x^2+0*x+1.3' %Неопределённый интеграл format short In=int(fp) %Определённый интеграл Io=int(fp,a,b); %Переводим результат из символьного формата данных в вещественный I=double(Io) %Строим график под интегральной функции fplot(fp,[a b]) title('y=f(x)') grid on xlabel('x') ylabel('f(x)') h=b-a; disp('Вычисление интегралов по квадратурным формулам') %Левые прямоугольники I_L=fz1(a)*h %Средние прямоугольники I_C=h*fz1((a+b)/2) %Трапеция I_T=h*((fz1(a)+fz1(b))/2) %Симпсон I_S=h/6*(fz1(a)+4*fz1((a+b)/2)+fz1(b))
disp('Вычисление погрешностей 4х методов') disp('Левые прямоугольники') %Левые прямоугольники %Абсолютная погрешность D_L=abs(I-I_L) %Относительная погрешность d_L=abs(D_L/I) %Теоретическая погрешность %Вычисление первой производной f1=diff(fp,1) m1='32.4*x^3 + 2.1*x^2 - 0.2*x'; M1=max(abs(m1)); D_L_T=(M1*h^2)/2 d_L_T=abs(D_L_T/I)
disp('Средние прямоугольники') %Средние прямоугольники %Абсолютная погрешность D_C=abs(I-I_C) %Относительная погрешность d_C=abs(D_C/I) %Теоретическая погрешность %Вычисление второй производной f2=diff(fp,2) m2='97.2*x^2 + 4.2*x - 0.2'; M2=max(abs(m2)); D_C_T=(M2*h^3)/24 d_C_T=abs(D_C_T/I)
disp('Метод трапеций') %Трапеция %Абсолютная погрешность D_T=abs(I-I_T) %Относительная погрешность d_T=abs(D_T/I) %Теоретическая погрешность %Вычисление второй производной f2=diff(fp,2); m2='97.2*x^2 + 4.2*x - 0.2' M2=max(abs(m2)); D_T_T=(M2*h^3)/12 d_T_T=abs(D_T_T/I)
disp('Метод Симпсона на элементарном отрезке') %Симпсон %Абсолютная погрешность format long e D_S=abs(I-I_S) %Относительная погрешность d_S=abs(D_S/I) %Теоретическая погрешность %Вычисление чётвёртой производной f4=diff(fp,4) a=1; b=1.44; h=b-a; x=a:0.0001:b; m4=194.4; M4=max(abs(m4)); D_S_T=(M4*(b-a)*h^4)/2880 d_S_T=abs(D_S_T/I) _ F='8.1*x^4+0.7*x^3-0.1*x^2+0*x+1.3' I = 9.4939 Вычисление интегралов по квадратурным формулам I_L =4.4000 I_C = 8.9612 I_T = 10.5625 I_S = 9.4950 Вычисление погрешностей 4х методов Левые прямоугольники D_L = 5.0939 d_L = 0.5365 D_L_T = 11.6160 d_L_T = 1.2235 Средние прямоугольники D_C = 0.5326 d_C = 0.0561 D_C_T = 0.4259 d_C_T = 0.0449 Метод трапеций D_T = 1.0686 d_T = 0.1126 D_T_T = 0.8518 d_T_T = 0.0897 Метод Симпсона на элементарном отрезке D_S = 1.113184511996934e-03 d_S = 1.172528339792125e-04 D_S_T = 1.113184511999999e-03 d_S_T = 1.172528339795353e-04 __ Рисунок 1 – график интегрируемой функции
_ b) Используя выражение для остаточных членов интегрирования R, оцениваем шаг интегрирования h и количество узлов интегрирования n, при которых величина погрешности каждой квадратурной формулы будет меньше 0.0001
Текст m-файла сценария: Результат: %СОСТАВНОЙ МЕТОД disp('СОСТАВНОЙ МЕТОД') %Задание 1 format short e R=0.0001;
%Поиск "h" и "n" для Метода левых прямоугольников disp('Поиск "h" и "n" для Метода левых прямоугольников') %Выражение h h_L=2*R/M1/(b-a); %Поиск величины n n_L=(b-a)/h_L; %Округдение n до ближайшего целого, не меньше n n_L=ceil(n_L) %Уточнение h h_L=(b-a)/n_L
%Поиск "h" и "n" для Метода средних прямоугольников disp('Поиск "h" и "n" для Метода средних прямоугольников') h_C=(24*R/M2/(b-a))^(1/2); n_C=(b-a)/h_C; n_C=ceil(n_C) h_C=(b-a)/n_C
%Поиск "h" и "n" для Метода трапеций disp('Поиск "h" и "n" для Метода трапеций') h_T=(R*12/(b-a)/M2)^(1/2); n_T=(b-a)/h_T; n_T=ceil(n_T) h_T=(b-a)/n_T
%Поиск "h" и "n" для Метода Симпсона disp('Поиск "h" и "n" для Метода Симпсона') h_S=(2880*R/M4/(b-a))^(1/4); n_S=(b-a)/h_S; n_S=ceil(n_S) h_S=(b-a)/n_S
disp('Вычисление интегралов для 4х методов через найденные значения n и h') %Общий метод левых прямоугольников disp('Общий метод левых прямоугольников') sumL=0; for i=0:n_L-1 sumL=sumL+fz1(a+i*h_L); end sumL=h_L*sumL
%Общий метод средних прямоугольников disp('Общий метод средних прямоугольников') sumC=0; for i=0:n_C-1 sumC=sumC+fz1(a+i*h_C+h_C/2); end sumC=h_C*sumC
%Общий метод трапеций disp('Общий метод трапеций') sumT=(fz1(a)+fz1(b))/2; for i=1:n_T-1 sumT=sumT+fz1(a+i*h_T); end sumT=h_T*sumT
%Общий метод Симпсона disp('Общий метод Симпсона') sumS=fz1(a)+fz1(b); for i=0:n_S-1 sumS=sumS+4*fz1(a+i*h_S+h_S/2); end for i=1:n_S-1 sumS=sumS+2*fz1(a+i*h_S); end sumS=sumS*h_S/6
%Находим абсолютную погрешность disp('Находим абсолютные погрешности для 4х методов') D_L2=abs(I-sumL) D_C2=abs(I-sumC) D_T2=abs(I-sumT) D_S2=abs(I-sumS) _ СОСТАВНОЙ МЕТОД Поиск "h" и "n" для Метода левых прямоугольников n_L =
h_L =
3.7879e-06 Поиск "h" и "n" для Метода средних прямоугольников n_C =
h_C = 6.6667e-03 Поиск "h" и "n" для Метода трапеций n_T = 93 h_T = 4.7312e-03 Поиск "h" и "n" для Метода Симпсона n_S = 2 h_S = 2.2000e-01 Вычисление интегралов для 4х методов через найденные значения n и h Общий метод левых прямоугольников sumL = 9.4938e+00 Общий метод средних прямоугольников sumC = 9.4938e+00 Общий метод трапеций sumT = 9.4940e+00 Общий метод Симпсона sumS = 9.4940e+00 Находим абсолютные погрешности для 4х методов D_L2 = 5.3052e-05 D_C2 = 1.2317e-04 D_T2 = 1.2407e-04 D_S2 = 6.9574e-05__Метод вычислений_Элементарный метод_Составной метод. Заданная погрешность R=0.0001___Эксперимент_Теория____ D_d _ D _ d _n_h_ D __Левых прям-ов_5.0939_00.5365_11.6160_71.2235_116160_3.7879e-006_5.3052e-05__Средних прям-ов_ 0.5326
_0.0561 _0.4259_ 0.0449_66_6.6667e-03_1.2317e-04__Трапеций_1.0686_0.1126_0.8518_0.0897_93_4.7312e-03 _1.2407e-04__Симпсона_1.113184511996934e-03_1.172528339792125e-04_1.113184511999999e-03_1.172528339795353e-04_2_2.2000e-01 _6.9574e-05__ Вывод: теоретическая погрешность элементарного метода получается больше экспериментальной. Погрешность, определенная составным методом значительно меньше, чем элементарным. Таким образом, наиболее точный результат получается при вычислении методом Симпсона, так как при наибольшем шаге интегрирования и наименьшем количестве узлов получается самая маленькая погрешность. Погрешность, определенная составным методом, меньше заданной.
|