PDA

View Full Version : Organizing output in MATLAB


Providence88
Sep30-09, 05:44 PM
So I have this code:


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.

trambolin
Oct1-09, 05:24 AM
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

Providence88
Oct1-09, 01:18 PM
Thank you! That worked great!