1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!


  1. Sep 17, 2004 #1
    Approximate the integral on f(x)=exp(-x) on the interval x=[1,5]. Choose N=10, 100, 1000.

    Okay here is what I did:
    % a,b limits of integration

    % x variable of integration

    % f integrand

    % N is the number of sub-intervals

    % h width of each sub-interval

    % TL, TR contribution from left and right endpoints

    %TI contribution from the intermediate points

    a= 1;

    b= 5;

    N = 10;






    for n=2:N

    f = exp(-n) * x;



    I =

    Columns 1 through 5

    0.1606 0.1948 0.2291 0.2633 0.2976

    Columns 6 through 10

    0.3318 0.3661 0.4003 0.4346 0.4688

    Column 11


    Aren't I suppose to get only one answer? Why am I getting all this?
  2. jcsd
  3. Sep 21, 2004 #2
    My experience with MATLAB is very limited but by the looks of it you have defined x as a row matrix, meaning that f will also be a row matrix and so will TI since your answer is a function of TI yo uare bound to end up with a row matrix. I haven't really looked at the maths involved, what method for integrating did you use ?
  4. Sep 21, 2004 #3


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    The problem arises here:
    f = exp(-n) * x;

    You're multiplying exp(-n) which is a scalar times x which is a vector.

    To fix this you want to access the individual cell of the x vector.

    Try replacing f = exp(-n) * x; with f = exp(-n) * x(n);
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?

Similar Discussions: MATLAB Help
  1. MATLAB help (Replies: 9)

  2. MATLAB help (Replies: 2)

  3. MATLAB help (Replies: 0)

  4. MATLAB help (Replies: 7)

  5. Matlab help (Replies: 6)