SELAMAT DATANG

Tampilkan postingan dengan label matlab. Tampilkan semua postingan
Tampilkan postingan dengan label matlab. Tampilkan semua postingan

23 06 matlab

function yr=linier(xr)
x=[1 2 3 4 5 6 7 ];
y=[0.5 2.5 2.0 4.0 3.5 6.0 5.5];
n= length (x);
sg_xy=0;
sg_x=0;
sg_y=0;
sg_x2=0;
for i=1:n
    sg_xy=sg_xy+x(i)*y(i);
    sg_x=sg_x+x(i);
    sg_y=sg_y+y(i);
    sg_x2=sg_x2+x(i)^2;
end
m=(n*sg_xy-(sg_x*sg_y))/(n*sg_x2-sg_x^2);
c=(sg_y/n)-(m*sg_x)/n;
fprintf('y=%7.4f x + %7.4f \n',m,c);
yr=m*xr+c;
fprintf('xr=%7.4f \n',xr)
fprintf('yr=%7.4f \n',yr)
hold on
plot(x,y,'o')
xg=linspace(0,8);
yg=m*xg+c;
plot(xg,yg)



function yr=xplinier(xr)
x=[1 2 3 4 5 ];
y=[0.5 1.7 3.4 5.7 8.4];
n= length (x);
sg_xy=0;
sg_x=0;
sg_y=0;
sg_x2=0;
for i=1:n
    sg_xy=sg_xy+x(i)*log(y(i));
    sg_x=sg_x+x(i);
    sg_y=sg_y+log(y(i));
    sg_x2=sg_x2+x(i)^2;
end
m=(n*sg_xy-(sg_x*sg_y))/(n*sg_x2-sg_x^2);
c=(sg_y/n)-(m*sg_x)/n;
fprintf('y=e^ %7.4f x + %7.4f \n',m,c);
yr=exp(m*xr+c);
fprintf('xr=%7.4f \n',xr)
fprintf('yr=%7.4f \n',yr)
hold on
plot(x,y,'o')
xg=linspace(0,5.5);
yg=exp(m*xg+c);
plot(xg,yg)

PK 17 06 2011 (matlab)

RungeKutta tingkat tinggi..

function pd2=frungekutta(sf,sg,x0,y0,z0,h)


f=inline(sf);

g=inline(sg);

n=11;

x(1)=x0;

y(1)=y0;

z(1)=z0;

for i=1:n

fprintf('%3g !%8.5f !%8.5f !%8.5f\n',i-1,x(i),y(i),z(i))

k1=h*f(z(i));

l1=h*g(x(i),y(i),z(i));

k2=h*f(z(i)+l1);

l2=h*g((x(i)+h),(y(i)+k1),(z(i)+l1));

y(i+1)=y(i)+(k1+k2)/2;

z(i+1)=z(i)+(l1+l2)/2;

x(i+1)=x(i)+h;

end

pd2=z(n);
 
 
 
 
Euler PD2
 
function pd2=feuler(sf,sg,x0,y0,z0,h)


f=inline(sf);

g=inline(sg);

n=11;

x(1)=x0;

y(1)=y0;

z(1)=z0;

for i=1:n

fprintf('%3g %8.5f %8.5f %8.5f\n',i-1,x(i),y(i),z(i))

y(i+1)=y(i)+h*f(z(i));

z(i+1)=z(i)+h*g(x(i),y(i),z(i));

x(i+1)=x(i)+h;

end

pd2=z(n);

matlab 16 06

 
 EULER
function pd = feuler(string_f, a, b, y0,n)
f=inline (string_f)
x(1)=a;
y(1)=y0;
h=(b-a)/n;
for i=1:n+1;
fprintf('%2g %7.4f %7.4f\n', i-1, x(i), y(i))
y(i+1)=y(i)+h*f(x(i), y(i));
x(i+1)=x(i)+h;
end
pd = y(n+1);
  
 
rungekutta
function pd = frungekutta(string_f, a, b, y0,n)
f=inline (string_f)
x(1)=a;
y(1)=y0;
h=(b-a)/n;
for i=1:n+1;
fprintf('%2g %7.4f %7.4f\n', i-1, x(i), y(i))
k1=f(x(i),y(i));
k2=f(x(i)+(1/2)*h, y(i)*(1/2)*h);
k3=f(x(i)+h, y(i)-k1*h+2*h*k2);
y(i+1)=y(i)+(1/6)*h*(k1+4*k2+k3);
x(i+1)=x(i)+h;
end
pd = y(n+1);
 
 RALSTON
function pd = fralston(string_f, a, b, y0,n)
f=inline (string_f)
x(1)=a;
y(1)=y0;
h=(b-a)/n;
for i=1:n+1;
fprintf('%2g %7.4f %7.4f\n', i-1, x(i), y(i))
k1=f(x(i),y(i));
k2=f(x(i)+h*(3/4), y(i)+k1*h*(3/4));
y(i+1)=y(i)+h*(k1+2*k2)/3;
x(i+1)=x(i)+h;
end
pd = y(n+1);
 
 panggil dengan "x^2*y" 0, 1, 1, 20.

INTERPOLASI polynomial

clc
clear all
x1=3.2; y1=22;
x2=2.7; y2=17.8;
x3=1;   y3=14.2;
x4=4.8; y4=38.3;
x5=5.6; y5=51.7;
X=[x1^0 x1^1 x1^2 x1^3 x1^4;x2^0 x2^1 x2^2 x2^3 x2^4;x3^0 x3^1 x3^2 x3^3 x3^4;x4^0 x4^1 x4^2 x4^3 x4^4;x5^0 x5^1 x5^2 x5^3 x5^4];
Y=[y1;y2;y3;y4;y5];
A=X\Y;
fprintf('Y = %5.2fx^0 + %5.2fx^1 + %5.2fx^2 + %5.2fx^3 + %5.2fx^4 \n',A(1),A(2),A(3),A(4),A(5))
disp('================')
disp(' i     x      y ')
disp('================')
x=3;
for i=1:20
    y=A(1)*x^0+A(2)*x^1+A(3)*x^2+A(4)*x^3+A(5)*x^4;
    fprintf('%3g %5.2f %5.2f \n',i,x,y)
    x=x+1;
end

INTERPOLASI LINIER

clc
clear all
x=5;
x1=2.1;
x2=4.5;
y1=3;
y2=5.5;
disp('================')
disp(' i     x      y ')
disp('================')
for i=1:20
    y=y1+((x-x1)*(y2-y1)/(x2-x1));
    fprintf('%3g %5.2f  %5.2f \n',i,x,y)
    x=x+1;
end

Rapshon dan Rapshon Termodifikasi

mcontoh penjabaran Algoritma

untuk f(x) = x^3 - 3x^2 - x + 9
dan x0= - 1
 => Rapshon
clc
clear all
err=0.00001;
x( 1)=-1;
i=1;
f=x(i)^3-3*x(i)^2-x(i)+9;
f1=3*x(i)^2-6*x(i)-1;
x(i+1)=x(i)-f/f1;
while abs(x(i)-x(i+1))>err
    i=i+1;
    f=x(i)^3-3*x(i)^2-x(i)+9;
    f1=3*x(i)^2-6*x(i)-1;
    x(i+1)=x(i)-f/f1;
    disp(sprintf('%3g %8.5f %8.5f',i,x(i),f))
end
disp(sprintf('hasil akar = %8.5f',x(i)))
xg=linspace(-2,2);
yg=xg.^3-3*xg.^2-xg+9;
plot(xg,yg,'*m')
grid on

=>Rapshon Termodifikasi
clc
clear all
err=0.00001;
x( 1)=-1;
i=1;

Methode newton rapshon

%metode Newton Raphson
%persaman yang diketahui f(x) = exp(x) - 4x
clc
clear all
x0 = 0; tol = 0.00001;
fprintf('tol = %10.8f, x0 = %8.6f\n', tol, x0);
%f = exp(x) - 4*x;
%f1 = exp(x) - 4;Turunan dari f
[f, f1] = fs(x0); % memanggil function fs.m
fprintf('f(x0) = %10.8f, f1(x0)= %10.8f,   ',f,f1);
i=1;x = x0 - f/f1;
fprintf('maka x%g = %10.8f\n',i,x);
while abs((x - x0)/x) > tol
   x0 = x;
   [f, f1] = fs(x0); % memanggil function fs.m
   fprintf('%3g %10.8f %10.8f %10.8f\n',i,f,f1,x);
   i=i+1;
   x = x0 - f/f1;
   %fprintf('maka x%g = %10.8f\n',i,x);
end;
fprintf('|(x - x0)/x| = %10.8f <= tol = %10.8f\n', abs((x - x0)/x),tol);
fprintf('Akarnya = %8.6f, banyak iterasi = %g \n',x,i);

untuk fungsinya

function [f,f1]=fs(x)
f=exp(x)-4*x;
f1=exp(x)-4;
Flag Counter