• Tidak ada hasil yang ditemukan

LAMPIRAN A. Code Program. A1. Source Code Program. A2. Fungsi Tuncnormrnd. Universitas Sumatera Utara

N/A
N/A
Protected

Academic year: 2021

Membagikan "LAMPIRAN A. Code Program. A1. Source Code Program. A2. Fungsi Tuncnormrnd. Universitas Sumatera Utara"

Copied!
17
0
0

Teks penuh

(1)

Code Program

A1. Source Code Program

(2)

A.1 Source Code Program

tic; clear all; clc; close all; s = 1;% Jumlah simulasi N = 2000; % jlh titik sampel %koordinat BTS

D = 1000*sqrt(3); % jarak antara BTS berdekatan adalah.2000 meter

X_BTS = [2000-D*sin(60*pi/180) 2000 2000]; Y_BTS = [1+D/2 1 1+D]; ds = 1; % meter % Jarak Interval Sample 1 meter

theta = 20; % sudut arah pergerakan MS dari BTS1 % Koordinat awal MS

xk =[500*ones(s,1) zeros(s,N-1)];%sb-x

yk = [500*ones(s,1) zeros(s,N-1)];%sb-y

%Jarak awal MS terhadap BTS (2000,0)

d1k=[sqrt((X_BTS(1)-500)^2+(Y_BTS(1)-500)^2)*ones(s,1) zeros(s,N-1)]; d2k=[sqrt((X_BTS(2)-500)^2+(Y_BTS(2)-500)^2)*ones(s,1) zeros(s,N-1)]; d3k=[sqrt((X_BTS(3)-500)^2+(Y_BTS(3)-500)^2)*ones(s,1) zeros(s,N-1)]; for j = 1:s for k = 2:N xk(j,k) = xk(j,k-1)+ds*cos(theta*pi/180); yk(j,k) = yk(j,k-1)+ds*sin(theta*pi/180); d1k(j,k)=sqrt((X_BTS(1)-xk(j,k)).^2+(Y_BTS(1)-yk(j,k)).^2); d2k(j,k)=sqrt((X_BTS(2)-xk(j,k)).^2+(Y_BTS(2)-yk(j,k)).^2); d3k(j,k)=sqrt((X_BTS(3)-xk(j,k)).^2+(Y_BTS(3)-yk(j,k)).^2); end end

%% menentukan model shadowing--dist. lognormal

mu=0;%mean

tho=[3:12];%variansi

v= 20;%kecepatan MS (m/s)

ts= 0.5;%waktu sampling (s)

di=30;%korelasi jarak

ai=exp(-v*ts/di);%koefisien korelasi

K1=105; %dBm;% konstanta pathloss

K2=30; %dBm;% konstanta eksponen pathloss %truncated normal random

mu1=0;% mean

tho1=1;% variansi

xlo=-0.5;% batas bawah

xhi=0.5;% batas atas

% fungsi truncated normal random

[F1,F2,F3]=truncnormrnd(s,N,mu1,tho1,xlo,xhi);

(3)

ZBTS1=[ai*ones(s,1) zeros(s,N-1)]; ZBTS2=[ai*ones(s,1) zeros(s,N-1)]; ZBTS3=[ai*ones(s,1) zeros(s,N-1)];

% kuat sinyal terima pada posisi awal

S1(:,1)= K1-K2.*log10(d1k(:,1))+ ZBTS1(:,1); S2(:,1)= K1-K2.*log10(d2k(:,1))+ ZBTS2(:,1); S3(:,1)= K1-K2.*log10(d3k(:,1))+ ZBTS3(:,1);

% ruang matriks untuk kuat sinyal

S1=[S1(:,1).*ones(s,1) zeros(s,N-1)]; S2=[S2(:,1).*ones(s,1) zeros(s,N-1)]; S3=[S3(:,1).*ones(s,1) zeros(s,N-1)]; C=[0.0045,0.025,0.1,0.65]; for g=1:length(C) for var_tho=1:length(tho) for cc=1:s for dd=2:N ZBTS1(cc,dd)=ai*ZBTS1(cc,dd-1)+tho(var_tho)*sqrt(1-ai^2)*F1(cc,dd); ZBTS2(cc,dd)=ai*ZBTS2(cc,dd-1)+tho(var_tho)*sqrt(1-ai^2)*F2(cc,dd); ZBTS3(cc,dd)=ai*ZBTS3(cc,dd-1)+tho(var_tho)*sqrt(1-ai^2)*F3(cc,dd); end for ddd=2:N

% kuat sinyal terima

S1(cc,ddd)= K1-K2.*log10(d1k(cc,ddd))+ ZBTS1(cc,ddd); S2(cc,ddd)= K1-K2.*log10(d2k(cc,ddd))+ ZBTS2(cc,ddd); S3(cc,ddd)= K1-K2.*log10(d3k(cc,ddd))+ ZBTS3(cc,ddd); end S_123= [ S1; S2; S3]; end

%% Merata-ratakan kuat sinyal

ds = 1;%jarak setiap sampling (m)

dav = 10;% panjang rata-rata window

S1_rata=[S1(:,1) zeros(s,N-1)]; S2_rata=[S2(:,1) zeros(s,N-1)]; S3_rata=[S3(:,1) zeros(s,N-1)]; b=exp(-ds/dav); for e=1:s for f=2:N

%% merata-ratakan sinyal dengan metode eksponensial untuk memperhalus

%% komponen sinyal shadowing yang berfluktuasi

%%================================================================

%Sinyal 1

S1_rata(e,f)=exp(-(ds/dav)).*S1_rata(e,f-1)+(1-exp(-(ds/dav)))...

(4)

.*S1(e,f); %Sinyal 2 S2_rata(e,f)=exp(-(ds/dav)).*S2_rata(e,f-1)+(1-exp(-(ds/dav)))... .*S2(e,f); %Sinyal 3 S3_rata(e,f)=exp(-(ds/dav)).*S3_rata(e,f-1)+(1-exp(-(ds/dav)))... .*S3(e,f); %%================================================================ S123_rata = [S1_rata;S2_rata;S3_rata]; S11_rata_eks(e,f)=(K1-K2*log10(d1k(e,f)))+ai.*(S1(e,f-1)-(K1-K2*log10(d1k(e,f-1)))); S22_rata_eks(e,f)=(K1-K2*log10(d2k(e,f)))+ai.*(S2(e,f-1)-(K1-K2*log10(d2k(e,f-1)))); S33_rata_eks(e,f)=(K1-K2*log10(d3k(e,f)))+ai.*(S3(e,f-1)-(K1-K2*log10(d3k(e,f-1)))); %=================================================================

%ekspektasi==> mean dari Si & Si_rata

S1_rata_eks(e,f)=b.*S1_rata(e,f-1)+(1-b).*(ai.*S1(e,f-1)+... (1-ai)*K1-K2*log10(d1k(e,f)./(d1k(e,f-1).^ai))); S2_rata_eks(e,f)=b.*S2_rata(e,f-1)+(1-b).*(ai.*S2(e,f-1)+... (1-ai)*K1-K2*log10(d2k(e,f)./(d2k(e,f-1).^ai))); S3_rata_eks(e,f)=b.*S3_rata(e,f-1)+(1-b).*(ai.*S3(e,f-1)+... (1-ai)*K1-K2*log10(d3k(e,f)./(d3k(e,f-1).^ai))); end end %================================================================= %================================================================= %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%% Metode Suboptimal SDH %%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Smin = 0; %dBm; varians_kuadrat(var_tho)=tho(var_tho)*sqrt((1-(ai^2)).*(1-(b.^2)));% variansi sinyal rata-rata

for v=1:s for u=1:N-1 Z1(v,u)=qfunc((S1_rata_eks(v,u+1)-Smin)./(varians_kuadrat(var_tho))); Z2(v,u)=qfunc((S2_rata_eks(v,u+1)-Smin)./(varians_kuadrat(var_tho))); Z3(v,u)=qfunc((S3_rata_eks(v,u+1)-Smin)./(varians_kuadrat(var_tho))); end end % nilai cost (c)

(5)

% C=[1,0.95,0.85,0.75,0.65,0.55,0.45,0.35,0.25,0.13,0.1,0.06,0.04,0. 025,0.01,0.007,0.0045]; BTS= [1;2;3]; Z= [Z1(:,1) zeros(s,N-1)]; S_SDH=[S1(:,1) zeros(s,N-1)]; S_rata_SDH=[S1_rata(:,1) zeros(s,N-1)]; BTS_kontrol_SDH=[BTS(1)*ones(s,1) zeros(s,N-1)]; handoff = 1; % terjadi handoff

tidak_handoff = 0; % tidak terjadi handoff

Uk_SDH=zeros(s,N); delay_SDH=[];

S_mean_SDH= [S1_rata_eks(:,1) zeros(s,N-1)];

for h=1:s

for i=2:N %(titik sampel)

if i<=3 S_SDH(h,i)=S1(h,i); S_rata_SDH(h,i)=S1_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(1); Uk_SDH(h,i)=[tidak_handoff]; delay_SDH(h,i)=d1k(h,i); S_mean_SDH(h,i)= S11_rata_eks(h,i); else

%% keadaan sebelumnya BTS1 yang melayani MS

if BTS_kontrol_SDH(h,i-1)==BTS(1)

if S_rata_SDH(h,(i-3:i-1))<Smin & S1_rata(h,i)<Smin continue;

else

if Z1(h,i-1)>1)+C(g) && Z2(h,i-1)+C(g)<Z3(h,i-1)+C(g) S_SDH(h,i)=S2(h,i); S_rata_SDH(h,i)=S2_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(2); Uk_SDH(h,i)=[handoff]; delay_SDH(h,i)=d2k(h,i); S_mean_SDH(h,i)= S22_rata_eks(h,i); elseif Z1(h,i-1)>Z3(h,i-1)+C(g) && Z2(h,i-1)+C(g)>Z3(h,i-1)+C(g) S_SDH(h,i)=S3(h,i); S_rata_SDH(h,i)=S3_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(3); Uk_SDH(h,i)=[handoff]; delay_SDH(h,i)=d3k(h,i); S_mean_SDH(h,i)= S33_rata_eks(h,i); else S_SDH(h,i)=S1(h,i); S_rata_SDH(h,i)=S1_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(1); Uk_SDH(h,i)=[tidak_handoff];

(6)

delay_SDH(h,i)=d1k(h,i);

S_mean_SDH(h,i)= S11_rata_eks(h,i); end

end

%% keadaan sebelumnya BTS2 yang melayani MS

elseif BTS_kontrol_SDH(h,i-1)==BTS(2)

if S_rata_SDH(h,(i-3:i-1))<Smin & S2_rata(h,i)<Smin continue;

else

if Z2(h,i-1)>1)+C(g) && Z1(h,i-1)+C(g)<Z3(h,i-1)+C(g) S_SDH(h,i)=S1(h,i); S_rata_SDH(h,i)=S1_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(1); Uk_SDH(h,i)=[handoff]; delay_SDH(h,i)=d1k(h,i); S_mean_SDH(h,i)= S11_rata_eks(h,i); elseif Z2(h,i-1)>Z3(h,i-1)+C(g) && Z1(h,i-1)+C(g)>Z3(h,i-1)+C(g) S_SDH(h,i)=S3(h,i); S_rata_SDH(h,i)=S3_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(3); Uk_SDH(h,i)=[handoff]; delay_SDH(h,i)=d3k(h,i); S_mean_SDH(h,i)= S33_rata_eks(h,i); else S_SDH(h,i)=S2(h,i); S_rata_SDH(h,i)=S2_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(2); Uk_SDH(h,i)=[tidak_handoff]; delay_SDH(h,i)=d2k(h,i); S_mean_SDH(h,i)= S22_rata_eks(h,i); end end

%% keadaan sebelumnya BTS3 yang melayani MS

elseif BTS_kontrol_SDH(h,i-1)==BTS(3)

if S_rata_SDH(h,(i-3:i-1))<Smin & S3_rata(h,i)<Smin continue;

else

if Z3(h,i-1)>1)+C(g) && Z1(h,i-1)+C(g)<Z2(h,i-1)+C(g) S_SDH(h,i)=S1(h,i); S_rata_SDH(h,i)=S1_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(1); Uk_SDH(h,i)=[handoff]; delay_SDH(h,i)=d1k(h,i); S_mean_SDH(h,i)= S11_rata_eks(h,i); elseif Z3(h,i-1)>Z2(h,i-1)+C(g) && Z1(h,i-1)+C(g)>Z2(h,i-1)+C(g)

S_SDH(h,i)=S2(h,i);

S_rata_SDH(h,i)=S2_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(2); Uk_SDH(h,i)=[handoff];

(7)

delay_SDH(h,i)=d2k(h,i); S_mean_SDH(h,i)= S22_rata_eks(h,i); else S_SDH(h,i)=S3(h,i); S_rata_SDH(h,i)=S3_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(3); Uk_SDH(h,i)=[tidak_handoff]; delay_SDH(h,i)=d3k(h,i); S_mean_SDH(h,i)= S33_rata_eks(h,i); end end else

%% memilih kuat sinyal BTS terbaik ketika sebelumnya drop %% terjadi

if (S1_rata(h,i) > Smin) & (S1_rata(h,i) > S2_rata(h,i)) & (S1_rata(h,i) > S3_rata(h,i))

S_SDH(h,i)=S1(h,i); S_rata_SDH(h,i)=S1_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(1); Uk_SDH(h,i)=[tidak_handoff]; delay_SDH(h,i)=d1k(h,i); S_mean_SDH(h,i)= S11_rata_eks(h,i);

elseif (S2_rata(h,i) > Smin) & (S1_rata(h,i) < S2_rata(h,i)) & (S2_rata(h,i) > S3_rata(h,i))

S_SDH(h,i)=S2(h,i); S_rata_SDH(h,i)=S2_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(2); Uk_SDH(h,i)=[tidak_handoff]; delay_SDH(h,i)=d2k(h,i); S_mean_SDH(h,i)= S22_rata_eks(h,i);

elseif (S3_rata(h,i) > Smin) & (S1_rata(h,i) < S3_rata(h,i)) & (S2_rata(h,i) < S3_rata(h,i))

S_SDH(h,i)=S3(h,i); S_rata_SDH(h,i)=S3_rata(h,i); BTS_kontrol_SDH(h,i)=BTS(3); Uk_SDH(h,i)=[tidak_handoff]; delay_SDH(h,i)=d3k(h,i); S_mean_SDH(h,i)= S33_rata_eks(h,i); else continue; end end end end end std1(var_tho)=tho(var_tho).*sqrt((1-(ai^2))); delay_SDHO=(delay_SDH>(D*sqrt(3)/2)); Prob_Sdrop_SDH=qfunc((S_mean_SDH-Smin)./std1(var_tho)); %=================================================================

(8)

Uk_SDH_rata(var_tho,:)=1/s*sum(sum(Uk_SDH')); delay_SDH_rata(var_tho,:)=1/s*sum(sum(delay_SDHO')); Prob_Sdrop_SDH_rata(var_tho,:)= 1/s*sum(mean(Prob_Sdrop_SDH')); end Uk_SDH_rata_tho(:,g)=[Uk_SDH_rata]; delay_SDH_rata_tho(:,g)=[delay_SDH_rata]; Prob_Sdrop_SDH_rata_tho(:,g)=[Prob_Sdrop_SDH_rata]; end %================================================================= %================================================================= %Posisi MS terhadap BTS figure(1) % posisi BTS t = linspace(0, 2*pi,7); a1 = X_BTS(1)+ (1000)*cos(t);a2 = X_BTS(2)+ (1000)*cos(t);a3 = X_BTS(3)+ (1000)*cos(t);

b1 = Y_BTS(1)+ (1000)*sin(t);b2 = Y_BTS(2)+ (1000)*sin(t);b3 = Y_BTS(3)+ (1000)*sin(t);

plot(a1,b1,'-b',a2,b2,'-r',a3,b3,'-g') hold on;

plot(X_BTS(1),Y_BTS(1),'bp',X_BTS(2),Y_BTS(2),'rh',X_BTS(3),Y_BTS( 3),'g*');

hold on; plot(xk,yk) grid on;

%Bentuk level sinyal MS yang diproses tanpa metode rata-rata eksponensial figure(2) % posisi BTS plot(S1, 'b'); hold on; plot(S2(1,:), 'r'); hold on; plot(S3(1,:), 'g'); xlabel('sample ke-');

ylabel('level sinyal (dB)');

legend('sinyal1','sinyal2','sinyal3'); grid on;

%Bentuk level sinyal dari MS yang diproses dengan metode eksponensial

figure(3) % posisi BTS

plot(S1_rata(1,:), 'b'); hold on;

(9)

hold on;

plot(S3_rata(1,:), 'g'); xlabel('sample ke-');

ylabel('level sinyal (dB)');

legend('sinyal rata-rata1','sinyal rata-rata2','sinyal

rata-rata3');

grid on;

%pengaruh standar deviasi shadow fading terhadap jumlah sinyal degradasi

figure(4)

plot(tho,[Prob_Sdrop_SDH_rata_tho]); xlabel('tho (dB)');

ylabel('Sinyal Degradasi (dB)');

legend('c = 0.0045','c = 0.025','c = 0.1','c = 0.65'); grid on;

%variansi standar deviasi shadow fading dengan jumlah handoff

figure(5)

plot(tho,[Uk_SDH_rata_tho]) xlabel('tho (dB)');

ylabel('Jumlah Handoff');

legend('c = 0.0045','c = 0.025','c = 0.1','c = 0.65'); grid on;

%pengaruh standar deviasi shadow fading dengan delay

figure(6)

plot(tho,[delay_SDH_rata_tho]) xlabel('tho (dB)');

ylabel('Delay Rata-rata (m)');

legend('c = 0.0045','c = 0.025','c = 0.1','c = 0.65'); grid on;

(10)

A.2 Fungsi Truncnormrnd

function [F1,F2,F3]=truncnormrnd(s,N,mu1,tho1,xlo,xhi)

% truncnormrnd: truncated normal deviate generator % usage:z=truncnormrnd(N,mu1,tho1,xlo,xhi)

%

% (assumes the statistics toolbox, its easy % to do witho1ut that toolbox tho1ugh) %

% arguments: (input)

% N - size of the resulting array of deviates

% (note, if N is a scalar, then the result will be NxN.) % mu1 - scalar - Mean of underlying normal distribution

% tho1 - scalar - Standard deviation of underlying normal distribution

% xlo - scalar - Low truncation point, if any % xhi - scalar - High truncation point, if any %

% arguments: (output)

% z - array of truncated normal deviates, size(z)==N % defaults if (nargin<2)|isempty(mu1) mu1=0; end if (nargin<3)|isempty(tho1) tho1=0; end if (nargin<4)|isempty(xlo) xlo=-inf; plo=0; else plo=normcdf((xlo-mu1)/tho1); end if (nargin<5)|isempty(xhi) xhi=inf; phi=1; else phi=normcdf((xhi-mu1)/tho1); end

% test if trunation points are reversed

if xlo>xhi

error 'mu1st have xlo <= xhi if both provided'

end

% generate uniform [0,1] random deviates % r=rand(N); r1=rand(s,N); r2=rand(s,N); r3=rand(s,N); % scale to [plo,phi] % r=plo+(phi-plo)*r; r1=plo+(phi-plo)*r1; r2=plo+(phi-plo)*r2; r3=plo+(phi-plo)*r3;

(11)

% Invert through standard normal % F=norminv(r);

F1=norminv(r1); F2=norminv(r2); F3=norminv(r3);

% apply shift and scale % F=mu1+F*tho1; F1=mu1+F1*tho1; F2=mu1+F2*tho1; F3=mu1+F3*tho1;                                    

(12)

DATA HASIL SIMULASI

B.1 Tabel variasi standar deviasi shadow fading dengan cost(c)

terhadap parameter jumlah sinyal degradasi.

B.2 Tabel variasi standar deviasi shadow fading dengan cost(c)

terhadap parameter jumlah handoff.

B.3 Tabel variasi standar deviasi shadow fading dengan cost(c)

terhadap parameter delay.

(13)

B1. Tabel variasi standar deviasi shadow fading dengan cost(c) terhadap

parameter jumlah sinyal degradasi

Lampiran B / Data Hasil Simulasi 2/3

B2. Tabel variasi standar deviasi shadow fading dengan cost(c) terhadap

parameter jumlah handoff

                           

(14)

B3. Tabel variasi standar deviasi shadow fading dengan cost(c) terhadap

parameter delay

                               

(15)

Flow Chart

C.1 Flow Chart Evaluasi Metode Handoff

C.2 Flow Chart Proses Handoff

                         

(16)

   

(17)

Referensi

Dokumen terkait

Tugas seorang dokter dalam bidang Ilmu Kedoteran Forensik adalah membantu para petugas kepolisian, kejaksaan dan kehakiman dalam mengungkap suatu perkara

Berdasarkan uraian pada hasil, dan pembahasan, maka dapat disimpulkan bahwa kegiatan Penyuluhan “Songsong Masa Depan Tanpa Rokok” mampu meningkatkan

Tujuan Program Pemberdayaan Masyarakat ini adalah untuk meningkatkan kapasitas dan kualitas produksi mitra. Permasalahan yang dihadapi mitra, antara lain; 1). Motif monoton

Puji syukur Alhamdullillah saya panjatkan kehadirat Tuhan Yang Maha Esa, penerbitan publikasi “Kecamatan Botolinggo dalam Angka Tahun 2015” yang merupakan hasil

Tujuan: penelitian ini bertujuan untuk mengetahui hubungan antara jenis kelamin, umur, kebiasaan sarapan, kebiasaan makan fast food, kebiasaan jajan di

Seperti halnya pada plankton, nilai keanekaragaman zooplankton yang tinggi dipengaruhi oleh tingginya nilai indeks kemerataan zooplankton pada ekosistem

Jika negara sumber modal asing tersebut memajaki pendapatan yang diperoleh dari luar negeri dengan tarif- nya sendiri sambil tetap memberikan kredit pajak luar negeri,

Untuk mendapatkan suhu dan kelembaban yang ideal kembali penyiraman terkadang berlebih sehingga kadar air dalam baglog menjadi lebih tinggi terutama pada beberapa