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!

Integration using matlab

  1. Mar 25, 2008 #1
    Hi everyone, I have a problem in finding an integral of a function. I'm given the following function: x(t) = t + 1 (-1 <= t < o ); e^-t (0<= t <= 2); 0 (otherwise).I have to find the integral and plot it with its derivative and the given function.

    Here is my code:
    %Set up integral vector
    u(1:1000) = 0;
    %Find the integral
    for n = 1:999;
    if( (t(n)>= -1) & (t(n)<0) );
    u(n) = 0.5.*(t.^2) + t;
    end
    if ( (t(n)>=0) & (t(n)<2) );
    u(n) = -1.*(exp(-t));
    end
    if( (t(n)>2 ) )
    u(n) = 1.*t;
    end
    end
    subplot(3,1,3);
    plot(t,u);

    I get the following error when trying to run the code:
    ??? In an assignment A(I) = B, the number of elements in B and
    I must be the same.

    Error in ==> tut1 at 32
    u(n) = 0.5.*(t.^2) + t;
     
  2. jcsd
  3. Mar 26, 2008 #2
    In these three lines
    Code (Text):

         u(n) = 0.5.*(t.^2) + t;
          u(n) = -1.*(exp(-t));
          u(n) = 1.*t;
     
    you are trying to store a vector in a scalar's place. u(n) is a scalar and t is a vector, so change t to t(n) and you will be fine. Also, be sure to define t properly (don't see it in your code), e.g. t = linspace(-1,2,1000).
     
  4. Apr 6, 2011 #3
    i have 1 question
    how do i apply 1/s in simulink block to M-code,
    for example
    Xdot to X
    in simulink, we just apply the 1/s(integration block).
    so i just want to know, is it possible to integrate the Xdot to X in m code??
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?