1. PF Insights is off to a great start! Fresh and interesting articles on all things science and math. Here: PF Insights

Organizing output in MATLAB

  1. So I have this code:

    Code (Text):

    function ApproxSinDeriv(x,n)
    h=.5;
    for i = 0:n
        h;
        approx = (1/(2*h))*(sin(x+h)-sin(x-h));
        error = abs(approx-cos(x));
        h = h/2;
        A=[i,h,approx,error]
    end
     
    Basically, it's a three-point formula for approximating a derivative, where the variables n = the number of iterations, x = the input value for the sin function, i = iteration number, approx=the approximation of the derivative, and error = the difference between the actual derivative and the approximation.

    I put A equal to a matrix of these values, but the output comes out in 30 clunky, individual, one-row matrices.

    How would I go about putting this data in an array? That is, one nice clean matrix with 30 rows and 4 columns [i,h,approx,error]?

    Thanks!

    -Eric.
     
    Last edited: Sep 30, 2009
  2. jcsd
  3. Code (Text):

    function [A] = ApproxSinDeriv(x,n)
    A = zeros(n+1,4)
    h=.5;
    for i = 0:n
        approx = (1/(2*h))*(sin(x+h)-sin(x-h));
        error = abs(approx-cos(x));
        h = h/2;
        A(i+1,:)=[i,h,approx,error];
    end
     
     
  4. Thank you! That worked great!
     
Know someone interested in this topic? Share a link to this question via email, Google+, Twitter, or Facebook

Have something to add?