advertisement

Lab 15 – Integration and Area Date: December 6, 2011 Assignment Due Date: December 9, 2011 Goal: In today’s lab we will explore finding approximate areas in R using Riemann sums. We will see what happens as we make the rectangles smaller and smaller in order to approach exact definite integrals which we will compute by hand. Riemann Sums Integrals can be thought of as taking the area under a curve. We can approximate integrals using Riemann Sums which involves calculating the area with a finite number of boxes. The figure below shows a right-hand Riemann sum for the function from x = 0 to x = 2 with 10 boxes. The width of each of these boxes is .2 or . Therefore, the width of each box can be determined by . The area of each box is simply the width of the box multiplied by the height of the box which is the function value at the right side of each box for the right-hand Riemann sum. When we add up the area of all the boxes we get an approximate area under the curve which approximates the integral . Using R to compute Riemann sums Below is an outline for a script in R to calculate a right-hand Riemann sum as explained before. Fill in the blanks in order to write a script that produces figures like the one seen above and also computes the approximate area. #Define your function f= #Define N as number of boxes to use to compute the Riemann sum N= #Define the lower limit lower = #Define the upper limit upper = #Define the width of each box width = #Define a vector in order to plot going from the lower limit to the upper limit x= #plot the function f(x) as a green line plot() #add a line to your plot on the x-axis lines() #Initialize area so we can add to it in the for loop. area = #begin for loop with the index going from 1 to N for each box for (){ #define the left x value of the current box left = #define the right x value of the current box right = #define the height of the current box using the function value at the right side height = #add the area of the current box to the total area area = #add lines to your plot to represent the current box on your figure lines(c(left,left,right,right),c(0,height,height,0),col="purple") } #Print the area to the console print(area) #This code allows you to print the approximate area to the title of your figure. text = paste("Approximate Area =", as.character(area)) title(main = text) How would you change this code to calculate the left-hand Riemann sum? Using your script Test your code for the function 5.08. from 0 to 2 with 10 boxes. You should get an answer of Integrate the function by hand and see what the actual integral is. See what happens as you increase the number of boxes you use to calculate the Riemann sum. Compare these results with the answer you computed by hand. Use your code to approximate the integral of from 0 to 10. Compare this to the integral which you compute by hand. Again see what happens as you increase the number of boxes. What happens if the curve is below the x-axis? To explore this look at the same function from -10 to 10 and also calculate this definite integral by hand.