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

Organizing output in MATLAB

  1. Sep 30, 2009 #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. Oct 1, 2009 #2
    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. Oct 1, 2009 #3
    Thank you! That worked great!
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Similar Discussions: Organizing output in MATLAB
Loading...