лабораторных рабо_1 (4). Лабораторная работа 1 Программа для умножения матриц. Оценка числа операций
Скачать 1.43 Mb.
|
3. Формула Симпсона Аппроксимируя в частичном интеграле функцию ( ) f x квадратичным полиномом 2, ( ) i L x , получаем так называемую формулу Симпсона для частичного интервала. Поскольку квадратичный полином однозначно определяется координатами трех точек ( , ), ( 1, , 1) k k x y k i i i , то частичный отрезок интерполирования и интегрирования должен состоять из двух элементарных отрезков 1 [ , ] i i x x и 1 [ , ] i i x x (рис. 4), то есть быть двойным, а число n b a / h четным 1 ( ) i i h x x . (Либо на каждом отрезке 1 [ , ], 1, 2,..., i i x x i n , должна быть определена еще одна точка 1/ 2 1/ 2 ( , ) i i x y , где 1/2 1 ( ) / 2 i i i x x x ). Тогда полином Лагранжа второй степени имеет вид 2, 1 1 1 1 2 1 ( ) 2 2 i i i i i i i L x x x x x f x x x x x f x h 1 1 , i i i x x x x f x а частичный интеграл – 1 1 1 1 2, 1 1 ( ) ( )) 4 3 i i i i x x i i i i x x h f x dx L x dx y y y (8) Это формула Симпсона или формула парабол для двойного отрезка 1 1 [ , ] i i x x Общая формула Симпсона для интегрирования по всему отрезку [a,b] имеет вид 1 1 ( ) 4 3 b i i i a h f x dx y y y 0 1 3 1 2 4 2 [ 4( ) 2( ) ] 3 n n n h y y y y y y y y (9) Следует отметить, что формула Симпсона (8) дает точное значение интеграла не только для любых полиномов второй, но и третьей степени: 2 3 0 1 2 3 y a a x a x a x , в чем можно убедиться непосредственной проверкой этого равенства. Поэтому для оценки погрешности формулы Симпсона на отрезке 1 1 [ , ] i i x x надо воспользоваться каким-либо полиномом третьей степени, для которого формула (8) точна. Удобнее всего использовать для этого полином Эрмита 3 ( ) H x , который, как и квадратичный полином, проводится только через три точки и удовлетворяет условиям: Погрешность аппроксимации функции ( ) f x полиномом Эрмита на отрезке 1 1 [ , ] i i x x равна [3] (4) 2 3 1 1 1 1 ( ) ( ) ( ) ( ) ( )( ) ( ) , [ , ] 24 i i i i i i i f x f x H x x x x x x x x x x Так как формула Симпсона точна для любого полинома третьей степени 1 1 3 1 3 3 1 1 1 ( ) ( ) 4 ( ) ( ) 4 3 3 i i x i i i i i i x h h H x dx H x H x H x y y y погрешность формулы Симпсона на частичном отрезке будет равна 1 1 1 1 1 1 ( ) 4 ( ) 3 i i i i x x i i i i x x h r f x dx y y y x dx 1 1 (4) 2 1 1 ( ) ( )( ) ( ) 24 i i x i i i i x f x x x x x x dx Откуда получаем оценку погрешности формулы (8): 5 (4) 1 1 ( ), [ , ], 90 i i i i h r y x x Погрешность общей формулы Симпсона (9) равна сумме погрешностей на частичных отрезках: 4 (4) 4 4 [ , ] ( ) , max ( ) . 180 x a b b a h R M M f x и имеет четвертый порядок малости по h, что на два порядка меньше, чем у погрешностей формул прямоугольников и трапеций. Образец выполнения задания 1) 1.3 2 0.7 2 0.3 dx I x ; 2) 1.6 2 1.2 sin(2 2.1) 1 x I dx x 1) Для достижения заданной степени точности необходимо определить значение n так, чтобы 3 2 2 ( ) 0.0005. 12 b a M n (*) Здесь 2 2 [0.7;1.3] 0.7; 1.3; max | ''( ) | где ( ) 1/ 2 0.3 a b M f x f x x . Находим 2 2 3 2 5 2 8 0.6 '( ) , ''( ) ; (2 0.3) (2 0.3) x x f x f x x x 2 2 5 [0.7;1.3] 8 1.3 0.6 max ''( ) 6.98. (2 0.7 0.3) f x Положим 2 7 M , тогда неравенство (*) примет вид 3 2 0, 6 7 0.0005, 12n откуда 2 252, т.е. 16 n n возьмем 20 n Вычисление интеграла производим по формуле 0 20 1 2 19 2 y y I h y y y , где 2 1 ( ) / 0.6 / 20 0.003; ( ) 1/ 2 0.3; 0.7 ( 0,1, 2,..., 20) i i i h b a h y y x x x ih i Все расчеты приведены в табл.1. Т а б л и ц а 1 i i x 2 2 0.3 i x 0 20 , y y 1 2 18 19 , ,... , y y y y 0 1 2 3 4 5 6 0.7 0.73 0.76 0.79 0.82 0.85 0.88 1.1314 1.1686 1.2063 1.2443 1.2825 1.3210 1.3597 0.88386 0.85572 0.82898 0.80366 0.77973 0.75700 0.73546 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0.91 0.94 0.97 1.00 1.03 1.06 1.09 1.12 1.15 1.18 1.21 1.24 1.27 1.30 1.3986 1.4378 1.4771 1.5166 1.5562 1.5960 1.6356 1.6759 1.7161 1.7564 1.7967 1.8372 1.8777 1.9187 0.52129 0.71501 0.69551 0.67700 0.65937 0.64259 0.62657 0.61140 0.59669 0.58272 0.56935 0.55658 0.54431 0.53253 1.40515 12.77022 Таким образом, 1.40515 0.03 12.77022 0.40418 0.404 2 I 2) Согласно условию n=8 поэтому ( ) / (1.6 1.2) / 8 0.05. h b a n Вычислительная формула имеет вид 0 1 2 3 4 5 6 7 8 4 2 4 2 4 2 4 3 h I y y y y y y y y y где 2 sin(2 2.1) ( ) , 1.2 ; ( 0,1,...,8). 1 i i i i i x y y x x ih i x Вычисление значений функции, а также сложение значений функции, имеющих одинаковые коэффициенты в формуле. Производим в таблице II Т а б л и ц е II i i x sin(2 2.1) i x 2 1 i x 0 8 , y y 1 3 5 7 , , , y y y y 2 4 6 , , y y y 0 1 2 3 4 5 6 7 8 1.20 1.25 1.30 1.35 1.40 1.45 1.50 1.55 1.60 0.29552 0.38942 0.4794 0.5646 0.6442 0.7174 0.7833 0.8415 0.8912 2.44 2.5625 2.69 2.8225 2.96 3.1024 3.25 3.4025 3.56 0.1211 0.2503 0.1520 0.2000 0.2312 0.2473 0.1782 0.2176 0.2410 0.3713 0.8305 0.6368 Следовательно 0.05 0.05 (0.3714 4*0.8305 2*0.6368) * 4.9670 0.88278 3 3 I Для оценки точности полученного результата составим таблицу конечных разностей функций да разностей четвертого порядка (таблица III). Таблица. III i i y i y 2 i y 3 i y 4 i y 0 1 2 3 4 5 6 7 8 0.1211 0.1520 0.1782 0.2000 0.2176 0.2312 0.2410 0.2473 0.2503 0.0309 0.0262 0.0218 0.0176 0.0136 0.0098 0.0063 0.0030 -0.0047 -0.0044 -0.0042 -0.0040 -0.0038 -0.0035 -0.0033 0.0003 0.0002 0.0002 0.0002 0.0003 0.0002 -0.0001 0.0000 0.0000 0.0001 -0.0001 Так как 4 max 0.0001 i y , от остаточный член формулы 4 ост ( ) * max 0.4 * 0.0001 0.0000003 180 180 i b a y R Вычисления производились с четырьмя значащими цифрами а потому величина остаточного члена на погрешность не влияет. Погрешность вычислений можно оценить из соотношения ( ) 0.4*0.0001 0.00005. I b a y Значит полученные четыре десятичных знака верны. Simpson formulasi: 1 3 2 1 2 4 2 2 ( ) ( ) ( ) 4( ( ) ( ) ... ( )) 3 2( ( ) ( ) ... ( )) b n a n h f x dx f a f b f x f x f x f x f x f x h i a x begin a, b, n n a b h 2 ) ( ) ( b f a f S 1 2 , 1 n i ) ( 2 x f S S S end 3 h S S 0 2 mod i ) ( 4 x f S S + − #include #include { return 1/sqrt(abs(cos(t)-pow(t,2))); } int main () { float S,a,b,h,x; int n,i; cin>>a>>b>>n; h=(b-a)/(2*n); S=f(a)+f(b); for (i=1;i<2*n;i++) { x=a+i*h; if (i%2==0) S=S+2*f(x); else S=S+4*f(x); } S=S*h/3; cout< Задание. 1. Вычислить интеграл по формуле трапеций с тремя десятичными знаками. 2. Вычислить интеграл по формуле Симпсона при n=8; оценить погрешность результата, составив таблицу конечных разностей. № Трапеций Симпсона 1 1,6 2 0,8 ; 2 1 dx x 2 1.2 lg( 2) x dx x 2 2.7 2 1.2 ; 3.2 dx x 2.4 1.6 ( 1) sin x xdx 3 2 2 1 ; 2 1.3 dx x 1 2 2 0.2 ( ) 1 tg x dx x 4 1.2 2 0.2 ; 1 dx x 1.4 0.6 cos 1 x dx x 5 1.4 2 0.8 ; 2 3 dx x 1,2 2 0.4 cos( ) x x dx 6 1.2 2 0.4 ; 2 0.5 dx x 1,2 2 0.8 sin(2 ) x dx x 7 2.1 2 1.4 ; 3 1 dx x 1,6 2 0.8 lg( 1) x dx x 8 2,4 2 1.2 ; 0.5 dx x 1,2 0.4 cos 2 x dx x 9 1,2 2 0.4 ; 3 dx x 1,2 0.4 (2 0.5) sin x xdx 10 1.5 2 0.6 ; 1 2 dx x 0.8 2 2 0.4 ( 0.5) 1 2 tg x dx x 11 3,5 2 2 ; 1 dx x 0,98 0.18 sin 1 x dx x 12 1,3 2 0.5 ; 2 dx x 1,8 2 0.2 1 cos( ) x x dx 13 1,8 2 0.8 ; 4 dx x 1,2 2 0.4 cos( ) 1 x dx x 14 2,2 2 1.6 ; 2, 5 dx x 1,6 2 0.8 ( 1) sin( 0.5) x x dx 15 1,6 2 0.6 ; 0.8 dx x 1,4 2 0.6 cos x xdx 16 2 2 1.2 ; 1.2 dx x 2 2 1.2 lg( 3) 2 x dx x 17 2 2 1.4 ; 2 0.7 dx x 3,3 2 2.5 lg( 0.8) 1 x dx x 18 4 2 3.2 ; 0.5 1 dx x 1.2 2 0.5 ( ) 1 tg x dx x 19 1.7 2 0.8 ; 2 0.3 dx x 2,1 2 1.3 sin( 1) 2 x dx x 20 2.0 2 1.2 ; 0.5 1.5 dx x 1.0 2 0.2 ( 1) cos( ) x x dx 21 3.6 2 2.1 ; 3 dx x 1.2 2 0.8 sin( 0.4) 2 x dx x 22 2.5 2 1.3 ; 0.2 1 dx x 0,63 0.15 1 lg( 3) x x dx 23 1.4 2 0.6 ; 12 0.5 dx x 2,8 2 1.2 lg(1 ) 2 1 x dx x 24 2.1 2 1.3 ; 3 0.4 dx x 0,72 0.6 ( 1) 2 x tg xdx 25 2.6 2 1.4 ; 1.5 0.7 dx x 1.2 2 0.8 cos 1 x dx x 26 0.5 2 0.15 ; 2 1.6 dx x 2,8 1.2 1 sin 2 2 x x dx 27 0.5 2 2.3 ; 4 dx x 1.6 2 0.8 lg( 1) 1 x dx x 28 0.66 2 0.32 ; 2.3 dx x 3,2 2 1.6 lg 2 2 x x dx Лабораторная работа №3 Метод Симплекс. 1.ЧД М ни симплекс усулда ечиш 𝐹 = 2𝑥 1 + 3𝑥 2 → 𝑚𝑎𝑥 { 𝑥 1 +2𝑥 2 ≤ 1 2𝑥 1 +𝑥 2 ≤ 1 𝑥 𝑗 ≥ 0, 𝑗 = 1,2 2.ЧД М ни график усулда ечиш 𝐹 = 4𝑥 1 + 3𝑥 2 → 𝑚𝑖𝑛 { 3𝑥 1 −𝑥 2 ≥ 7 𝑥 1 −𝑥 2 ≥ 2 5𝑥 1 −𝑥 2 ≥ 10 𝑥 1 ≥ 3 𝑥 𝑗 ≥ 0, 𝑗 = 1,2 1-вариант 1. ЧД М ни симплекс усулда ечиш 𝐹 = 𝑥 1 +2𝑥 2 → 𝑚𝑎𝑥 { 2𝑥 1 +3𝑥 2 ≤ 24 𝑥 1 +3𝑥 2 ≤ 15 𝑥 1 ≤ 4 𝑥 𝑗 ≥ 0, 𝑗 = 1,2 2.ЧД М ни график усулда ечиш 𝐹 = 2𝑥 1 +3𝑥 2 → 𝑚𝑎𝑥 { 2𝑥 1 +𝑥 2 ≤ 10 −2𝑥 1 +3𝑥 2 ≤ 6 2𝑥 1 + 4𝑥 2 ≥ 8 𝑥 𝑗 ≥ 0, 𝑗 = 1,2, 2-вариант 1.ЧД М ни симплекс усулда ечиш 𝐹 = −2𝑥 1 −3𝑥 2 −2𝑥 3 +𝑥 4 → 𝑚𝑖𝑛 { 2𝑥 1 +2𝑥 2 −3𝑥 3 +𝑥 4 ≤ 6 3𝑥 1 −3𝑥 2 +6𝑥 3 ≤ 15 𝑥 2 −𝑥 3 +𝑥 4 ≤ 2 𝑥 𝑗 ≥ 0, 𝑗 = 1,2,3,4 2.ЧД М ни график усулда ечиш 𝐹 = 𝑥 1 +𝑥 2 → 𝑚𝑎𝑥 { 𝑥 1 +2𝑥 2 ≤ 14 −5𝑥 1 +3𝑥 2 ≤ 15 2𝑥 1 + 3𝑥 2 ≥ 12 𝑥 𝑗 ≥ 0, 𝑗 = 1,2, |