# Organizing output in MATLAB

1. ### Providence88

7
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. ### trambolin

341
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

3. ### Providence88

7
Thank you! That worked great!