Advertisement
Guest User

integrate_e^(2x)

a guest
Mar 26th, 2019
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 0.77 KB | None | 0 0
  1. function [ trap, simp ] = integrate_e(N)
  2.  
  3.     a= -1;
  4.     b= 5;
  5.     x= a:((b-a)/N):b;
  6.     f= exp(2 * x);
  7.    
  8.     Iexact = 11013.16522976174;
  9.     trap = 0;
  10.     simp = 0;
  11.    
  12.     for k=1:N  %Note that the vector f has (N+1) elements
  13.         trap = trap+((b-a)/N)*(f(k)+f(k+1))/2;
  14.     end
  15.  
  16.     for k=1:(N/2)
  17.         simp = simp + ((b-a)/N)/3*(f(2*k-1)+4*f(2*k)+ f(2*k+1));
  18.     end
  19.  
  20.     fprintf('            Exact integral = %f.\n', Iexact)
  21.     fprintf(' Trapezoidal approximation = %f.\n', trap);
  22.     fprintf('     Simpson approximation = %f.\n', simp);fprintf('\n')
  23.    
  24.     trap_error = abs(trap-Iexact);
  25.     simp_error = abs(simp-Iexact);
  26.    
  27.     fprintf(' Trapezoidal error = %f.\n', trap_error);
  28.     fprintf('     Simpson error = %f.\n', simp_error);
  29.  
  30. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement