Laman

Terimakasih telah mengunjungi blog saya :D

Jumat, 23 November 2012

Simulasi Fisika dengan Matlab

        

   Mengkonversi Suhu
disp(' ')
disp('Silahkan anda masukkan nilai suhu')
t=input('Suhu = ');
disp(' ')
disp('Silahkan anda masukkan kode derajat satuan suhu')
disp('0=Kelvin, 1=Celcius, 2=Reamur, 3=Fahrenheit')
disp(' ')
d=input('Derajat = ');
disp(' ')
disp('---------------------------------------------')
disp('               HASIL KONVERSI SUHU           ')
disp('---------------------------------------------')
disp(' ')
if d==0
   kc=t-273;
   kf=(9/5)*(t-273)+32;
   kr=(4/5)*(t-273);
   disp(['Celcius = num2str(kc)])
      disp(['Fahrenheit = num2str(kf)])
      disp(['Reamur = ' num2str(kr)])
else if d==1
      ck=t+273;
      cf=(9/5)*t+32;
      cr=(4/5)*t;
      disp(['Kelvin = ' num2str(ck)])
      disp(['Fahrenheit = ' num2str(cf)])
      disp(['Reamur = ' num2str(cr)])
   else if d==2
         rk=(5/4)*t+273;
         rf=(9/4)*t+32;
         rc=(5/4)*t;
         disp(['Kelvin = ' num2str(rk)])
      disp(['Fahrenheit = ' num2str(rf)])
      disp(['Celcius = ' num2str(rc)])
      else if d==3
            fk=(5/9)*(t-32)+273;
            fr=(4/9)*(t-32);
            fc=(5/9)*(t-32);
            disp(['Kelvin = ' num2str(fk)])
      disp(['Reamur = ' num2str(fr)])
      disp(['Celcius = ' num2str(fc)])
         end
      end
   end
end
disp(' ')
disp('----------------------------------------------')
disp('                  TERIMA KASIH                ')
disp('----------------------------------------------') 



 Metode Guss Jordan
%program metode Gauss-Jordan
disp (' ')
disp ('SOLUSI PERSAMAAN LINEAR DENGAN GAUSS-JORDAN')
disp (' ')
disp ('Siapkan ruang untuk matriks A')
m=input ('Masukkan jumlah baris=');
n=input ('Masukkan jumlah kolom=');
A=zeros(m,n);
disp(' ')
disp('MENG-INPUT ELEMEN MATRIKS A')
disp(' ')
for i=1:m
    for j=i:n
        disp ( ['A' num2str(i) ','num2str(j)'])
        A(i,j)=input('           = ');
    end
end
disp('Matriks A')
disp(' ')
disp('A=')
disp(A)
b=zeros(m,1);
disp(' ')
disp('MENG-INPUT MATRIKS b')
disp(' ')
for i=l:m
    disp ( ['b' num2str(i) ',1'])
    b(i,1)=input(' =');
end
disp('Matriks b')
disp('b=')
disp(b)
disp(' ')
disp('FAKTOR ELIMINASI GAUSS-JORDAN')
disp(' ')
pause
[L,U]=lu(A) %faktor eliminasi Gauss-Jordan
disp(' ')
disp('SOLUSI AKHIR PERSAMAAN LINEAR')
disp(' ')
pause
X=zeros(m,1);
%mengisi matriks X (solusi) dengan metode eliminasi gauss
y=L/b;
x=U/y;
X=x;
disp('')
disp('X=')
disp (X)

   Menghitung Nilai Eigen

%Program Menghiitung Nilai dan Vektor Eigen
disp(' ')
disp('++ PERSOALAN NILAI DAN VEKTOR EIGEN ++')
disp(' ')
disp('Siapkan ruang untuk matriks A')
m=input ('Masukkan jumlah baris= ');
n = input disp('Masukkan jumlah kolom= ');
A= zeros (m,n);
disp(' ')
disp(' ++ Input Elemen Matrik M ++')
disp(' ')
for i=1:m
    for j=1:n
        disp(['A' num2str(i) ',' num2str(j)'])
        A(i,j)= input('               =  ')
    end
end
disp(' ')
disp('Matris A')
disp(' ')
disp(' A=')
disp(A)
disp(' ')
disp('++ Nilai Eigen ++')
disp(' ')
Lambda=eig(A)'
disp(' ')
disp('++ Nilai Eigen++')
disp(' ')
Omeg=sqrt(ones(1,n)./lambda)

                 Menghitung invers sinus

%Perhitungan invers sinus
x=sqrt(2/2)
y=asin(x)
y_derajat=y*180/pi

 Menghitung Gerak Harmonik

% Program Gerak harmonik
phi=0;%fasa
omega=pi%sudut fasa
A=1;%Amplitudo
t=0:0.01:2;%waktu
y1=A*cos(omega.*t+phi);
y2=-omega*A*sin(omega.*t+phi);
y3=(omega)^2*A*sin(omega.*t+phi);
plot(t,y,'r-',t,y2,'b:',t,y3,'m--')
title('Karakteristik Gerak Harmonis','fontsize',16,'fontname','Arial')
xlabel('t (waktu)','fontsize',14,'fontname','Arial');
ylabel('x, v, a','fontsize',14,'fontname','Arial')
grid
legend('simpangan (x)','kecepatan (v)','percepatan (a)')

Menghitung Konsentrasi asam

%Perhitungan konsentrasi asam
K_max=90
K_min=50
L_ac=1:10
n=floor(log(K_max/K_min)./log(1+L_ac/100))
stem(L_ac,n)
title('Pencelupan Bak Air-Asam')
xlabel('Persentase yang hilang setiap kali pencelupan')
ylabel('Jumlah pencelupan')

Tidak ada komentar: