Starting from:
$30

$24

Homework 5 Solution




Please submit to CANVAS a .zip le that includes the following Matlab functions:




int midpoint rule.m







int trapezoidal rule.m







int Simpson rule.m







test integration.m







Exercise 1 Consider the following integral of a function f(x) on a nite interval [a; b]




b



I(f) = f(x)dx: (1)




a




Write three Matlab/Octave functions implementing, respectively, the composite midpoint rule, the composite trapezoidal rule, and the composite Simpson rule to compute the numerical approxima-tion of I(f). Such functions should be of the form




function [I]=int


midpoint


rule(fun,a,b,n)
(composite midpoint rule)
function
[I]=int


trapezoidal


rule(fun,a,b,n)
(composite trapezoidal rule)
function
[I]=int


Simpson


rule(fun,a,b,n)
(composite Simpson rule)







Input:




fun: function handle representing f(x)




a,b: endpoints of the integration interval




n: number of evenly-spaced points in [a; b] (including endpoints)




xj = a + (j 1)h;
h =
b
a
;
j = 1; :::n:




n
1
Output:










I: numerical approximation of the integral (1).
















Exercise 2 Use the functions you coded in Exercise 1 to compute the numerical approximation of the integral



1


1


3




2
x3




I = Z






cos


e
x






dx:
(2)
3
1 + x2
2


30
To this end, write a Matlab/Octave function







1









[em,et,es] = function test integration()







that returns the following items:




en, et, es: row vectors with components the absolute values of the integration errors




jIref Inj n = 2; 3; :::; 10000 (3)




obtained with the midpont (vector en), trapezoidal (vector et) and Simpson (vector es) rules. Here,

Iref = 1:6851344770476




is the reference value of the integral (2) while In is the numerical approximation obtained by using the composite midpoint, trapezoidal, and Simpson rules with n nodes.




The function test integration() should also return the plot of the integrand function ap-pearing in (2) in figure(1), and the plots of the errors en, et and es versus n in a log-log scale in figure(2) (one gure with three plots). (Hint: use the Matlab command loglog()).

































































































2

More products