Rahmat Ramli
(25016305)
Penyelesaian:
Monte Carlo Simulation dilakukan dengan mengambil nilai acak untuk random
varian. Kemudian dari nilai acak tadi dapat dihitung nilai perfomance function untuk
mendapatkan kinerja dari struktur, sehingga dapat diketahi probabilitas gagal atau probabilitas
struktur tersebut aman.
Langkah langkah yang dilakukan dalam Monte Carlo Simulation ini adaah sebagai
berikut:
1. Generate niai acak sebanyak n data untuk masing – masing random varian;
2. Menghitung nilai random varian dari nilai acak tersebut sesuai dengan jenis
distribusinya;
3. Menghitung nilai momen tahanan (z.fy) dan momen akibat beban (Mp dan Mq);
4. Menghitung nilai perfomance function untuk setiap simulasi
g = z.fy – Mp - Mq
5. Menghitung jumlah data yang gagal dari perfomance function setiap simulasinya,
dimana struktur dikatakan gagal apabila perfomance function nya kecil dari nol (g<0);
6. Menghitung probabilitas gagal dari jumlah data perfomance function yang gagal
dibagi dengan jumlah simulasi data.
Pf = Jumlah gagal / Jumlah simulasi
Monte Carlo Simulation dilakukan dengan menggunakan bantuan program Matlab.
Fungsi yang digunakan sebagai berikut:
clear
disp('Perhitungan Statistik');
disp('Probabilitas Kegagalan Struktur Kantilever Baja');
disp('Program Monte Carlo Simulation');
disp('*********************************');
disp('Rahmat Ramli (25016305)');
disp('*********************************');
disp('Data Struktur');
Gambar_Struktur=imread('gambar struktur.png');
figure,imshow(Gambar_Struktur);
%BENTANG STRUKTUR
disp('Input Bentang Struktur (L) = (m)');
L=input(' ');
%PROPERTIES MATERIAL
%Modulus Penampang
disp('Input Rata - Rata Modulus Penampang (z) = (m3)');
Mean_z=input(' '); %nilai rata-rata modulus penampang
disp('Input Koefisian Variasi Modulus Penampang = ' );
KoefVar_z=input(' '); %koefisien variasi z
disp('Pilih Jenis Distribusi z = Normal (1) / Lognormal(2)');
dist_z=input(' '); %jenis distribusi z
Dz=dist_z;
%Mutu Baja
disp('Input Rata - Rata Mutu Baja (fy) = (kg/m2)');
Mean_fy=input(' '); %nilai rata-rata mutu baja
disp('Input Koefisien Variasi Mutu Baja = ');
KoefVar_fy=input(' '); %koefisien variasi fy
disp('Pilih Jenis Distribusi fy = Normal (1) / Lognormal(2)');
dist_fy=input(' '); %jenis distribusi fy
Dfy=dist_fy;
%DATA BEBAN
%****PROCESS****
%Data Generate
%untuk beban P
Up=rand(1,nrun);
disp([Up]);
%untuk beban Q
Uq=rand(1,nrun);
disp([Uq]);
%Gaya Dalam
%Tahanan
disp('Tahanan (R) = zi.fyi (kg.m)');
Tahanan=zi.*fyi;
disp(Tahanan);
%Perfomance Struktur
disp('Perfomance Struktur (g) = z.fy - MP - MQ (kg.m)');
g=Tahanan-MMax_P-MMax_Q;
disp(g);
%Jenis Distribusi z
if Dz==1
disp('Modulus Penampang (z)Mengikuti Distribusi Normal');
elseif Dz==2
disp('Modulus Penampang (z) Mengkikuti Distribusi LogNormal');
end
%Jenis Distribusi fy
if Dfy==1
disp('Mutu Baja (fy) Mengikuti Distribusi Normal');
elseif Dfy==2
disp('Mutu Baja (fy) Mengikuti Distribusi LogNormal');
end
%Jenis Distribusi P
if DP==1
disp('Beban P Mengikuti Distribusi Normal');
elseif DP==1
disp('Beban P Mengikuti Distribusi LogNormal');
end
%Jenis Distribusi Q
if DQ==1
disp('Beban Q Mengikuti Distribusi Normal');
elseif DQ==2
disp('Beban Q Mengikuti Distribusi LogNormal');
end
%Mean Baru
Meanbaru_z=sum(zi)/nrun;
disp(['Rata-Rata Baru z = ' num2str(Meanbaru_z) '(m3)']); %rata-rata
baru z
Meanbaru_fy=sum(fyi)/nrun;
disp(['Rata-Rata Baru fy = ' num2str(Meanbaru_fy) '(kg/m2)']); %rata-
rata baru fy
Meanbaru_P=sum(Pi)/nrun;
disp(['Rata-Rata Baru P = ' num2str(Meanbaru_P) '(kg)']); %rata-rata
baru P
Meanbaru_Q=sum(Qi)/nrun;
disp(['Rata-Rata Baru Q = ' num2str(Meanbaru_Q) '(kg/m)']); %rata-
rata baru Q
%Kegagalan
disp('Struktur Gagal Jika Perfomance Struktur < 0');
gagal=find(g<0);
disp([gagal]);
ndatagagal=histc(gagal,gagal);
%Probabilitas Gagal
disp('Probabilitas Gagal (Pf) = Banyak Data Gagal / Jumlah Generate
Data');
Pf=banyakgagal/nrun;
Pada command window akan muncul perintah input data sebagai berikut:
Struktur dikatakan gagal akibat lentur, jika perfomance function (g)= z.fy – Mp – Mq,
lebih kecil dari nol. Dari percobaan dengan n = 5000, jumlah data perfomance function yang
kecil dari nol adalah 0. Maka probabilitas gagal akibat lentur dapat dihitung dengan cara
membagi jumlah data perfomance function dengan jumlah generate data (n). Sehingga nilai
probabilitas gagal akibat lentur adalah 0.
Gambar 2. Command Window Hasil Running Program n= 5000
Hal yang sama dilakukan untuk generate data acak = 10000 sebagai berikut:
Dari percobaan dengan n = 10000, jumlah data perfomance function yang kecil dari
nol adalah 0. Maka probabilitas gagal akibat lentur dapat dihitung dengan cara membagi
jumlah data perfomance function dengan jumlah generate data (n). Sehingga nilai
probabilitas gagal akibat lentur adalah 0.
Gambar 4. Command Window Hasil Running Program n= 10000
Hal yang sama dilakukan untuk generate data = 20000 sebagai berikut:
Dari percobaan dengan n = 20000, jumlah data perfomance function yang kecil dari
nol adalah 0. Maka probabilitas gagal akibat lentur dapat dihitung dengan cara membagi
jumlah data perfomance function dengan jumlah generate data (n). Sehingga nilai
probabilitas gagal akibat lentur adalah 0.
Gambar 6. Command Window Hasil Running Program n= 20000
1. Rata- rata random variable baru yang didapatkan dari probabilitas U, mendekati nilai
rata-rata dari data asli.
2. Struktur dikatakan gagal jika performance function nya kecil dari nol (g < 0).
3. Hasil simulasi monte carlo dengan generate data n = 5000, probabilitas gagal akibat
lentur dari struktur adalah nol.
4. Hasil simulasi monte carlo dengan generate data n = 10000, probabilitas gagal akibat
lentur dari struktur adalah nol.
5. Hasil simulasi monte carlo dengan generate data n = 20000, probabiltas gagal akibat
lentur dari struktur adalah nol.
6. Dapat disimpulkan struktur sangat aman.