Re: ~ Pretenders Vs. Contenders Pinwheel Round 48 ~
super busy
with annoying shizzle like matlab -_-...eg (what im doing at this very second)
% x^2*sin(x)
clear all
m=input('Enter the arbitary constant, m: ');
N=input('Enter the number of iterations, N: ');
fun=input('Enter your fucntion, f(x)= ','s');
fprintf('\n');
f=inline(fun,'x');
z(1)=m*((2*(-1)/(N-1))-1);
x(1)=asin(z(1));
for j=2:(N+2)
a=j-1;
%a=j;
z(j) = m*((2*(a-1)/(N-1))-1);
x(j) = asin(z(j));
end
delz=z(j)-z(j-1);
for j=2:(N+1)
%z(j) = m*((2*(j-1)/(N-1))-1);
%x(j) = asin(z(j));
%f1(j)=f(x(j+1));
%f2(j)=f(x(j-1));
%f3(j)=f(x(j+2));
%f4(j)=f(x(j));
%f5(j)=f(x(j-2));
gdot(j)=cos(x(j));
if (j>2) || (j<(N+1))
f2(j)=f(x(j-1));
f1(j)=f(x(j+1));
dfdz(j) = (f1(j)-f2(j))/(2*delz);
dfdx(j)=(gdot(j))*(dfdz(j));
end
if j == 2
f1(j)=f(x(j+1));
f3(j)=f(x(j+2));
f4(j)=f(x(j));
dfdz(j)=(4*f1(j)-f3(j)-3*f4(j))/(2*delz);
dfdx(j)=(gdot(j))*(dfdz(j));
end
if j == (N+1)
f1(j)=real(f(x(j-1)));
f5(j)=f(x(j-2));
f4(j)=f(x(j));
dfdz(j)=(f5(j)-4*f1(j)+3*f4(j))/(2*delz);
dfdx(j)=(gdot(j))*(dfdz(j));
end
end
for i=1:N
y(i)=x(i+1);
df(i)=dfdx(i+1);
end
plot(y,df);
table(:,1)=1:N;
table(:,2)=y;
table(:,3)=df;
fprintf('\tj\t\t x(j)\t\t df/dx\t\t \n');
for i=1:N %shows the values of the column one row at a time
fprintf('%6.2f\t\t %6.2f\t\t %6.2f\t\n',table(i,1),table(i,2),table(i,3));
end;