ANALISIS OSILATOR HARMONIK TERENDAM METODE 1/2 INTERVAL



%Program menghitung MENGHITUNG MENGHITUNG Y(t) SETIAP PERUBAHAN T
%METODE 1/2 Interval
%By: fE
disp('   ')
disp('   ')
disp('         ==============================================')
disp('         ==   MENGHITUNG Y(t) SETIAP PERUBAHAN T           ===')
disp('         ==============================================')
disp('   ')
disp('        kostanta                ');
disp('                      m=1.2e3')
disp('                      k=1.25e6')
disp('                      b=1.4e2')
disp('                      g=9.8')
m=1.2e3;
k=1.25e6;
b=1.4e2;
g=9.8;
yo=input('              pertambahan panjang mula mula pegas       =');
t1=input('              Masukkan akar waktu (t1) pertama          =');
t2=input('              Masukkan akar waktu (t2) kedua            =') ;
Fo=input('              gaya mula mula                            =');
M=input('              Masukkan jumlah iterasi                   =');
wo=sqrt(k/m);
w=sqrt((wo)^2-(b^2)/(2*((m)^2)));
f1=(yo*cos(wo*t1))+(yo*sin(wo*t1))+((Fo/(wo^2-w^2))*(cos(w*t1)))+((m*g)/(wo^2));
f2=(yo*cos(wo*t2))+(yo*sin(wo*t2))+((Fo/(wo^2-w^2))*(cos(w*t2)))+((m*g)/(wo^2));
t=(t1+t2)/2; ft1=(yo*cos(wo*t))+(yo*sin(wo*t))+((Fo/(wo^2-w^2))*(cos(w*t)))+((m*g)/(wo^2));
X1=zeros(M,1); %tempat penyimpanan data x1
X2=X1; %tempat menyimpan data x2
T=X1; %tempat menyimpan data t
FX1=X1; FX2=X1;FT=X1;
X1(1)=t1;X2(1)=t2;T(1)=t;
FX1(1)=f1;
FX2(1)=f2;
FT(1)=ft1;
for m=2:M;
    if FT(m-1)<0;
        X1(m)=T(m-1);
        X2(m)=X2(m-1);
    else
        X1(m)=X1(m-1);
        X2(m)=T(m-1);
    end
    FX1(m)=yo*cos(wo*X1(m))+(yo*sin(wo*X1(m)))+((Fo/(wo^2-w^2))*(cos(w*X1(m))))+((m*g)/(wo^2));
    FX2(m)=(yo*cos(wo*X2(m)))+(yo*sin(wo*X2(m)))+((Fo/(wo^2-w^2))*(cos(w*X2(m))))+((m*g)/(wo^2));
    T(m)=(X1(m)+X2(m))/2;
    FT(m)=(yo*cos(wo*T(m)))+(yo*sin(wo*T(m)))+((Fo/(wo^2-w^2))*(cos(w*T(m))))+((m*g)/(wo^2));
end
It=(1:M)';
disp('  ')
disp(' ')
disp(' ')
disp(' ')
disp('                     AKAR-AKAR PERSAMAAN Y......')
disp('-------------------------------------------------------------------')
disp('Iterasi ke-     t1      t2(t1+1) t=(t1+2)/2  Y(t1)     Y(t2)    Y(t)  ')
disp('-------------------------------------------------------------------')
disp([It              X1        X2              T               FX1      FX2        FT])
disp(' ')
disp(' ')
disp( '         Apakah anda ingin menampilkan gkafiknya?')
disp('                  oke')
disp('          tekan enter')
pause
plot(T,FT,'r-')

Komentar