Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Solving for area under graph in matlab

  1. Feb 20, 2012 #1
    how could i use matlab to find area under graph using numerical methods that the integral of flow vs time graph is 1/T*sum(Qti)dt or at least i think thats what the formula is, if not please help
  2. jcsd
  3. Feb 20, 2012 #2


    User Avatar
    Science Advisor

    Hey kthejohnster and welcome to the forums.

    For this problem (even in MATLAB) you just a standard numerical integration routine if you have an array of values (in any dimension).

    Are you familiar with numerical integration schemes? Here is something to get you started:

  4. Feb 20, 2012 #3
    Thanks, I know that the integral is equal to the sum of value * dt for the time but dont know how to write it in matlab. I have my plot x_plot and its a periodic function with period T how would I calculate the area under 1 period?
  5. Feb 20, 2012 #4


    User Avatar
    Science Advisor

    Well the idea is that if you have the values for a function at regular intervals you use a numerical technique to get an approximation of the area under the curve of the function (which is just the integral using the right limits).

    The easiest way to get an approximation is to use the midpoint method which goes something like this:

    Lets say you have two function values f(a) and f(a+h), then the approximated area for f(a) to f(a+h) is h x [f(a+h)+f(a)]/2. Using this formula you apply it to all your data points and you get an approximation for the integral.

    This is not the best method to use, but its a good way to demonstrate what I am referring to in terms of numerical integration.

    If you want some kind of numeric answer I strongly suggest you look at the wikipedia page and then look at the various schemes that are available.
  6. Feb 21, 2012 #5


    User Avatar
    Gold Member

    Can you use MATLAB built-ins like trapz or quad?
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook