PEMOGRAMAN FINITE ELEMENT METHOD PADA ELEMENT TRUSS DENGAN MENGGUNAKAN MATLAB Tugas Akhir
Diajukan untuk melengkapi tugas-tugas dan memenuhi Syarat untuk menempuh ujian sarjana Teknik Sipil
Disusun oleh :
JUBEL NAINGGOLAN 03 0404 037
SUB JURUSAN STRUKTUR DEPARTEMEN TEKNIK SIPIL FAKULTAS TEKNIK UNIVERSITAS SUMATERA UTARA MEDAN 2009
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
PEMOGRAMAN FINITE ELEMENT METHOD PADA ELEMENT TRUSS DENGAN MENGGUNAKAN MATLAB Tugas Akhir
Diajukan untuk melengkapi tugas-tugas dan memenuhi Syarat untuk menempuh ujian sarjana Teknik Sipil
Disusun oleh :
JUBEL NAINGGOLAN 03 0404 037 Pembimbing
Prof. Dr. Ing. Johannes Tarigan NIP. 130905362
BIDANG STUDI STRUKTUR DEPARTEMEN TEKNIK SIPIL FAKULTAS TEKNIK UNIVERSITAS SUMATERA UTARA MEDAN 2009
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
ABSTRAK
Pekerjaan dalam perencanaan teknik sipil untuk perhitungan struktur pada elemen truss jika dilakukan secara analitis memerlukan waktu yang lama, dikarenakan banyaknya persamaan dari setiap elemen yang harus diselesaikan da juga hasil yang diperoleh kurang akurat karena itu diperlukan komputer untuk menyusun suatu bahasa pemrograman dalam menyelesaikan perhitungan struktur tersebut. Pada tugas akhir ini akan dibuat suatu aplikasi pemograman finite elemen methode pada elemen truss dengan menggunakan Mtalab. Matlab adalah sebuah program untuk analisis dan komputasi numerik yang merupakan suatu bahasa pemrograman matematika lanjutan yang dibentuk dengan dasar pemikiran menggunakan sifat dan bentuk matriks. Bentuk bangunan sipil yang dianalisis dimodelkan sebagai elemen truss dimana pada tahap awal dimasukkan data-data struktur kemudian dibentuk kekakuan lokal masing-masing batang. Kekakuan lokal tersebut kemudian ditransformasikan sehingga diperoleh matriks kekakuan struktur dan nilai deformasi, dari hasil tersebut diperoleh gaya-gaya dalam dari struktur. Sebagai verifikasi program hasil perhitungan dengan pemograman Matlab (data keluaran Matlab) dibandingkan dengan hasil perhitungan dengan menggunakan Mikrosoft Excel2003. Pemograman Finite Elmement Method yang dibuat pada tugas akhir ini dapat digunakan untuk menghitung Displacement, gaya-gaya batabg dan deformasi pada element truss, hasil perhitungan ( data keluaran program )dapat dinyatakan akurat, dikarenakan hasil tersebut sama dengan hasil perhitungan dengan Mikrosoft excel2003.
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
KATA PENGANTAR Segala Pujian hormat dan kemulian hanya bagi Allah di tempat yang maha tinggi, yang telah memberikan berkat, kasih dan karunia-Nya sehingga penulis dapat menyelesaikan tugas akhir ini dengan judul: PEMOGRAMAN FINITE ELEMENT METHOD PADA ELEMENT TRUSS DENGAN MENGGUNAKAN MATLAB Penulisan Tugas Akhir ini merup$akan salah satu syarat dalam menempuh ujian sarjana pada Fakultas Teknik, Departemen Teknik Sipil Universitas Sumatera Utara. Penulis menyadari bahwa tanpa bimbingan, bantuan dan dorongan dari berbagai pihak, tugas akhir ini tidak mungkin dapat diselesaikan dengan baik, sehingga dalam kesempatan ini dengan hati yang tulus penulis mengucapkan terimakasih dan penghargaan yang sebesar-besarnya kepada: 1. Bapak Prof. Dr. Ing. Johannes Tarigan, selaku dosen pembimbing yang telah banyak meluangkan waktu, tenaga dan pikiran untuk memberikan bimbingan dalam menyelesaikan Tugas Akhir ini 2. Bapak Prof. Dr. Ing. Johannes Tarigan, selaku Ketua Jurusan Departemen Teknik Sipil Universitas Sumatera Utara. 3. Bapak Ir. Teruna Jaya, Msc, selaku Sekretaris Jurusan Departemen Teknik Sipil Universitas Sumatera Utara. 4. Bapak Ir. Syahrir Arbeyn Siregar, Ir. Mawardi S, Ibu Nursyamsi, ST.MT, selaku dosen Pembanding 5. Bapak/Ibu dosen pengajar dan seluruh pegawai administrasi Departemen Teknik Sipil Universitas Sumatera Utara. Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
6. Ibunda tercinta Op.Dela Siringo-ringo atas kasih sayang, doa restu, dorongan yang diberikan, dan abang-abangku Ir. H. Leonardo N, M.Si, Taruli N, ST, Sutrisno N, SH, Blider L N, S,Pd, adik-adikku Sanggul N, Sapta Putra N. 7. Untuk Pemimpin Rohani, PKKku: B’Antonius, B’Mue, K’Vera, dan B’Edward serta Ev. Manat Simbolon, terimaksih untuk dukungannya. 8. Rekan-rekan dalam UKM KMK USU UP FT yang tak tersebut satu persatu, KTB Adelphos( Ganda, Tomie, Rodo) KTB Samuel (B’Herderd, B’Jimmi, B’Volma, B’Rendra) adik-adik KK (Adrianto, Jhonra, Meiman, Marni K S) 9. Rekan-rekan mahasiswa Departemen Teknik Sipil Universitas Sumatera Utara khususnya angkatan’03, Imran, Tohank, Himsar, Dona, Ronal, Yunus, Mianto,Genk Irigari (Ricard, Tony, Gaplex, B’Ryan02), serta penghargaan khusus kepada Senina Masana, Donny, Estomihie, Sarman, terimakasih untuk bantuannya dan semua pihak yang yang tidak disebutkan satu persatu. Penulis menyadari bahwa isi dari tugas akhir ini masih banyak kekurangannya dan jauh dari sempurna. Hal ini penulis akui karena keterbatasan pengetahuan dan kurangnya pemahaman penulis, penulis memohon maaf yang sebesar-besarnya apabila terdapat kesalahan penulisan dan penyusunan tugas akhir ini. untuk penyempurnaannya, saran dan kritik dari bapak dan ibu dosen serta rekan mahasiswa sangatlah penulis harapkan. Akhir kata penulis berharap tugas akhir ini berguna bagi semua pihak yang memerlukan. Medan,
Mei 2009
Jubel Nainggolan 030404037 Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
DAFTAR ISI Abstrak ..........................................................................................................
i
Kata pengantar.................................................................................................
iii
Daftar isi ..........................................................................................................
iv
Daftar notasi ....................................................................................................
vii
Daftar tabel ......................................................................................................
viii
Daftar gambar .................................................................................................
ix
BAB I Latar Belakang Masalah ...…………………………………………….....
1
Maksud dan Tujuan ...................................................................................
4
Pembatasan Masalah .....……………………………………………….....
4
Metodologi …………………..........……………………………………...
5
Sistematika Penulisan .................................................................................
5
BAB II Teori Dasar 2.1 Pendahuluan ……………………..........………………………………....
8
2.1 Jenis-jenis Struktur ……………………………………………………...
9
2.1.1 Truss (Rangka) …………........………………………………...........
9
2.1.2 Beam elemen …………………............…………………………......
9
2.1.3 Frame (Portal) ……....………………………………………............
10
2.1.4 Grid/Grillage (Balok Silang ...……………………………………....
10
2.1.5. Spring Element...…………………………....................…………....
10
2.2 Konsep Elemen Hingga ………………………………………………...
12
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
2.3 Dasar-dasar dari Finite Element Method ……………………………....
15
2.3.1 Finite Element Method and Metode Ritz ………………………......
15
2.4 Truss Element ………………………………………………………......
20
2.4.1 Matriks Kekakuan ....................... ………………………………….
21
2.4.1.1 Menentukan Matriks Kekakuan terhadap Sumbu Lokal ...........
22
2.4.1.2 Menentukan Matriks Kekakuan terhadap sumbu Global............
25
2.4.1.3 Matriks Kekakuan Struktur ……….....…………………….......
26
2.4.2 Syarat Keseimbangan .........................................................................
30
BAB III METODE ANALISA 3.1 Pendahuluan ……………………………………………………………
31
3.2 Lingkungan Kerja Matlab ……………………………...........................
32
3.2.1 Beberapa Bagian Dekstop tolls Matlab………….…...…………......
32
3.2.2 Dasar mengoperasikan Matlab ………………….……...…………..
33
3.2.3 M- File ................................................ ..............................................
34
3.2.3.1 Membuat fungsi Independent M-File ………………………….
38
3.2.4 Debugging M-File …………………………………………………..
38
3.3 Fungsi Matlab ……………….....................................................................
40
3.3.1 Fungsi Matematika lainnya ................................................................
42
3.3.2 Analisa Simbolik ...............................................................................
43
3.4 Interupting dan Terminating dalam Matlab ….………………………...
45
3.5 Variabel pada Matlab…………………………………………………….
45
3.6 Penulisan Matriks ......................................................................................
46
3.6.1 Matriks Khusus …....………………………………………………..
49
3.7 Operator .....................................................................................................
54
3.7.1 Operasi bentuk Aljabar dalam Matlab ..............................................
54
3.7.2 Operator Keterangan ..........................................................................
54
3.8 Grafik 2D (dua dimensi ) dan 3D (tiga dimensi ) ......................................
55
3.9 Kendali Program ........................................................................................
56
3.10 Langkah-langkah Penyelesaian Metode Elemen Hingga pada truss elemen dengan Matlab ...............……………………………………………………...
61
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
BAB IV Aplikasi pada Truss Element 4.1 Contoh Rangka ………...……………………………………………….
63
4.2 Pemograman Matlab …………………………………………………..
64
4.3 Verifikasi Program ..................................................................................
125
4.3.1 Output Program Matlab ........................................................................
125
4.3.2.Perhitungan Finite Elemen Method pada Elemen Truss dengan menggunakan Mikrosoft Excel2003 .....................................................
126
4.3.3. Output Mikrosoft Excel2003 ..............................................................
127
BAB V Kesimpulan dan Saran 5.1 Kesimpulan …………………………………………………………….
128
5.2 Saran …………………………………………………………………..
128
Daftar Pustaka ………………………………………………………….….
129
Lampiran Perhitungan dengan menggunakan Mikrosoft Excel 2003...............
130
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
DAFTAR NOTASI Te = Energi Potensial Total V = Potensial dari gaya luar U = Energi regangan (disebut juga reaksi) φi = suatu fungsi V = lendutan σ = tegangan ε = regangan P = Gaya Aksial (kg) A = Luas Penampang (cm2) L = Panjang bentang (m) E = modulus elastisitas (kg/cm2)
{f }= vektor dari gaya-gaya luar pada titik simpul {d }= vektor dari perpindahan (displacement) [K ]= matrix kekakuan simetri
[k ]= matrix kekakuan global e
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
DAFTAR TABEL
Tabel 2.1
: Diskritisasi Elemen a dan b ......................................................
24
Tabel 2.2
: Menentukan Matriks Kekakuan Global ....................................
27
Tabel 4.1
: Perpindahan Titik .....................................……………...........
125
Tabel 4.2
: Reaksi perletakan .......................................………… ...........
125
Tabel 4.3
: Gaya batang…………….........................................................
125
Tabel 4.4 : Perpindahan Titik berdasarkan Perhitungan Mikrosoft excel.....
127
Tabel 4.5 : Reaksi perletakan berdasarkan Perhitungan Mikrosoft excel....
127
Tabel 4.6 : Gaya batang berdasarkan Perhitungan Mikrosoft excel.............
127
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
DAFTAR GAMBAR
Gambar 1.1
: Element truss.........................................……………...............
3
Gambar 2.1
: Jenis Struktur dalam sipil ....................……………................
11
Gambar 2.2
: Bentuk mesh pada metode elemen hingga……………...........
14
Gambar 2.3a : Pemodelan Ritz........................................................................
17
Gambar 2.3b : Pemodelan FEM .......................................................................
17
Gambar 2.4
: Sebuah Element truss ....................…………….....................
18
Gambar 2.5. : Diskritisasi Element Truss ......................................................
20
Gambar 2.6. : Elemen truss dengan 8 titik simpul dan 13 elemen ................
21
Gambar 2.7. : Matriks kekakuan pada sumbu lokal .......................................
22
Gambar 2.8. :Gaya bekerja pada elemen .......................................................
23
Gambar 2.9. : Matriks kekakuan pada sumbu global .....................................
25
Gambar 2.10. : Titik simpul setiap elemen setelah didiskritisasi ....................
27
Gambar 2.11. : Tanda dan defenisi Arah Gaya …………………...................
28
Gambar 3.1
: Matlab Intervace ……………………….……..............….....
33
Gambar 3.2. : Tampilan operasi matematik sederhana .................................
34
Gambar 3.3. : Tampilan Set path …………………………………......…....
35
Gambar 3.4. : Tampilan Add Folder …………………………….. .........…
35
Gambar 3.5. : Tampilan Folder baru ……………………….........................
36
Gambar 3.6. : Tampilan M-File Editor …………………………....…..…...
37
Gambar 3.7. : Tampilan Hasil Run M-File ………………………..…….….
37
Gambar 4.1. : Struktur rangka ........................................................................
64
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
PEMOGRAMAN FINITE ELEMENT METHODE PADA ELEMENT TRUSS DENGAN MENGGUNAKAN MATLAB
1.1. Latar Belakang Masalah Perkembangan teknologi informasi yang terjadi pada saat ini sudah sangat pesat, hal ini terjadi baik di negara berkembang maupun negara maju. Indonesia termasuk salah satu negara berkembang yang berusaha untuk mengikuti perkembangan teknologi informasi tersebut. Perkembangan teknologi informasi dalam hal ini juga diikuti oleh perkembangan teknologi komputer termasuk di dalamnya perkembangan software (perangkat lunak) yang sangat membantu guna memudahkan pekerjaan dalam berbagai disiplin ilmu. Bidang ilmu teknik sipil merupakan salah satu bidang ilmu yang menuntut pekerjaan yang cepat, tepat, akurat serta efisien di dalam waktu dan saat ini telah banyak berkembang perangkat lunak yang profesional untuk membantu perhitungan dan perencanaan di bidang teknik sipil seperti SAP 2000, ETABS, STAAD PRO dan masih banyak lagi perangkat lunak yang sejenis. Pada umumnya perangkat lunak yang dikembangkan ini berbasis pada Metode Elemen Hingga
(Finite Element
Methode ) untuk memecahkan masalah statika dan mekanikanya.
Metode Elemen Hingga (Finite Element Methode ) adalah salah satu metode numerik yang digunakan untuk menyelesaikan masalah dalam bidang engineering, seperti analisa gaya-gaya dalam yang terjadi dalam suatu kompenen struktur, heat transfer, fluida, transportasi massa dan elektromagnetik potensial. Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
Metode Elemen Hingga (Finite Element Methode ) juga dikenal sebagai metode kekakuan ataupun displasment methode, dikarenakan dalam perhitungan terlebih dahulu menghitung perpindahan kemudian mengitung gaya batang.
Setelah
dekade delapan puluhan perkembangan metode ini sangat pesat karena pada saat itu juga telah dikembangkan dan digunakan
komputer untuk penyelesaian
masalah numeriknya. Jika tidak menggunakan komputer, metode elemen hingga ini mungkin sampai sekarang tidak akan digunakan dalam perhitungan praktis, karena akan memerlukan waktu yang cukup lama dan keakuratan yang kurang baik. Kemudian setelah dikembangkan komputer maka metode ini menjadi maju sangat pesat dan menjadi alat yang handal bagi para praktisi teknik sipil untuk menyelesaikan berbagai permasalahan yang ada didalam perhitungan analisa struktur, pada awalnya banyak dikembangkan bahasa pemrograman yang low level language dengan diperkenalkannya bahasa assembly dan high level language seperti Fortran, C++, Basic, Pascal dan lain-lain, hingga akhir-akhir ini semakin berkembang bahasa script programming yang dijadikan alternatif karena kemudahannya dalam membuat suatu aplikasi program, salah satunya adalah Matlab (Matrix Laboratory) dimana MATLAB adalah sebuah program untuk analisis dan komputasi numerik, yang merupakan suatu bahasa pemograman matematika lanjutan yang dibentuk dengan dasar pemikiran menggunakan sifat dan bentuk matriks. Sesuai dengan perkembangan struktur, dalam perencanaan berbagai program telah digunakan untuk membantu dalam perhitungan struktur, Matlab masih jarang digunakan dalam perencaan struktur. Matlab merupakan integrasi dari komputansi, visualisasi dan pemograman dalam suatu lingkungan
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
yang mudah digunakan, karena permasalahan dan pemecahannya dinyatakan dalam notasi matematika biasa. Matlab adalah sistem interaktif dengan elemen dasar array yang merupakan basis datanya. Array tersebut tidak perlu dinyatakan khusus seperti di bahasa pemograman yang ada sekarang. Hal ini memungkinkan untuk memecahkan banyak masalah perhitungan teknik, khususnya yang melibatkan matriks dan vektor dengan waktu yang lebih singkat dari waktu yang dibutuhkan untuk menulis program yang lain.
Bentuk bangunan sipil dapat dimodelkan sebagai frame (portal) dan truss (rangka). Pada penulisan tugas akhir ini struktur yang ditinjau adalah
truss
(rangka), dimana definisi dari portal adalah kerangka yang terdiri dari dua atau lebih bagian konstruksi yang disambungkan guna stabilitas sedangkan definisi truss (rangka) adalah konstruksi yang tersusun dari batang-batang tarik dan batang-batang tekan saja, umumnya dari baja, kayu, atau paduan ringan guna mendukung atap atau jembatan.
Gambar.1.1 Element Truss 1
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
Pekerjaan dalam perencanaan teknik sipil untuk perhitungan struktur pada plane - truss element memerlukan waktu lama serta ketelitian yang cukup besar jika dilakukan secara manual oleh karena itu diperlukan suatu alat bantu yang dapat mempermudah pekerjaan dalam menyelesaikan perhitungan tersebut dan oleh karena itu disusunlah suatu bahasa pemrograman yang cocok untuk itu yaitu dengan suatu bahasa script programming sehingga kecepatan dalam pembuatan program dengan source code yang dibentuk lebih singkat dan cepat dibandingkan jika menggunakan bahasa pemrograman yang high level, sehingga dapat menciptakan suatu efisiensi dalam pekerjaan pembuatan program serta tingkat keakuratan yang cukup baik jika digunakan dalam perhitungan struktur.
1.2 Maksud dan Tujuan Untuk mengembangkan suatu pemograman komputer untuk element truss yang berbasis metode elemen hingga ( Finite Element Methode) dengan menggunakan bahasa script programming yaitu Matlab v6.0.
1.3 Pembatasan Masalah Dalam analisa ini penulis membatasi permasalahan untuk penyederhanaan perhitungan sehingga tujuan dari penulisan tugas akhir ini dapat dicapai yaitu : 1. Perhitungan dilakukan dalam batas elastis 2. Hubungan antara gaya dalam dan perubahan bentuk ditentukan dengan hubungan gaya dan perubahan bentuk yang linier dan berlaku hukum HOOKE
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
3. Rangka yang ditinjau 2 dimensi, dengan beban terpusat P arah y (beban vertikal) dan x (beban horizontal) dengan panjang bentang L,
tinggi bentang h,
dengan 8 (delapan) titik simpul dan 13 (tiga belas) elemen 4. Perletakan sendi –roll 5. Perencanaan pada rangka (truss) tidak diikutsertakan, hanya untuk perhitungan gaya-gaya dalam struktur saja.
1.4 Metodologi Metode yang dipakai dalam pembuatan program ini adalah berdasarkan Metode Elemen Hingga ( Finite Element Methode) dengan menggunakan bahasa script programming dalam hal ini Matlab kemudian membandingkan hasil yang diperoleh dari program dengan hasil perhitungan menggunakan Mikrosoft excel2003.
1.5 Sistematika Penulisan BAB I. Pendahuluan. Berisi tentang pembahasan perkembangan teknologi komputer termasuk di dalamnya perkembangan software (perangkat lunak) untuk teknik sipil. Umumnya perangkat lunak yang dikembangkan ini berbasis pada Metode Elemen Hingga (Finite Element Methode) untuk memecahkan masalah statika dan mekanikanya, pada awalnya
dikembangkan bahasa pemrograman yang low level language
dengan diperkenalkannya bahasa assembly dan high level language seperti Fortran, C++, Basic, Pascal dan lain-lain, hingga semakin berkembang bahasa script programming yang dijadikan alternatif karena kemudahannya dalam Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
membuat suatu aplikasi program, salah satunya adalah Matlab (Matrix Laboratory), untuk itu di sini dicoba membuat program analisa struktur dalam hal ini untuk struktur rangka (truss) dengan Matlab
Bab II. Teori dasar. Memuat berbagai jenis struktur pada bangunan teknik sipil, dasar dari Metode Elemen Hingga (Finite Element Methode) dimana metode elemen hingga adalah modifikasi dari metode Ritz. Dalam hal ini metode Ritz sudah lama dikenal, namun setelah lama baru diketahui bahwa metode
elemen hingga adalah
modifikasi dari metode Ritz. Pada metode elemen hingga di sini akan dibuat suatu pemrograman plane truss untuk struktur dua dimensi dengan metode elemen hingga dimana langkah-langkah untuk pembuatan program plane truss terdapat pada bab ini.
BAB III. Metode analisa. Memuat entang Matlab yang akan digunakan untuk pemrograman plane truss tersebut. Matlab merupakan bahasa pemrograman yang hadir dengan fungsi dan karakteristik yang berbeda dengan bahasa pemrograman lain yang sudah ada lebih dahulu seperti Delphi, Basic maupun C++. Matlab merupakan bahasa pemrograman level tinggi yang dikhususkan untuk kebutuhan komputasi teknis, visualisasi dan pemrograman banyak fungsi Matlab yang sudah tersedia sehingga untuk pemrograman teknik sipil seperti dalam anlisa struktur perintah yang dibuat lebih sederhana dari bahasa pemrograman high level language seperti Fortran, C++, Basic, Pascal dan lain-lain. Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
BAB IV. Aplikasi. Berisi contoh aplikasi penerapan dengan Matlab, dan hasil yang diperoleh akan dibandingkan dengan hasil perhitungan dengan Mikrosoft excel2003. BAB V. Kesimpulan dan saran. Menyimpulkan pemograman
finite element methode untuk element truss
yang dibuat dengan Matlab.
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
BAB II TEORI DASAR 2.1. Pendahuluan Finite element methode merupakan salah satu metode yang digunakan untuk menghitung gaya dalam yang terjadi dalam suatu komponen struktur. Finite element mothode juga dapat dipakai untuk perhitugan nonstruktur, fluida, elektrik, statik, dinamik,dan lain-lain. Finite element methode juga dikenal sebagai metode kekakuan ataupun displacement methode, karena yang didapat terlebih dahulu dari perhitungan adalah perpindahan kemudian menghitung gaya batang. Dalam analisa Metode kekakuan ataupun metode elemen hingga didasarkan pada 3 pemikiran: 1. Syarat Keseimbangan, 2. Syarat Kompetibilitas, 3. Syarat bahan,
Dalam Struktur sipil Kekakuan dapat dibagi atas 2 : 1. Linier elastis
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
2. Non linier elastis
3. Linier inelastic
4. Non linier inelastic
Jubel Nainggolan : Pemograman Finite Element Method Pada Element Truss Dengan Menggunakan Matlab, 2009.
2.1 Jenis-jenis Struktur pada Bangunan Teknik Sipil Beberapa contoh struktur pada Bangunan Teknik Sipil yang dapat diselesaikan dengan finite element methode adalah sebagai berikut :
2.1.1 Truss (rangka) Definisi truss (rangka) adalah konstruksi yang tersusun dari batang-batang tarik dan
batang-batang tekan saja, umumnya dari baja, kayu, atau paduan ringan
guna mendukung atap atau jembatan, umumnya dapat menahan gaya aksial saja., Truss memiliki dua (2) buah DOF (degree of freedom ) yaitu memiliki dua derajat kebebasan. Truss dapat dikategorikan atas 2 bagian, yaitu : a. Plane- Element truss, atau Rangka bidang, yaitu Truss 2 dimensi. Truss yang dapat menahan beban pada arah datar saja (sumbu x, y) umumnya beban yang bekerja adalah beban terpusat nodal. b. Space-Truss, atau rangka ruang, yaitu Truss 3 dimensi. Truss yang dapat menahan beban pada semua arah (sumbu x, y dan z) umumnya beban yang bekerja adalah beban terpusat nodal.
2.1.2. Beam element Definisi Beam (balok) adalah struktur yang terdiri dari dua atau lebih bagian konstruksi, umumnya dapat menahan gaya momen, gaya geser dan gaya lintang, namun tidak ada gaya Normal yang bekerja. Beam memiliki empat (4) buah DOF (degree of freedom ).
2.1.3. Grid /Grillage (Balok Silang) Definisi grid (balok silang) adalah kerangka yang terdiri dari dua atau lebih bagian konstruksi yang disambungkan secara kaku (guna stabilitas) pada arah mendatar, umumnya dapat menahan gaya yang bekerja tegak lurus (sumbu y) terhadap bidang datarnya (sumbu x), struktur seperti sistem lantai, sistem atap dan lantai jembatan dapat dianalisis sebagai grid atau balok silang. Grid memiliki enam (6) buah DOF (degree of freedom ).
2.1.4. Frame (Portal) Definisi frame (portal) adalah kerangka yang terdiri dari dua atau lebih bagian konstruksi yang disambungkan guna stabilitas, umumnya dapat menahan gaya momen, gaya geser dan aksial, dapat dikategorikan atas 2 bagian, yaitu : a. Plane- Frame Element, yaitu Frame 2 dimensi. Frame yang dapat menahan beban pada arah datar saja (sumbu x, y) umumnya beban yang bekerja adalah beban terpusat nodal dan beban batang. Plane Frame memiliki enam (6) buah DOF (degree of freedom ). b. Space- Frame Element, yaitu Frame 3 dimensi. Frame yang dapat menahan beban pada semua arah (sumbu x, y dan z) umumnya beban yang bekerja adalah beban terpusat nodal dan beban batang. Space Frame memiliki delapan (8) buah DOF (degree of freedom ).
2.1.5. Spring Element Umumnya dapat menahan gaya aksial saja. Spring Element memiliki dua (2) buah DOF (degree of freedom ).
Plane-Truss Element
2 DOF
Space-Truss 2 DOF Element
Beam Element
4 DOF
Grid Element
6 DOF
Plane-Frame 6 DOF Element
Space-Frame 8 DOF Element
2 DOF Spring Element
Gambar 2.1. Jenis Struktur dalam Sipil 3
3
Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Elemen Methode, USU, Medan
2.2 Konsep Elemen Hingga Struktur dalam istilah teknik sipil adalah rangkaian elemen-elemen yang sejenis maupun yang tidak sejenis. Elemen adalah susunan materi yang mempunyai bentuk relatif teratur. Elemen ini akan mempunyai sifat-sifat tertentu yang tergantung kepada bentuk fisik dan materi penyusunnya. Bentuk fisik dan materi penyusun elemen tersebut akan menyebutkan totalitas element tersebut. Totalitas sifat elemen inilah disebut dengan kekakuan elemen. Jika diperinci maka sebuah struktur mempunyai Modulus elastis (E), Modulus geser (G), Luas penampang (A), Panjang (L) dan Inersia (I). Hal inilah yang salah satu yang perlu dipahami didalam pemahaman elemen hingga nantinya, bahwa kekakuan adalah fungsi dari E,G,A,L,I.
Sebagaimana telah didefinisikan para pendahulu-pendahulu, bahwa energi itu adalah kekal dan jika aksi (energi) dilakukan terhadap suatu materi, maka materi akan melakukan suatu reaksi sebesar aksi tersebut. Reaksi dari materi ini akan disebut dengan gaya dalam.”GAYA DALAM “ yang ada dalam struktur didefinisikan yaitu, Gaya Normal, Gaya Lintang, dan Gaya Momen yang akan mempengaruhi bentuk fisik materi tersebut. Perubahan bentuk fisik materi ini disebut dengan peralihan (displacement). Metode elemen hingga adalah suatu metode pemaparan bagaimana perjalanan aksi hingga timbul reaksi dalam materi, atau metode untuk meramal besar reaksi dan reaksi apa yang timbul dari materi tersebut.
Kontinum dibagi-bagi menjadi beberapa bagian yang lebih kecil, maka elemen kecil ini disebut elemen hingga. Proses pembagian kontinum menjadi elemen-elemen hingga disebut proses “diskretisasi” (pembagian). Dinamakan elemen-elemen hingga karena bentuk geometri yang lebih sederhana dibanding dengan kontinumnya. Dengan metode elemen hingga kita dapat mengubah suatu masalah dengan jumlah derajat kebebasan tertentu sehingga proses pemecahannya akan lebih sedehana. Misalnya suatu batang yang panjang, seperti pada Gambar 2.2 bentuk fisiknya tidak lurus dipotong-potong sependek mungkin sehingga terbentuk batang-batang pendek yang relatif lurus. Maka pada bentang yang panjang tadi disebut kontinum dan batang yang pendek disebut elemen hingga.
Suatu bidang yang luas seperti Gambar 2.2 dengan dimensi yang tidak teratur dipotong-potong berbentuk segitiga atau bentuk segi empat yang beraturan. Bidang yang dengan dimensi tidak beraturan tadi disebut kontinum, bidang segitiga atau segi empat beraturan disebut elemen hingga. dan banyak lagi persoalan yang identik dengan hal diatas. Berdasarkan pengertian di atas, kontinum dapat didefinisikan sebagai suatu bidang ataupun luasan yang terdiri dari bagian-bagian yang kecil yang berbentuk persegi, segitiga ataupun trapesium yang terangkai satu sama lain sehingga merupakan satu kesatuan yang membentuk bidang tersebut.
Elemen Hingga
Kontinum Elemen Hingga Kontinum
Batang bengkok menjadi batang-batang pendek yang lurus
Bidang tidak beraturan menjadi bidang-bidang segitiga beraturan
Elemen Hingga Kontinum
Bidang tidak beraturan menjadi bidang-bidang segiempat beraturan
Gambar 2.2 Bentuk mesh pada metode elemen hingga
4
Pendekatan dengan elemen hingga merupakan suatu analisis pendekatan yang berdasarkan kombinasi dari kedua asumsi tadi dalam setiap elemennya. karena pendekatan berdasarkan fungsi peralihan merupakan teknik yang sering sekali dipakai, maka langkah-langkah berikut ini dapat digunakan sebagai pedoman bila menggunakan pendekatan berdasarkan asumsi tersebut : 1. Bagilah kontinum menjadi sejumlah elemen (Sub-region) yang berhingga dengan geometri yang sederhana (segitiga, segi empat. dan lain sebagainya). 2. Pada titik-titk pada elemen yang diperlakukan sebagai titik nodal, dimana syarat keseimbangan dan kompatibilitas dipenuhi. 3. Asumsikan fungsi peralihan pada setiap elemen sedemikian rupa sehingga peralihan pada setiap titik sembarangan dipengaruhi oleh nilai-nilai titik nodalnya. 4. Pada 4
Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Elemen Methode, USU, Medan
setiap
elemen khusus yang dipilih tadi harus dipenuhi persyaratan hubungan regangan peralihan dan hubungan rengangan-tegangannya. 5. Tentukan kekakuan dan beban titik nodal ekivalen untuk setiap elemen dengan menggunakan prinsip usaha atau energi. 6. Turunkan persamaan keseimbangan ini untuk mencari peralihan titik nodal. 7. Selesaikan persamaan keseimbangan ini untuk mencari peralihan titik nodal. 8. Hitung tegangan pada titik tertentu pada elemen tadi. 9. Tentukan reaksi perletakan pada titik nodal yang tertahan bila diperlukan.
2.3 Dasar-dasar dari Finite Element Method 2.3.1 Finite Element Method dan Methode Ritz Sebenarnya metode Finite Element adalah modifikasi dari metode Ritz seperti pada Gambar 2.3. Metode Ritz sudah lama dikenal, namun setelah lama baru diketahui bahwa metode Finite Element adalah modifikasi dari methode Ritz 5. Energi Potensial Te = U (v) + V (v)
minimum …………........................................... (2.1)
dimana: Te = Energi potensial total V = Potensial dari gaya luar ( terjadi bila gaya luar benda mempunyai arah ) U = Energi regangan (disebut juga reaksi)
Dengan metode Ritz diperoleh 6 n V(x) = ∑ ai . φi (x) = {φ}T {a} i=1
5, 6
....…................................................... (2.2)
Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Elemen Methode, USU, Medan O. Axelson, Finite Element Solution of Bondary value problems, pg 146-147
dimana : V = lendutan φi = suatu fungsi π = minimum jika, ∂π =0 ∂ai
(i = 1, 2, 3, …..,n) atau ∂π =0 ∂{a} (2.3) ............................................
Pada suatu balok yang harus berlaku adalah 7 2
( d V )2 . dx μ = ½ ∫ E.I dx ........................................ (2.4) (ℓ) dV V = - { ∫ q.v.dx + ∑ [Fj.vj + Mj . ( dx ) j]} (ℓ) ............................................ (2.5) π = ½ ∫ (Eэv”2 – 2qv) dx - ∑ (Fj vj + Mj v’j) (ℓ) (j)
minimum ..….............. (2.6)
Dari Persamaan (2.6) dan (2.2) diperoleh 8 : n n n π = ½ ∫ Eэ(∑ ai . φi”)2 dx - ∫ q ((∑ ai . φi) dx - ∑[Fj ∑ai.φi (xj) i=1 (ℓ) i=1 (j) i=1 n + μj . ∑ ai . φi (xj)] i=1 = ½ ∫ Eэ{a}T {φ”}{φ”}T {a} dx - ∫ q{φ}T {a} dx - ∑(Fj{φj}T{a}+Mj{φj}T{a}) (ℓ) (ℓ) (j) = ½ {a}T ∫Eэ{φ”}{φ”}T dx {a}- [∫q{φ} dx + ∑(Fj {φi}T + Mj {φj}T)]{a} (ℓ) (ℓ) (j) T T π = ½ {a} [K] {a} – {f} {a} ∂π = [K] {a} – {f} = 0 ∂{a} ...................….............…….. (2.7) 7, 8
Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Elemen Methode, USU, Medan
Pada FEM balok akan dibagi dalam beberapa elemen untuk setiap elemen berlaku Persamaan (2.2) seperti Gambar 2.3. Ritz :
X V V(x) = {φ}T {a}
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
=
f
{a}
[K]
Gambar 2.3a. Pemodelan Ritz
FEM : X
.. . . . . V. . . V(x) = {q(x)}T {d}
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
=
Gambar 2.3b. Pemodelan FEM 9, 10
. . . .
10
Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Elemen Methode, USU, Medan
9
Pada metode elemen hingga, energi potensial dapat dijumlahkan dari sebuah elemen yang ada, sehingga menjadi bentuk persamaan 11 [K] {d} – {f} = 0 ............................................................................................ (2.8)
Dalam menggunakan finite element methode, perlu diperhatikan, bahwa pada tiap element / batang akan terdapat 2 buah titik simpul yaitu simpul awal yang diberi tanda ( 1 ) dan simpul akhir yang diberi tanda ( 2 ) dan sebuah element yang diberi tanda ( a ) seperti tampak pada gambar di bawah ini :
Gambar. 2.4. sebuah Element truss
12
Dalam menyelesaikan persoalan dengan finite element methode yaitu menentukan matriks kekakuan lokal yang berbeda -beda untuk masing-masing jenis struktur seperti truss element, beam element, grid element, dan lain-lain, masing-masing batang memiliki kekakuan lokal tersendiri. Jika jenis struktur terdiri dari beberapa element yang mempunyai sistem koordinat lokal yang berbeda, maka perlu dikonversikan ke koordinat global yang dapat mewakili semua koordinat lokal element yang ada.. Maka gaya-gaya yang terjadi pada koordinat global adalah : { f } = [k ]{d } ………………………………………(2.10) dimana : f = gaya-gaya batang dalam arah global ( kg )
k = kekakuan global (N/m2) d = perpindahan global( m ataupun rad )
10 12
Susatio, Yerri, Ir, MT, Dasar-dasar Metode Elemen Hingga, hal 7 R. B. Agarwal, FEA Lecture Notes , pg 3-3
Kemudian rumus untuk menentukan kekakuan global dapat diturunkan sebagai berikut
13
: { f } = [T ]{ f } {d } = [T ]{d }
{ f } = [k ]{d } [T ] −1{ f } = [k ][T ] −1{d } { f } = [T ][k ][T ] −1{d }
Maka ditentukan matriks kekakuan global adalah
14
:
{k } = [T ][k ][T ] −1 ………………………………………(2.11)
Dengan [T] adalah suatu faktor konversi gaya - gaya ke arah sumbu global yang berbeda-beda untuk tiap jenis struktur. Setelah diperoleh matriks kekakuan global, maka dapat disusun suatu matriks kekakuan struktur yang memasukkan semua komponen -komponen elemen yang ada
f 1 k1 = f2 0
15
.
0 d1 ………………………………………(2.12) k 2 d 2
Langkah berikutnya yaitu menentukan syarat- syarat-syarat batas yang ada dan kemudian nilai perpindahan dapat diperoleh.
13, 14, 15
Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Elemen Methode, USU, Medan
Dengan nilai perpindahan global yang diperoleh,gaya-gaya batang untuk tiap element dapat ditentukan dengan
16
:
{ f } = [k ]{d } Dimana
17
: {d } = [T ] −1{d } ………………………………………(2.13)
2.4.Truss Element
Gambar.2.5 Diskritisasi Element Truss 18
Rangka bidang disebut juga Plane Truss. Secara konvensional dalam mencari gaya gaya batang di dalam rangka dapat diselesaikan dengan metode Ritter maupun teori keseimbangan titik buhul. Tetapi penyelesaian disini dilakukan dengan stiffness methode ( metode kekakuan ) yang disebut juga displacement methode ( metode perpindahan ). Dalam hal penyelesaian dengan metode ritter ataupun keseimbangan titik buhul disebut juga force methode, karena yang pertama didapat adalah gaya / force. Sedangkan pada metode kekakuan atau finite element methode, yang diperoleh terlebih dahulu adalah perpindahan baru kemudian gaya batang dapat dihitung.
16, 17 18
Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Elemen Methode, USU, Medan R. B. Agarwal, FEA Lecture Notes , pg 3-1
Truss element memiliki derajat kebebasan sebanyak 2 buah ( 2degree of freedom / DOF ) yaitu hanya ada gaya lateral yang sejajar dengan batang ( Sx) . Disebut demikian karena dalam suatu rangka batang akan bekerja dua buah gaya ( Sx1 dan Sx2) masing-masing pada titik simpul awal dan akhir. Oleh karena itu akan secara linear menimbulkan 2 perpindahan (u1 dan u2 ).
2.4.1. Matriks Kekakuan Matriks kekakuan adalah matriks yang memenuhi hubungan antara gaya yang
(f )
diberikan persamaan
19
dengan perpindahan/displacement yang dihasilkan (d ) melalui :
{ f } = [k ]{d } …………………………………………(2.14),
Dalam menghitung matriks kekakuan suatu rangka bidang, maka perlu ditentukan matriks kekakuan terhadap sumbu lokal, matriks kekakuan terhadap sumbu global , sehingga kekakuan struktur dapat dihitung. Untuk menghitung matriks kekakuan suatu struktur, berikut ini akan ditinjau sebuah Stuktur rangka dengan 8 nodes / titik simpul, yaitu Titik 1, 2, 3, … 10, dan 13 elemen yaitu elemen a, b, c,... m.
Gambar 2.6. Elemen truss dengan 8 titik simpul dan 13 elemen 20
19 20
2.4.1.1.Menentu Susatio, Yerri, Dasar-dasar Metode Elmen hingga, hal 7 Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Element Methode, USU, Medan
kan Matriks Kekakuan terhadap sumbu lokal Setiap elemen mempunyai sumbu lokal masing-masing, sebagai contoh adalah elemen a seperti gambar 2.8. Pada elemen ini ada 2 gaya yaitu Sx1 dan Sx2. Titik simpul 1 pada gambar disebut juga pangkal/awal, sedangkan untuk Simpul 2 disebut ujung/akhir.
Gambar 2.7. Matriks kekakuan pada sumbu lokal
21
: σ = E ε ; Sedangkan σ =
P A
Menurut hokum Hooke , maka berlaku
22
P = σ . A ⇒ P = E.ε . A ⇒ ε = ∆l l
dimana : σ = tegangan, ε = regangan, P = Gaya Aksial, A = Luas Penampang, L = Panjag bentang, E = modulus elastisitas Untuk titik pangkal/awal 1, jika P = Sx1 ; Sx P ∆L , sedangkan ∆L = u1 − u 2 = E.ε ⇒ 1 = E. A A L
Dengan demikian, maka
23
:
Sx1 =
E. A (u1 − u 2 ) ……………………………………(2.15) L
Syarat kesetimbangan ∑ H = 0, maka Sx1 + Sx2 = 0, dengan demikian Sx 2 =
21, 23, 22
E. A (− u1 + u 2 ) ……………………………………(2.16) L
Susatio, Yerri, Dasar-dasar Metode Elemen hingga, hal 44-45 R. B. Agarwal, FEA Lecture Notes , pg 3-3
Dengan menulis dalam bentuk matriks maka didapat
24
Sx1 1 − 1 u1 = EA ………………………………(2.17) − 1 1 u 2 Sx 2
Persamaan (II.8) dapat ditulis menjadi
25
:
{ f e } = [ K ]{d ] ……...........…………………………(2.18) Dimana; Sx u EA 1 − 1 adalah matriks kekakuan, {d } = 1 { f } = 1 adalah gaya, [K ] = L − 1 1 Sx 2 u 2
adalah perpindahan.
Jika suatu batang terdiri atas dua elemen seperti tergambar ,yang dibebani dengan P (N) , dengan dimensi batang A( mm2) , dengan panjang batang L (cm), dengan Elastisitas E (N/mm2), maka gaya batang pada elemen a dan b dapat ditentukan dengan cara:
P
a
b 3
1 2
Gambar 2.8. Gaya bekerja pada elemen
Mencari kekakuan elemen Elemen a:
27
: 1 − 1 = La − 1 1
[Ka ] = EA
N A , mm
26
Elemen
24, 25 26, 27
b: 1 − 1 N = B La − 1 1 mm
[Kb] = EA Susatio, Yerri, Dasar-dasar Metode Elemen hingga, hal 45-46 Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Element Method, USU, Medan
Mencari kekakuan struktur
28
: Ka11 Ka 21
Ka12 d1 Ka 22 d 2
Kb11 Kb21
Kb12 d1 Kb22 d 2
Elemen a
{ fa} = [Ka ]{da} =
Elemen b
{ fb} = [Kb]{db} =
Tabel 2.1. Diskritisasi Elemen a dan b 29 Elemen a b
Pangkal/awal (1) simpul 1 simpul 2
Ujung/Akhir (2) simpul 2 simpul 3
Pada simpul 1 (elemen a pangkal ) gaya yang terjadi adalah f1 = Ka11. .d1 + Ka12 .d 2 ………………………………………..a Pada simpul 2 (elemen a ujung dan b awal ) gaya yang terjadi adalah f 2 = Ka 21. .d1 + Ka 22 .d 2 ……………………………………….b f 2 = Kb11. .d1 + Kb12 .d 2 ………………………………………..c Pada simpul 3 (elemen b ujung ) gaya yang terjadi adalah f 3 = Kb21. .d1 + Kb22 .d 2 ……………………………………….d Dari a, b, c,d dapat ditulis dengan cara : Titik simpul 1
f1 = Ka11. .d1 + .......Ka12 .d 2 + .......0.d 3
Titik simpul 2
f 2 = Ka 21. .d1 + (Ka 22 + Kb11 ).d 2 + Kb12 .d 3
Titik simpul 3
f 3 = 0........... + .......Kb21 .d 2 + Kb22 .d 3
Dengan matriks dapat ditulis : f1 Ka11 f 2 = Ka 21 f 0 3 28
Ka12 Ka 22 + Kb11 Kb21
0 d1 Kb12 d 2 ………………………………(2.19) Kb22 d 3
Matriks Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Element Method, USU, Medan
kekakuan struktur adalah [Ka ] = 1 0 d1 −A f1 A f 2 = − A A + B − B d 2 ………………………………………(2.20) f 0 B d 3 −B 3
untuk mencari nilai f1 dan f3 dengan f2 adalah P, maka dapat dihitung dengan menetapkan boundary coundition ( syarat batas ) d1 = d3= 0.
2.4.1.2.Menentukan Matriks Kekakuan terhadap sumbu Global Dalam Syarat keseimbangan sumbu yang digunakan bukanlah sumbu lokal, melainkan sumbu global, sehingga diperlukan matriks kekakuan terhadap sumbu global. Dengan cara transformasi koordinat maka akan didapat matriks kekakuan terhadap sumbu global seperti gambar 2.10
Gambar 2.9. Matriks kekakuan pada sumbu global
31
Untuk simpul 1 pada gambar 2.10 dapat dituliskan S x cos α { f1 } = 1 = S y1 sin α 30 31
30
:
sin α Sx1 = = [T ]{ f1 } ……………(2.21) cos α 0
R. B. Agarwal, FEA Lecture Notes , pg 3-5 Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Element Method, USU, Medan
Pada titik simpul 2 berlaku juga seperti
titik simpul 1 yang terlihat pada gambar 2.10 , untuk satu element berlaku
32
:
T 0 { f e } = [Te ]{ f e } → Te = …………….…..………….(2.22) 0 T Maka matriks kekakuan global adalah
33
:
[k ] = [T ][k ][T ] e
e
e
−1
e
karena [Te] merupkan matriks orthogonal, maka dapat dituliskan sebagai
34
:
[k ] = [T ][k ][T ]
T
e
cos α EA sin α ke = L 0 0
[ ]
0 0 0 0 0 cos α 0 sin α
e
e
e
0 1 1 − 1 − 1 cos α 0 1 1 − 1 − 1 0 0 − 1 − 1 1 1 0 0 − 1 − 1 1 1 0
sin α 0 0 0
0 0 cos α 0
0 0 sin α 0
Dengan menganggap Cos α = C, dan sin α = S, maka matriks kekakuan terhadap sumbu global adalah
35
:
C2 EA SC ke = L − C 2 − SC
[ ]
SC S2 − SC − S2
−C2 − SC C2 SC
− SC − S2 ……..…..…………….(2.23) SC S 2
2.4.1.3.Matriks Kekakuan Struktur Setelah kekakuan Lokal dan Global ditentukan, maka selanjutnya adalah menentukan kekakuan struktur. dari gambar 2.5 Setelah di diskritisasi dihasilkan gambar 2. berikut
Gambar 2.10. Titik simpul setiap elemen setelah didiskritisasi 36 Dari gambar 2.11. diatas, dapat dilihat Titik simpul setiap elemen, secara tabel digambarkan pada tabel 2.2 berikut ini.
Tabel 2.2. Menentukan Matriks Kekakuan terhadap sumbu Global Element a b c d e f
Simpul 1 (awal) 1 1 2 2 3 3
37
Simpul 2 (akhir) 2 3 3 4 4 5
g h i j k l m
4 4 4 5 6 6 7
5 6 7 7 7 8 8
[Ka], [Kd], [Kf], [Kh], [Kj], [Kl] sesuai dengan persamaan (2.12) adalah kekakuan pada elemen a, d, f, h, j, dan l dengan αa = αd = αf = αh =αj =αl = 0, untuk elemen c, g, dan k adalah [Kc], [Kg], [Kk] dengan αc =αg=αk = 270°, untuk elemen b, dan i adalah [Kb], [Ki] dengan αb = αi = α1, sedangkan untuk elemen e, dan m adalah [Ke], [Km] dengan αe = αm = α2. Untuk 36 37
R. B. Agarwal, FEA Lecture Notes , pg 3-18/3-19 Tarigan, Johannes, DR.-Ing, Prof, Bahan Kuliah Finite Element Method, USU, Medan
X − Y berlaku
38
system koordinat
:
fe1 K e11 = f e 2 K e21
K e12 d e1 = = [K e]{d e}……..…..…………….(2.24) K e22 d e2
{ fe} =
Sebagai syarat kompatibilitas dimana perpindahan antara dua titik harus sama, maka ditetapkan
39
:
{d {d {d {d {d {d {d {d
a1
} = {d } = {d } = {d } = {d } = {d } = {d } = {d } = {d
b1
} = {d } } = {d } = {d } } = {d } = {d } = {d } } = {d } = {d } = {d } = {d } } = {d } = {d } } = {d } = {d } } = {d } = {d } = {d } } = {d } 1
a2
c1
d1
2
b2
c2
e1
f1
3
d2
e2
g1
h1
i1
f2
g2
j1
5
h2
k1
l1
i2
j2
k2
l2
m2
8
6
m1
7
4
..…….(2.24)
Dimana dalam setiap titik simpul ( i ) harus memenuhi syarat keseimbangan. Pada 40
titik simpul ( i ) berlaku
:
f ix ....................................................……….(2.25) f iy
{ f i } =
Untuk keseragaman maka perlu dibuat definisi tanda dan arah gaya, seperti tergambar :
−
+
Gambar 2.11. Tanda dan defenisi Arah Gaya 41 Untuk masing-masing titik simpul, maka berlaku
{f } = {f {f } = {f {f } = {f {f } = {f {f } = {f {f } = {f {f } = {f {f } = {f
:
}+ { f } }+ { f }+ { f } }+ { f }+ { f }+ { f } }+ { f }+ { f }+ { f }+ { f } }+ { f }+ { f } }+ { f }+ { f } }+ { f }+ { f }+ { f } }+ { f }
1
a1
2
a2
c1
d1
3
b2
c2
e1
f1
4
d2
e2
g1
h1
5
f2
g2
j1
6
h2
k1
l1
7
i2
j2
k2
8
l2
Dengan demikian didapat
42
b1
m2
43
:
m1
i1
…..…………….(2.26)
{f } = [Ka ]{d }+ [Ka ]{d }+ [Kb ]{d }+ [Kb ] + {d } {f } = [Ka ]{d }+ [Ka ]{d }+ [Kc ]{d }+ [Kc ] + {d }+ [Kd ]{d }+ [Kd ] + {d } {f } = [Kb ]{d }+ [Kb ]{d }+ [Kc ]{d }+ [Kc ] + {d }+ [Ke ]{d }+ [Ke ] + {d } ........ + [Kf ]{d }+ [Kf ] + {d } {f } = [Kd ]{d }+ [Kd ]{d }+ [Ke ]{d }+ [Ke ] + {d }+ [Kg ]{d }+ [Kg ]{d } ........ + [Kh ]{d }+ [Kh ]{d }+ [Ki ]{d }+ [Ki ] + {d } {f } = [Kf ]{d }+ [Kf ]{d }+ [Kg ]{d }+ [Kg ] + {d }+ [Kj ]{d }+ [Kj ]{d } {f } = [Kh ]{d }+ [Kh ]{d }+ [Kk ]{d }+ [Kk ] + {d }+ [Kl ]{d }+ [Kl ]{d } {f } = [Ki ]{d }+ [Ki ]{d }+ [Kj ]{d }+ [Kj ] + {d }+ [Kk ]{d }+ [Kk ]{d } ........ + [Km ]{d }+ [Km ]{d } {f } = [Kl ]{d }+ [Kl ]{d }+ [Km ]{d }+ [Km ] + {d } 1
11
1
12
2
11
1
12
3
2
21
1
22
2
11
2
12
3
11
3
21
1
22
3
21
2
22
3
11
11
3
12
21
2
22
4
11
4
12
6
4
5
21
3
6
21
4
7
21
11
8
21
22
6
21
5
22
7
12
3
4
12
4
5
22
4
2
6
12
22
22
11
4
12
5
4
21
4
22
5
11
5
12
7
6
12
7
11
6
12
7
21
6
22
7
21
12
4
11
11
7
3
51
22
7
7
8
7
21
7
Maka Matriks kekakuan Struktur menjadi f 1 K a 11 + K b11 K a 12 K b12 K a 22 + K c 11 + K d 11 K c 12 f 2 K a 21 f Kb Kc 21 K b 22 + K c 22 + K e11 + K f 11 21 3 0 Kd 21 K e 21 K d 22 + K e 22 f4 = 0 0 K f 21 f5 f 0 0 0 6 0 0 0 f7 f 0 0 0 8
22
8
44
:
0 0 0 0 0 d 1 K d 12 0 0 0 0 d 2 K e12 K f 12 0 0 0 d 3 K g 12 K h12 K i12 0 d 4 + K g 11 + K h11 + K i11 K g 21 K f 22 + K g 22 + K j 11 0 K j 12 0 d 5 K h 21 0 K h 22 + K k 11 + K l 11 K k 12 + K l 12 0 d 6 K i 21 K j 21 Kk 21 K i 22 + K j 22 + K k 22 + K m11 K m12 d 7 0 0 Kl 21 K l 22 + K m 21 K m 22 d 8
{f } = [K ]{d }…………………………………………….…………………….(2.27) Dimana: {f } = vector dari gaya-gaya luar pada titik simpul
{d } = vector dari perpindahan ( displacement ) [K ] = matriks kekakuan →Simetri. 2.4.2 Syarat keseimbangan Pada persamaan (2.27) banyakanya persamaan sesuai dengan banyaknya displacement yang tidak diketahui. Untuk contoh gambar 2.1, maka perpindahan (displacement ) adalah: u1 = v1 = x1 = u 8 = v8 = 0 ………………………………………..……….….(2.28)
diketahui: 0 {d1 } = 0 ; 0
0 {d 8 } = x0 0
BAB III METODE ANALISA
3.1. Pendahuluan Matlab merupakan bahasa pemrograman yang hadir dengan fungsi dan karakteristik yang berbeda dengan bahasa pemrograman lain yang sudah ada lebih dahulu seperti Delphi, Basic maupun C++. Matlab merupakan bahasa pemrograman level tinggi yang dikhususkan untuk kebutuhan komputasi teknis, visualisasi dan pemrograman seperti komputasi matematik, analisis data, pengembangan algoritma, simulasi dan pemodelan dan grafik-grafik perhitungan.
Matlab hadir dengan membawa warna yang berbeda. Hal ini karena Matlab membawa keistimewaan dalam fungsi-fungsi matematika, fisika, statistik, dan visualisasi. Matlab dikembangkan oleh MathWorks, yang pada awalnya dibuat untuk memberikan kemudahan mengakses data matrik pada proyek LINPACK dan EISPACK. Saat ini Matlab memiliki ratusan fungsi yang dapat digunakan sebagai problem solver mulai dari simple sampai masalah-masalah yang kompleks dari berbagai disiplin ilmu.
Adapun kelebihan Matlab dari bahasa pemograman yang lainnya adalah kemudahan dalam mendefenisikan matriks, penurunan persamaan ( dengan fasilitas simbolik), dan fungsi –fungsi dengan jumlah yang cukup banyak. Dengan memamfaatkan kelebihan programMatlab, maka efisiensi dalam pembuatan program akan meningkat. 3.2. Lingkungan Kerja Matlab 3.2.1 Beberapa Bagian dari Dekstop tools Matlab • Current Directory Window ini menampilkan isi dari direktori kerja saat menggunakan Matlab seperti pada Gambar 3.1 Tampilan Layar dari Matlab, kita dapat mengganti direktori ini sesuai dengan tempat direktori kerja yang diinginkan. Default dari alamat direktori berada dalam folder works tempat program files Matlab berada. • Command History
Window ini berfungsi untuk menyimpan perintah-perintah apa saja yang sebelumnya dilakukan oleh pengguna terhadap matlab, dimana statemen itu dapat di copy dan dieksekusi. • Command Window Window ini adalah window utama dari Matlab. Disini adalah tempat untuk menjalankan fungsi, mendeklarasikan variable, menjalankan proses-proses , serta melihat isi variable. Setiap variable yang dimasukkan dalam command window langsung ditampilkan, bila terjadi kesalahan perintah maka akan muncul pesan error. • Workspace Workspace berfungsi untuk menampilkan seluruh variabel-variabel yang sedang aktif pada saat pemakaian Matlab. Apabila variabel berupa data matriks berukuran besar maka user dapat melihat isi dari seluruh data dengan melakukan double klik pada variabel tersebut. Matlab secara otomatis akan menampilkan window “array editor” yang berisikan data pada setiap variabel yang dipilih user Gambar berikut menampilkan tampilan antar muka dari Matlab.
3.2.2. Dasar Mengoperasikan Matlab
Setelah Matlab dijalankan, maka akan tampil interface matlab, seperti gambar 3.1
Gambar 3.1. Matlab Intervace 45
Kemudian dicoba operasi matematik sederhana, persamaannya adalah : C = a + b, dimana a= 2 dan b = 3. Langkah penerjaannya adalah sebagai berikut: 1. pada Commond area ketik perintah a =2 lalu <enter>, kemudian ketik b = 3 lalu <enter > 2. kemudian ketik c = a + b lalu <enter> 3. Hasilnya akan seperti gambar 1.2 dibawah ini:
Gambar 3.2. Tampilan operasi matematik sederhana
46
3.2.3.M-File M-File adalah deretan perintah Matlab yang disimpan dalam bentuk file. Karena itu Matlab menyediakan fasilitas editor dimana command yang dibuat dapat disimpan dan di eksekusi dalam bentuk script file dengan eksitensi *.m.
M-File diperlukan agar pembuatan program lebih efektif, sebagai contoh metode kalkulasi langsung seperti gambar 1.2 berlaku efektif command, input, dan variable yang digunakan sedikit, jika mau menghitung kembali harus mengetik ulang dengan command , input dan variable yang sama, namun dengan menggunakan Mfile cukup dengan memanggil nama M-File twersebut untuk menjalankan perintah yang telah didefenisikan.
Agar Matlab mengenali M-File yang dibuat, maka harus didefenisikan direktori dimana program tersebut berada, dengan cara : 1. Pada menu pulldonw klik File > Set Path
Gambar 3.3. Tampilan Set path 47
2. Akan muncul kotak dialog Set Path. Kemudian klik tombol Add Folder
Gambar 3.4. Tampilan Add Folder 48
3. Kotak dioalog browse for Folder akan muncul. Kemudian pilih folder dimana 47, 48
hasil print screen saat matlab dioperasikan
akan menyimpan M- File, lalu klik OK
4. Maka akan kembali kekotak dialog Set path. Dapat dilihat folder yang sudah disimpan dalm Matlab Search path window. Klik save untuk menyimpan informasi path lalu close
Gambar 3.5. Tampilan Folder baru 49
Kemudian dibuat M-File baru, dengan cara: 1. Pada menu pulldown klik file > New >M-File. 2. Maka akan keluar M-File Editor. command seperti gambar 3.6
49
hasil print screen saat matlab dioperasikan
Pada Editor tersebut diketik kembali
Gambar 3.6. Tampilan M-File Editor
50
3. Lalu simpan M-File tersebut dari menu pulldown klik File > Save As... 4. kotak dialog Save file as akan muncul,diberi nama contoh1.m. lalu klik save untuk kembali ke M- File Edotor 5. kemudian ditutup dari menu pulldown klik window > Close All untuk kembali ke command area 6. untuk mengeksekusi M-File tersebut, cukup dengan mengetik contoh1 pada Matlab command area lalu <enter>, hasilnya sebagai berikut :
Gambar 3.7. Tampilan Hasil Run M-File 51 50, 51
hasil print screen saat matlab dioperasikan
3.2.3.1. Membuat Fungsi Independent M-File. Fungsi independent dalam Matlab adalah M-File yang berisi sederetan perintah dengan variable input dan output yang telah didefenisikan, dengan tujuan agar program yang dibuat lebih fleksibel. Untuk jelasnya , contoh1.m yang baru dibuat merupakan program script yang dapat dieksekusi sewaktu-waktu. Namun sifat program tersebut tidak fleksibel karena
variabel yang telah ditentukan yaitu a = 2 dan b= 3, maka membuat fungsi yang fleksibel dengan cara : 1. Buat M-File baru dari menu pulldown klik file > New > M-File. 2. Pada Matlab Editor diketik perintah seperti dibawah ini: Function c = contoh2 (a,b); c = a + b; 3. Simpan M- File dengan cara dari menu pulldown kill File > Save as… lalu diberi contoh2.m. 4. Jalankan program dengan mengetik perintah a = 5, b = 3, c = contoh2 (a, b); lalu <enter> Maka hasilnya sebagai
berikut:
3.2.4.Debugging M-File Debugging adalah proses memeriksa kesalahan dari algoritma program yang dibuat. Proses tersebut dilakukan perlangkah dari program yang telah dibuat, untuk mengetahui kesalahan syntax atau run-time. Contoh: 1. Buat M-File dengan cara dari menu pulldown kill File > New > M-File, kemudian pada Matlab M-File Editor, diketik program dibawah ini; function c = contoh3 (a,b); c= a + b d= a * b e= a / b f =c/(a-b) 2. M- File disimpan dengan cara dari menu pulldown kill File > save As…
Kemudian diberi nama contoh3.m 3. Kemudian baris pertama pada program dipilih, lalu menu pulldown pilih Debug > set/clear Break Point, maka tanda lingkaran merah akan muncul di sebelah kiri perintah 4. kemudian editor ditutup dari menu pulldown klilk File > Exit Matlab untuk kembali ke command area. 5. dari Command area diketik : a = 5, b= 3, c = contoh3(a,b) kemudian < enter > 6. maka command prompt secara otomatis akan ditempatkan di file contoh3.m. Tanda panah berwarna hijau akan muncul yang berarti debugging siap dilakukan. 7. kemudian dari menu pulldown klik Debug >Step atau tekan F10. maka pada matlab akan menjalankan perintah pada baris tersebut dan hasilnya langsung ditampilkan pada layer, dan tanda anak panah secara otomatis akan langsung berpindah ke baris berikutnya. 8. untuk medebugging baris berikutnya, cukup menekan F10 sampai baris terkhir dari program.
Namun dikarenakan tahapan debugging ini cukup panjang, maka ada cara lain yang dengan memilih langsung command yang akan dieksekusi, kemudian tekan F10. sebagai contoh sebagai berikut: 1. Pilih baris ketiga dan keempat dari fungsi contoh3.m. 2. Kemudian untuk mengevaluasi ekspresi matematis tersebut, dari menu pulldown klik Text >Evaluate Selection atau trkan F10.
Fungsi Matlab Di dalam M File, kita dapat menuliskan fungsi-fungsi yang berisikan berbagai operasi sehingga menghasilkan data yang diinginkan. Bentuk penulisan nama fungsi Function [Nilai keluaran ] = namaFungsi (nilai masukan) % operasi dari fungsi %… %… Contoh penggunaan: fungsi yang akan dibuat bernama ‘testfungsi’ memiliki tiga nilai masukan ‘c,d,e’ dan dua nilai keluaran ‘a,b’: function [a,b] = testFungsi(c,d,e) %operasi yang dijalankan a = c + d +e; b = c * d *e; Selanjutnya Fungsi tersebut akan dijalankan melalui command window dengan nilai masukan ’10,2,4’. Perhatikan penulisan kurung siku ‘[ ]’ pada nilai keluaran dan kurung biasa ‘( )’ pada nilai masukan. >> [a,b] = testFungsi(10,2,3) a= 15 b=
60 Fungsi Matlab yang sifatnya built-in atau dalam bentuk M- File sangat banyak jumlahnya. Dikarenaka fungsi ini sangat banyak untuk mengetahui berbagai fungsi dasar; seperti matetmatika dasar, trigonometri, dan lain sebagainya dapat menggunakan bantuan, dengan mengetik help pada command area, sebagai petunjuk pemakaian perintah Matlab Daftar Help topic, topik bantuan akan muncul, seperti: Matlab\general= perintah serba guna Matlab\ops=operator dan karakter khusus Matlab\lang=pembuatan bahasa program Matlab\elmet=Matriks dasar dan manipulasi matriks Matlab\elfun=fungsi matematika dasar Matlab\spefun=Fungsi matematika khusus Sebagai contoh untuk mengetahui fungsi sinus dalam matrik ketik help sin: Help sin Maka hasilnya adalah: SIN
Sind
SIN (x) is the sine of the element of x. Overloaded methods Help sym/sin. Untuk mengetahui informasi yang lebih luas tentang sebuah fungsi pada matlab dapat menggunakan perintah lookfor. Beberapa fungsi umum yang berhubungan dengan script file adalah: clear all= Menghapus semua Variabel di memori
clear var= Menghapus variable var di memori clc= Membersihkan layer %= Symbol untuk menyisipkan komentar ;= Menonaktifkan mode display output load file name= Mengalokasikan dari file name yang berisi matriks (mxn)
ke
memori disp (‘string’)= Menampilkan string pada layar
3.3. 1. Fungsi Matematika lainnya Beberapa fungsi matematika lainnya yang dapat kita gunakan untuk operasi matematika antara lain sebagai berikut: • abs(x) : fungsi untuk menghasilkan nilai absolut dari x • sign(x) : fungsi untuk menghasilkan nilai -1 jika x<0, 0 jika x=0 dan 1 jika x>1 • exp(x) : untuk menghasilkan nilai eksponensian natural, x e • log(x) : untuk menghasilkan nilai logaritma natural x, ln x • log10(x) : untuk menghasilkan nilai logaritma dengan basis 10, x 10 log • sqrt(x) : untuk menghasilkan akar dari nilai x, x • rem(x,y) : untuk menghasilkan nilai modulus (sisa pembagian) x terhadap y
3.3.2.Analisa simbolik Analisa simbolik adalah suatu proses analisa perhitungan dengan memanipulasi simbol matematik tanpa menggunakan bilangan. Dalam matlab fasilitas ini mencakup sebagian besar operasi matematik diantaranya:
• syms⇒ mendefenisikan variable simbolik • int⇒ operasi intergral • diff⇒ operasi diffrensial • simple⇒ menyederhanakan ekspresi matematis • solve⇒ solusi persamaan aljabar • pretty⇒ membuat ekspresi matematis mudah dilihat contoh membuat matriks A dengan anggotanya a, b, c, dan d. Kemudian menghitung determinan A, invers A, dan membuktikan bahwa A dikali invers A adalah matriks identitas. Perintahnya adalah: Syms a b c d A =[ a b; c d] dA=det (A) iA= inv (A) I = A*iA Is=simple (I)
Hasilnya adalah : dA = a*d-b*c iA= [ d/(a*d-b*c), -b/a(a*d-b*c)] [ -c/(a*d-b*c), a /(a*d-b*c)] I= [ a*d/(a*d-b*c)-b*c/(a*d-b*c0, [0, a*d/(a*d-b*c)-b*c?(a*d-b*c)] Is=
0]
[ 1, 0] [ 0, 1]
untuk mencetak hasil program dengan formatnya adalah sebagai berikut: %printf⇒ mencetak output dengan format tertentu % i⇒ format integer % f⇒ format decimal % e⇒ format eksponen % c⇒ format karakter % s ⇒ format string ( yaitu rangkaian karakter ) %\n⇒ format ganti baris
3.4. Interupting dan Terminating dalam Matlab Untuk menghentikan proses yang sedang berjalan pada Matlab dapat dilakukan dengan menekan tombol Ctrl-C. Sedangkan untuk keluar dari Matlab dapat dilakukan dengan menuliskan perintah exit atau quit pada comamnd window atau dengan menekan menu exit pada bagian menu file dari menu bar
3.5. Variabel Pada Matlab Matlab hanya memiliki dua jenis tipe data yaitu Numeric dan String. Dalam Matlab setiap variabel akan disimpan dalam bentuk matrik. User dapat langsung menuliskan variabel baru tanpa harus mendeklarasikannya terlebih dahulu pada command window Contoh pembuatan variabel pada Matlab:
>> varA = 1000 varA = 1000 >> varB = [45 2 35 45] varB = 45 2 35 45 >> varC = 'test variabel' varC = test variabel
Penamaan variabel pada Matlab bersifat caseSensitif karena itu perlu diperhatikan penggunaan huruf besar dan kecil pada penamaan variabel. Apabila terdapat variabel lama dengan nama yang sama maka matlab secara otomatis akan me-replace variabel lama tersebut dengan variabel baru yang dibuat user.
3.6. Penulisan Matriks Suatu matriks n x k adalah suatu array segi empat bilangan yang mempunyai n baris dan k kolom. Cara menyatakan suatu matriks dalam Matlab sama seperti menyatakan suatu vector. Dalam membuat suatu data matriks pada Matlab, setiap isi data harus dimulai dari kurung siku ‘[‘ dan diakhiri dengan kurung siku tutup ‘]’ Umumnya secara langsung, apabila anda melihat bahwa suatu matriks terdiri dari vector baris atau vector kolom. Tanda koma atau spasi untuk memisahkan elemen dalam satu baris, dan titil koma digunakan sebagai pemisah baris, misalnya; Matriks A dan Vektor B dengan nilai:
3 5 A= dan B [ 1 2 3 4 5 ] 2 1 Cara penulisan dalam Matlab adalah: A=[35 21
atau A= [ 3 5 ; 2 1]
B = [1 2 3 4 5 ]
atau B= [ 1 2 …
345] 1 2 3 Matiks A = 4 5 6 maka dalam Matlab dinyatakan sebagai berikut: 7 8 9
>> A= [1 2 3; 4 5 6; 7 8 9] A= 123 45 6 789 Atau >> A = [1,2,3; 4,5,6; 7,8,9] A= 123 45 6 789 Atau >> A =[ 1 2 3 456 789] A= 123 45 6 789
Jika elemen matriks berurut, dapat digunakan notasi titik dua ( : ) sebagai berikut:
>> A = [ 1 : 3; 4 : 6; 7 : 9 ] atau >> A = [ 1 : 1 : 3 ; 4 : 1 : 6 ; 7 : 1 : 9 ] A= 123 45 6 789 Dari contoh diatas dapat diketahui notasi titik dua didalam Matlab dapat digunakan untuk memanipulasi matriks secara efisien. Tanda tersebut dapat digunakan untuk menghasilkan vector yang elemen-elemennya berjarak satu dengan berikutnya, selain itu juga notasi titik dua juga dapat digunalkan untuk merujuk sekumpulan elemen dalam suatu matriks, misalnya untuk merujuk beberapa kolom atau baris suatu matriks.contoh dengan ekspresi 1 : 5 pada matlab akan menghasilkan vetor [ 1 2 3 4 5], ekspresi 0.2 : 0.2 : 1.2 akan menghasilkan vector [0.2, 0.4, 0.6, 0.8, 1.0, 1.2] dan ekspresi 5: -1 :1 akan menghasilkan [ 5 4 3 2 1]. Notasi titik dua ( : ) dapat digunakan untuk merujuk beberapa elemen (submatriks) dari suatu matriks, Jika A adalah matriks berukuran m x n, maka : A(1:k,m)adalah submatriks A yang terdiri atas elemen-elemen pada kolom ke-m baris ke -1sampai ke-k. A(:,[2 4])adalah submatriks A yang terdiri atas kolom ke-2 dan ke-4 A(:,k) adalah submatriks A yang memuat semua eleme pada kolom ke-k. A(k,:)adalah baris ke-k matriks A. A(2:5,:)adalah submatriks A yang terdiriatas baris atas baris ke-2 sampai pada matriks A. A(:,:) sama dengan Matriks A itu sendiri. A(:) mengubah matriks menjadi sebuah vector kolom berukuran mn x 1
Sebagai tambahan, apabila B adalah suatu matriks, maka perintah
ke-5
A (:,[2 4 5]) =B(:,2:3) akan mengganti kolom ke-2, 4, dan 5 matriks A dengan kolom ke-1, 2, 3 matriks B Untuk memanggil isi dari suatu data matriks, gunakan tanda kurung ‘()’ dengan isi indeks dari data yang akan dipanggil. Contoh penggunaan : >> c(2,2) ans = 0.4860
Untuk pemanggilan data berurutan seperti a(1,2,3) dapat disingkat dengan menggunakan tanda titik dua ‘:’ sehingga menjadi a(1:2). Penggunaan tanda titik dua ‘:’ juga dapat digunakan untukmemanggil data matriks perbaris atau perkolom. Contoh penggunaan: c(2:5) = memanggil data matrik baris 2 sampai baris 5 a(1,:) = memanggil data matriks pada baris pertama b(:,3) = memanggil data matris pada kolom ketiga
3.6.1.Matriks Khusus Matlab menyediakan beberapa fungsi yang dapat kita gunakan untuk menghasilkan bentuk-bentuk matriks khusus yang diinginkan. Fungsi-fungsi tersebut antara lain: • E: matriks elemen kosong • zeros : untuk membuat matriks yang semua datanya bernilai 0 • ones : matriks yang semua datanya bernilai 1
• rand : matriks dengan data random dengan menggunakan distribusi uniform • randn : matris dengan data random dengan menggunakan distribusi normal • eye : untuk menghasilkan matriks identitas • Magic : matriks bujur sangkar ajaib • Pascal : matriks simetris segitiga pascal Contoh penggunaan fungsi-fungsi diatas: • Matriks elemen kosong >> E = [ ] E= [ ] • Matriks nol 2 x 3 >> a = zeros(2,3) a= 0
0
0
0
0
0
• Matriks satuan >> b = ones(1,3) b= 1
1
1
• Matriks random 2 x 2 >> c = rand(2,2) c= 0.9501 0.6068 0.2311 0.4860 >> d = rand (1,4) d= 0.8214 0.4447 0.6154 0.7919
• Matrik Identitas
>> I = eye(3,3) I= 1
0
0
0
1
0
0
0
1
• Matriks pascal >> A= pascal (3) A= 1
1
1
1
2
2
1
3
6
• Matriks magic >>B=magic (3) B= 8
1
6
3
5
7
4
9
2
• Perkalian matriks dengan matriks identitas >> x= [ 2; -1; 7 ] x= 2 -1 7 >> I*x ans = 2 -1 7
• Membuat matriks diagonal
>> r = [ 1 3 -2] r= 1
3
2
>>R = diag (r ) R= 1
0
0
0
3
0
0
0 -2
• Mengekstrak diagonal matriks >> D [ 1 2 3; 4 5 6; 7 8 9 ] D= 1
2
3
4
5
6
7
8
9
>>diag (D) ans= 1 5 9
• Penggabungan matriks >>A = [4; -1] A= 4 -1 >> B = [ -1 3 ] B= -1
3
>> C = [ A B’] C= 4
-1
-1
3
>> size (C) ans = 2
2
Bebagai bentuk operator matematis dan array yang berlakut pada Matlab dalam operasi dan fungsi pada matriks, sebagai berikut: ⇒ pembentukan matriks vector dari a ke c dengan selisih b
• A:b:c •
+
⇒ perjumlahan matriks
•
-
⇒ pegurangan matriks
•
*
•
.*
⇒ perkalian perbaris /elemen yang sama
•
^
⇒ perpangkatan matriks
•
.^
⇒ perpangkatan perbaris/elemen yang sama
•
/
⇒ pembagian matriks
•
./
⇒ pembagian perbaris/elemen yang sama
•
A‘
⇒ perkalian matriks
⇒ Transpose matriks A
• det (A)
⇒ determinan matriks A
• inv (A)
⇒ invers matriks A
• size (A)
⇒ ukuran baris dan kolom matriks A
• trace (A)
⇒ trace/jumlah elemen diagonal matriks A
• max (A)
⇒ nilaii maksimun matriks A per kolom
• length (A)
⇒ panjang matriks A
• find (A==0) • ismember (A,B)
⇒ mencari isi matriks A bernilai 0 ⇒ membandingkan matriks A dan B
• reshape (A,rm,rn)⇒ mengubah dimensi matriks A ke Arm x rrn • sort (A,dim)⇒ mensortir isi matriks A dari kecil ke besar dimana dim = 1 disortis dalam kolom, dim =2 disortir dalam baris • sortrows (A,COL)⇒mensortir baris dari matriks A dari kecil ke besar dimana COL = kolom acuan
3.7. Operator Beberapa penggunaan operator aritmatika antara dua operand (A dan B) ditunjukkan berikut ini
3.7.1.Operasi Bentuk Aljabar Bentuk Matlab Perkalian A x B A * B 5*3 Pembagian A ÷ B A ¥ B 2¥3 Penambahan A + B A + B 1+2 Pengurangan A – B A – B 4-3 Eksponensial B A A ^ B 4^3
3.7.2.Operator Keterangan A < B A lebih kecil dari B A > B A lebih besar dari B A < = B A lebih kecil atau sama dengan B
A > = B A lebih besar atau sama dengan B A = = B A sama dengan B A ~ = B A tidak sama dengan B
Sebenarnya masih banyak fasilitas-fasilitas lain yang dimiliki oleh matlab. Tugas-tugas matematika yang membutuhkan analisis ataupun perhitungan yang kompleks dan rumit
dapat
kita implementasikan dengan mudah dengan
memanfaatkan fasilitas yang tedapat di matlab.
3.8 Grafik 2D (dua dimensi) dan 3D (tiga dimensi) Matlab mempunyai fasilitas untuk mencetak analisa dalam grafik 2D atau 3D, perintah-perintahnya,antara lain: • figure⇒ membuat bingkai gambar • gcf⇒ mengethui penyimpan gambar • refresh⇒ memperbaharuigambar • close all⇒ menutup bingkai gambar • plot⇒ menggambar grafik 2D pada bingkai gambar • plot3⇒ menggambar grafik 3D pada bingkai gambar • mesh⇒ menggambar permukaan 3D • axis on ⇒ memperlihatkan garis sumbu pada gambar • axis equal⇒ mengatur faktor skala sumbu menjadi sama • xlim⇒ menentukan batas-batas sumbu x • ylim⇒ menentukan batas-batas sumbu y • zlim⇒ menentukan batas-batas sumbu z
• grid on⇒ memperlihatkan garis Bantu pada gambar • hold on⇒ mempertahankan grafik yang berlaku pada bingkai gambar
contoh. Plot matriks Ax dan Ay yang merupakan koordinat dari geometri berbentuk kudakuda atap. Perintahnya adalah: clear all close all clc xj=[0 5 10 5 5 2.5 2.5 7.5 7.5 5 2.5 5 7.5] xk=[2.5 7.5 7.5 2.5 5 5 0 10 5 2.5 2.5 7.5 7.5] yj=[0 3 0 0 0 1.5 0 1.5 0 0 0 0 0] yk=[1.5 1.5 0 0 3 3
0 0 0 1.5 1.5 1.5 1.5]
AX=[xj' xk'] AY=[yj' yk'] grid off axis off axis ([min(xj) max(xj)min(yj) max(yj)]) figure(3) for i =1:size(xj,2) hold on plot(AX(i,:),AY(i,:)) end
axis equal title('underformed structure')
3.9. Kendali program Dalam bahasa pemrograman, kontrol program adalah perintah yang mengatur jalannya program berdasarkan kondisi tertentu. Matlab memiliki beberapa jenis statement yang dapat digunakan untuk mengatur aliran data pada fungsi yang akan dibuat, diantaranya: 1. If, Else, End Perintah if-else-end digunakan untuk mengambil keputusan yang harus dikerjakan berdasarkan hasil tes rasional, apakah ekspresi tersebut benar maupun salah. Bentuk dasar penggunaan statement jenis ini adalah sebagai berikut: Bentuk I: if ekspresi1 instruksi1 instruksi2 ... end contoh penggunaan: >>a = 10; >> if ( a > 10 ) Disp(‘a bilangan positif ‘); end a bilangan positif
bentuk II: if ekspresi1 blok stetament 1 else blok stetament2 end contoh penggunaan: >> suhu = 50; >> if ( suhu > 100 ) disp (‘sudah mendidih’); else disp(‘temperatur Ok.’); end; Temperatur OK
bentuk III: if ekspresi1 blok stetament 1 elseif ekspresi2 blok stetament2 ... elseif ekspresiN blok stetamentN
end contoh penggunaan: >>tinggi = 165; >>if (tinggi > 190) disp(‘sangat tinggi’); elseif ( tinggi >170) disp (‘tinggi’); elseif ( tinggi < 150) disp (‘pendek’); else disp(‘rata-rata’); end rata-rata
2. Switch - case Perintah Switch – case mememungkin sederetan perintah yang harus dikerjakan dengan argument yang sama. Bentuk umumnya: switch ekspresi1 case pilihan1 blok statement1 case pilihan2 blok statement2 …
case pilihan-N blok statement-N otherwise blok statement lainnya end 3. for-end Perintah for –end memungkinkan mengulang blok instruksi sebanyak jumlah yang diinginkan. Bentuk umumnya: for i = array (awal : langkah: akhir) blok instruksi end 4. while Perintah while pada prinsipnya sama dengan perintah for, yang digunakan untuk mengulang blok perintah sepanjang ekspresi bernilai TRUE. Bentuk umumnya: While ekspresi Blok instruksi end 5. continue Perintah continue dapat digunakan untuk mengulang kembali dari awal loop/perulangan sebelum kondisi yang menyebabkan mengulang kembali dari perulangan ditemukan. Bentuk umumnya: continue
6. break Perintah break dapat digunakan untuk mengakhiri loop/perulangqn sebelum kondisi yang menyebabkan keluar perulangan ditemukan Bentuk umumya: break
3.10. Langkah-langkah penyelesaian metode elemen hingga pada Truss elemen dengan Matlab.
1. Membuat File fungsi assembly (assembly.m) File ini berfungsi untuk merangkai berdasarkan informasi baris dan kolom pada bahasa mesin (assembly) sehingga dapat mempercepat prose analisis matriks. 2. Membuat File fungsi extract (extract.m) File ini berfungsi untuk mengekstrak matriks (mxm) ke vektor matriks (mxm) x 1 dengan indeks informasi baris dan kolom. 3. Membuat File fungsi ldata (ldata.m) File ini berfungsi untuk membaca masukan data berupa beban terpusat dan beban batang, kekangan dari perletakan, dof /derajat kebebasan setiap simpul. 4. Membuat File fungsi sdata (sdata.m) File ini berfungsi untuk membaca masukan data untuk jenis struktur ( dalam hal ini truss 2D ), koordinat, batang elastisitas, luas penampang dan inersia penampang) 5. Membuat fungsi Input Data Elemen truss 2D
File ini berisi data-data umum yang diberikan mengenai Element truss, seperti Property
batang,
titik
koordinat,
element,
dan
gaya-gaya
yang
bekerja.
6. Membuat File fungsi t2d_stiff (t2d_stiff.m) File ini berfungsi untuk membentuk matriks kekakuan sumbu lokal, matriks transformasi dan matriks kekakuan sumbu global, serta matriks struktur.
7. Membuat File fungsi analysis_result (analysis_result..m) File ini berfungsi untuk menganalisa matriks kekakuan sumbu kekakuan sumbu global dan matriks vektor beban dan dengan syarat batas dihitung reaksi perletakan dari struktur serta perpindahan nodal serta gaya-gaya dalam pada setiap elemen. 8. Membuat File fungsi print_result (print_result..m) File ini berfungsi untuk menampilkan hasil berupa reaksi perletakan, perpindahan nodal, gaya momen, gaya geser dan gaya normal pada monitor dalam bentuk text.
Setelah Program tersebut diatas selesai dibuat pada M-File, maka File fungsi Input Data Elemen truss 2D, dieksekusi (run ) untuk menampilkan hasil pemograman.
BAB IV APLIKASI PADA TRUSS ELEMENT
Dalam bab ini akan diberikan suatu contoh perhitungan rangka (truss) 2 dimensi seperti pada Gambar 4.1, dengan 8 titik simpul dan 13 elemen, hasil yang diperoleh dari program dengan menggunakan matlab dibandingkan dengan perhitungan dengan mikrosoft excel 2003 Adapun data-data yang akan dipergunakan dalam analisa tersebut adalah :
4.1 Contoh Rangka ( Gambar 4.1) : 1. Panjang bentangL = 3 m = 300 cm 2. Tinggi bangunan (kolom)H= 5 m = 500 cm 3. Beban Vertikal P1= 5000 kg P2=7500 kg 4. Ukuran penampang
A1 ; B x H = 20x30 cm2
A2 ; B x H = 20x15 cm2 A3; B x H = 20x40 cm2 7. Modulus Elastisitas beton E 8. Perletakan sendi-roll
= 2.09 x 106kg/cm2
Gambar 4.1. Struktur rangka
4. 2. Pemrograman Matlab Sebagai data masukan pada Matlab, dibuat M-file baru kemudian ketik material properti, informasi koordinat, informasi element, dan kondisi tumpuan. Untuk model soal pada gambar 4.1 diatas, data masukan untuk elemen truss 8 titik buhul dengan 13 elemen adalah sebagai berikut :
1. Fungsi Assembly, dengan program sebagai berikut : function[A]=assembly; load scratch_file.txt; tA=scratch_file; clear scratch_file; m=max(tA(:,2)); A=zeros(m,m); %B=zeros(size(tA)) B=A;C=A; for i=1:length(tA); C=A; B(tA(i,2),tA(i,3))=tA(i,1); A(tA(i,2),tA(i,3))=B(tA(i,2),tA(i,3))+C(tA(i,2),tA(i,3)); end; delete scratch_file.txt;
2. Fungsi Exact, dengan program sebagai berikut : function[Aex,Bex,Cex]=extract(K,index) m=size(K,1); ind=zeros(m,m);Aex=zeros(m*m,1);Bex=Aex;Cex=Aex; for i=1:m; ind(i,:)=index; end; for i=1:m; for j=1:m; im=j+m*(i-1); Aex(im)=K(i,j); Bex(im)=ind(j,i); Cex(im)=ind(i,j); end; end; y=[Aex Bex Cex]; fid=fopen('scratch_file.txt','a+'); for i=1:m*m; fprintf(fid,'%12.8f %6.2f %6.2f\n',y(i,:)); end; clear K index; fclose(fid);
3. Fungsi ldata, dengan program sebagai berikut : function[IR,IF,Support]=ldata(Support,dof); % Menentukan besar ukuran matriks [id,jd]=size(dof); Support=sortrows(Support,1); Restraint=zeros(id,jd); Restraint(:,1)=dof(:,1); % Check titik sebagai tumpuan atau tidak
i=ismember(Restraint(:,1),Support(:,1)); % Menentukan indeks jika titik adalah suatu tumpuan ii=find(i==1); % Pakai dof dari titik sebagai perletakan Restraint(ii,2:jd)=Support(:,2:jd); % ubah ke vektor iR=reshape(Restraint(:,2:jd),1,(jd-1)*id); iD=reshape(dof(:,2:jd),1,(jd-1)*id); % Bentuk matriks vektor IF dan IR iR0=find(iR==0); iR1=find(iR==1); IF=sort(iD(iR0)); IR=sort(iD(iR1));
4. Fungsi Sdata, dengan program sebagai berikut : function[dof,index,coord,element]=... sdata(prop,element,coord,type) % Menyiapkan data untuk masukan coord=sortrows(coord,1); element=sortrows(element,1); m=size(element,1); n=size(coord,1); switch type; case{'t2d','T2D'}; nd=2; % untuk rangka 2D end; dof=zeros(n,nd+1); index=zeros(m,nd*2); switch type; case{'t2d','T2D'}; for ii=1:n;
i=coord(ii,1); %
J
J1
J2 J3
dof(ii,:)=[i 2*i-1 2*i]; end; for ii=1:m; %
J J1 J2 J3
K K1 K2 K3
index(ii,:)=[dof(element(ii,2),2:3)... dof(element(ii,3),2:3)]; end; end
5. Fungsi Input Data Elemen truss 2D, dengan program sebagi berikut : clear all,clc %Data Umum type='t2d' %property i E A prop=[1 2.09e6 600 2 2.09e6 300 3 2.09e6 800 %Koordinat
x
y
coord =[ 1
0
0
2
600
0
3
600
500
4
1200 0
5
1200 500
6
1800 0
7
1800 500
8 %
2400 0]
EL J1 J2 Prop
element=[ 1 1 2 3 2 1 3 2
3 2 3 2 4 2 4 3 5 3 4 2 6 3 5 1 7 4 5 2 8 4 6 3 9 4 7 2 10 5 7 1 11 6 7 2 12 6 8 3 13 7 8 2] % Perletakan Support=[1 1 1 8 0 1]; % Gaya P yang bekerja %
J X Y
JL= [2 0 10000 3 0 5000 4 0 10000 5 0 7500 6 0 10000 7 0 5000] % Beban Merata AML=[0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0
0 0;
0 0 0 0
0 0; 0 0]
%Memanggil Fungsi [dof,index,coord,element]=sdata(prop,element,coord,type); [S,Sm,SmS,Cx,Cy,RT,L,A,Joint,Xj,Xk,Yj,Yk]=... t2d_stiff(prop,element,coord,index); [IR,IF,Support]=ldata(Support,dof); [DF,AR,AM]=analysis_result(element,dof,index,IF,IR,... S,SmS,JL,AML,RT,Support,type) [joint_disp,support_reaction,beam_endforces]=... print_result(dof,Support,element,IF,IR,DF,AR,AM,type);
6. Fungsi t2f_stiff, dengan program sebagi berikut : function[S,Sm,SmS,Cx,Cy,RT,L,A,Joint,Xj,Xk,Yj,Yk]=... t2d_stiff(prop,element,coord,index); E=prop(element(:,4),2); % Modulus elastisitas A=prop(element(:,4),2); % Luas penampang Joint=coord(:,1); m=size(element,1); % Bentuk matriks Xi Xj dan Yi Yj Xj=zeros(1,m); Xk=Xj; Yj=Xj; Yk=Xj; for i=1:m; ij=find(Joint==element(i,2)); ik=find(Joint==element(i,3));
Xj(i)=coord(ij,2); Xk(i)=coord(ik,2); Yj(i)=coord(ij,3); Yk(i)=coord(ik,3); end; % Menghitung panjang elemen L=sqrt((Xk-Xj).^2+(Yk-Yj).^2); Cx=(Xk-Xj)./L; Cy=(Yk-Yj)./L; % Bentuk matriks kekakuan 16x16 SmS=zeros(4,4,m); Sm=SmS; RT=SmS; for i=1:m; R=[Cx(i) Cy(i); -Cy(i) Cx(i) ]; RT(:,:,i)=[R zeros(2,2); zeros(2,2) R]; % Matriks rotasi SmS(:,:,i)=E(i)*A(i)/L(i)*[1 0 -1 0;0 0 0 0;... -1 0 1 0;0 0 0 0] Sm(:,:,i)=RT(:,:,i).'*SmS(:,:,i)*RT(:,:,i); [Aex,Bex,Cex]=extract(Sm(:,:,i),index(i,:)); end; disp('Bentuk matriks kekakuan'); S=assembly;
7. Fungsi Analisa Struktur (analysis_result) , dengan program sebagai berikut : function[DF,AR,AM]=analysis_result(element,dof,index,... IF,IR,S,SmS,JL,AML,RT,Support,type) clear Sff Srf; ndof=length([IF IR]); % mencari jumlah derajat kebebasan
% Membentuk matriks Sff Sff=S(IF,IF); % Membentuk matriks Srf Srf=S(IR,IF); % Membentuk matriks beban titik (AJ) i=1:size(JL,1); AJ=zeros(1,ndof); switch type; case{'t2d','T2D'}; AJ(dof(JL(i),2))=JL(i,2); AJ(dof(JL(i),3))=JL(i,3); end; % Membentuk matriks beban titik ekivalen AE [mi,ni]=size(index); % transpose ke..xm matriks (m=jumlah elemen) AMLT=AML'; AE=zeros(ndof,1); for i=1:size(element,1); Ji=index(i,:); switch type; case {'t2d','T2D'}; AMLi=[AMLT(1,i);AMLT(2,i);AMLT(3,i);AMLT(4,i)]; end; AE(Ji)=AE(Ji)-RT(:,:,i)'*AMLi; end; AE=AE'; % Menghitung Reaksi perletakan (AR) dan perpindahan titik (DF) AC=AJ+AE; AFC=AC(IF)'; ARC=AC(IR)'; DF=Sff\AFC;
AR=-ARC+Srf*DF; % Menghitung Gaya batang Dj=zeros(1,ndof); AM=zeros(ni,mi); Dj(IF)=DF; for i=1:size(element,1); DM=RT(:,:,i)*Dj(index(i,:))'; AM(:,i)=AML(i,:)'+SmS(:,:,i)*DM; end; AM=AM.';
8. Fungsi Menampilkan Hasil Analisa (print_result), dengan program sebagai berikut: function[joint_disp,support_reaction,beam_endforces]=... print_result(dof,Support,element,IF,IR,DF,AR,AM,type) % Print hail keluaran % Print Reaksi Perletakan [id,jd]=size(dof); [iS,jS]=size(Support); reaction=zeros(id,jd); support_reaction=zeros(iS,jd); reaction(:,1)=dof(:,1); for i=1:size(AR,1); [ii,jj]=find(dof(:,2:jd)==IR(i)); reaction(ii,jj+1)=AR(i); end; for i=1:size(Support,1); ii=find(reaction(:,1)==Support(i,1)); support_reaction(i,:)=reaction(ii,:); end; % Print perpindahan titik untuk semua dof joint_disp=zeros(size(dof)); joint_disp(:,1)=dof(:,1); bb=ismember (dof,IF); ii=find(bb==1); for i=1:size(DF,1); [ii,jj]=find(dof(:,2:jd)==IF(i)); joint_disp(ii,jj+1)=DF(i); end;
switch type; case {'t2d','T2D'}; disp(' '); disp('TABEL PERPINDAHAN TITIK'); disp('Titik Dx Dy'); fprintf('%5.0f %12.4f %12.4f\n', joint_disp.'); % Print Reaksi perletakan disp(' '); disp('TABEL REAKSI PERLETAKAN'); disp('Titik Rx Ry '); fprintf('%5.0f %12.4f %12.4f\n',support_reaction.'); % Print Gaya Batang beam_endforces=[element(:,1) AM]; disp(' '); disp('TABEL GAYA BATANG'); disp('Batang Fx1 Fy1 Fx2 Fy2 '); fprintf('%5.0f %12.4f %12.4f %12.4f\n',beam_endforces.'); case {'p2d','P2D'}; disp(' '); disp('TABEL PERPINDAHAN TITIK'); disp('Titik Dx Dy Rz'); fprintf('%5.0f %12.4f %12.4f\n', joint_disp.');
%12.4f
% Print Reaksi perletakan disp(' '); disp('TABEL REAKSI PERLETAKAN'); disp('Titik Rx Ry Mz'); fprintf('%5.0f %12.4f %12.4f\n',support_reaction.'); % Print Gaya Batang beam_endforces=[element(:,1) AM]; disp(' '); disp('TABEL GAYA BATANG'); disp('Batang Fx1 Fy1 Mz1 Fx2 Mz2'); fprintf('%5.0f %12.4f %12.4f %12.4f %12.4f %12.4f\n',beam_endforces.'); case {'t3d','T3D'}; disp(' '); disp('TABEL PERPINDAHAN TITIK'); disp('Titik Dx Dy Dz'); fprintf('%5.0f %12.4f %12.4f\n', joint_disp.'); % Print Reaksi perletakan
Fy2 %12.4f
disp(' '); disp('TABEL REAKSI PERLETAKAN'); disp('Titik Rx Ry Rz'); fprintf('%5.0f %12.4f %12.4f %12.4f\n',support_reaction.'); % Print Gaya Batang beam_endforces=[element(:,1) AM]; disp(' '); disp('TABEL GAYA BATANG'); disp('Batang Fx1 Fy1 Fz1 Fx2 Fy2 Fz2'); fprintf('%5.0f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f\n',beam_endforces.'); case {'p3d','P3D'}; disp(' '); disp('TABEL PERPINDAHAN TITIK'); disp('Titik Dx Dy Dz Rx Ry Rz'); fprintf('%5.0f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f\n', joint_disp.'); % Print Reaksi perletakan disp(' '); disp('TABEL REAKSI PERLETAKAN'); disp('Titik Rx Ry Rz Mx My fprintf('%5.0f %12.4f %12.4f %12.4f %12.4f %12.4f\n',support_reaction.');
Mz'); %12.4f
% Print Gaya Batang beam_endforces=[element(:,1) AM]; disp(' '); disp('TABEL GAYA BATANG'); disp('Batang Fx1 Fy1 Fz1 Mx1 My1 Mz1 Fx2 Fy2 Fz2 Mx2 My2 Mz2') fprintf('%5.0f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f %12.4f\n',beam_endforces.'); end;
Setelah semua fungsi-fungsi diatas dibuat pada M-File dan di simpan, sesuai dengan eksistensinya, maka Program dapat dijalankan, dengan membuka File Input Data
Elemen truss 2D, dan dieksekusi (run ) maka akan tampil hasil keluaran Matlab sebagai Out put program. Tampilan Output program pada command window sebagai berikut : type =
t2d prop = 1
2100000
600
2
2100000
300
3
2100000
800
coord = 1
0
0
2
600
500
3
600
0
4
1200
500
5
1200
0
6
1800
0
7
1800
500
8
2400
0
element = 1
1
2
3
2
1
3
2
3
2
3
2
4
2
4
3
5
3
4
2
6
3
5
1
7
4
5
2
8
4
6
3
9
4
7
2
10
5
7
1
11
6
7
2
12
6
8
3
13
7
8
2
JL = 2
0
10000
3
0
5000
4
0
10000
5
0
7500
6
0
10000
7
0
5000
AML = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) = 1.0e+009 * 5.6464 0
0 -5.6464 0
-5.6464 0 SmS(:,:,2) =
0 0
0
0 0
5.6464 0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,3) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,4) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,5) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,6) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,7) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,8) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,9) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,10) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) = 1.0e+009 * 5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,2) = 1.0e+009 * 7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
7.3500 0
SmS(:,:,3) =
0
0 0
0
0
0
0
SmS(:,:,4) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,5) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,6) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,7) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,8) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,9) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,10) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) = 1.0e+009 * 5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,2) = 1.0e+009 * 7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,3) = 1.0e+009 * 8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,5) = 0
0
0
0
0
0
0
0
0
8.8200 0
SmS(:,:,4) =
0
0 0
0
0
0
0
0
0
0
0
SmS(:,:,6) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,7) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,8) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,9) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,10) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) = 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) = 1.0e+009 * 5.6464 0
0 -5.6464 0
-5.6464
0
0
0 0
0 0
5.6464 0
0 0
SmS(:,:,2) = 1.0e+009 * 7.3500 0
0 -7.3500 0
0
0 0
-7.3500
0
0
0
7.3500 0
0 0
SmS(:,:,3) = 1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,6) =
0
7.3500 0
SmS(:,:,5) =
0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,7) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,8) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,9) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,10) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200 0
0 -8.8200 0
-8.8200
0
0
0
SmS(:,:,4) =
0
1.0e+009 *
0 0
8.8200 0
0 0
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,7) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5.6464 0
SmS(:,:,6) =
0
0 0
SmS(:,:,8) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,9) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,10) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464
0
0
0 0
0 0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500 0
0 -7.3500 0
0
0 0
-7.3500
0
0
0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500
0
0
0 0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464 0
0 0
0
0 0
5.6464 0
0 0
SmS(:,:,6) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,8) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,9) =
0
0
0
0
0
0
0
0
0
7.3500 0
SmS(:,:,7) =
0
0 0
0
0
0
0
0
0
0
0
SmS(:,:,10) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464 0
0 0
0
0 0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200 0
0 -8.8200 0
-8.8200 0
0 0
0
0 0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,6) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,7) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,9) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,10) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
8.8200 0
SmS(:,:,8) =
0
0 0
SmS(:,:,11) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464 0
0 -5.6464 0
0
0 0
-5.6464
0
0
0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,6) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,7) =
1.0e+009 *
8.8200 0
0 -8.8200 0
-8.8200 0
0 0
0
0 0
8.8200 0
0 0
SmS(:,:,8) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,10) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5.6464 0
SmS(:,:,9) =
0
0 0
SmS(:,:,12) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464
0
0
0
SmS(:,:,2) =
0
1.0e+009 *
0 0
5.6464 0
0 0
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464 0
0 -5.6464 0
0
0 0
-5.6464
0
0
0
5.6464 0
0 0
SmS(:,:,6) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,7) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,8) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464 0
0 0
0
0 0
5.6464 0
0 0
SmS(:,:,9) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,11) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) =
0
0
0
0
0
0
0
0
0
7.3500 0
SmS(:,:,10) =
0
0 0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464
0
0
0 0
0 0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464 0
SmS(:,:,6) =
0 0
0
0 0
5.6464 0
0 0
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,7) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,8) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464
0
0
0
SmS(:,:,9) =
0
1.0e+009 *
0 0
5.6464 0
0 0
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,10) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464 0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,12) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5.6464 0
SmS(:,:,11) =
0
0 0
SmS(:,:,13) =
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464
0
0
0 0
0 0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500
0
0
0
SmS(:,:,3) =
0
1.0e+009 *
0 0
7.3500 0
0 0
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464 0
0 0
0
0 0
5.6464 0
0 0
SmS(:,:,6) =
1.0e+009 *
7.3500 0
0 -7.3500 0
0
0 0
-7.3500
0
0
0
7.3500 0
0 0
SmS(:,:,7) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,8) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,9) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,10) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,11) =
1.0e+009 *
8.8200 0
0 -8.8200 0
-8.8200 0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,13) =
0
8.8200 0
SmS(:,:,12) =
0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200 0
0 -8.8200 0
0
0 0
-8.8200
0
0
0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,6) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,7) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,8) =
1.0e+009 *
5.6464 0
0 -5.6464 0
-5.6464
0
0
0 0
0 0
5.6464 0
0 0
SmS(:,:,9) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,10) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,11) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,12) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
SmS(:,:,13) =
0 0
7.3500 0
0 0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SmS(:,:,1) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,2) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,3) =
1.0e+009 *
8.8200 0
0 -8.8200 0
0
0 0
-8.8200
0
0
0
8.8200 0
0 0
SmS(:,:,4) =
1.0e+009 *
7.3500
0 -7.3500
0
0
-7.3500
0 0
0
0
0 0
7.3500 0
0 0
SmS(:,:,5) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,6) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,7) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,8) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,9) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0 0
0
0 0
7.3500 0
0 0
SmS(:,:,10) =
1.0e+009 *
5.6464
0 -5.6464
0
0
-5.6464
0 0
0
0
0 0
5.6464 0
0 0
SmS(:,:,11) =
1.0e+009 *
8.8200
0 -8.8200
0
0
-8.8200
0 0
0
0
0 0
8.8200 0
0 0
SmS(:,:,12) =
1.0e+009 *
7.3500 0
0 -7.3500 0
-7.3500 0
0
0 0
0
0
0
7.3500 0
0
0
0 0
0
SmS(:,:,13) = 1.0e+009 * 5.6464 0
0 -5.6464 0
-5.6464 0
0 0
0
1.0e-004 * -0.2471 0.3991 -0.0388 0.4147 -0.2083 0.6560 -0.0918 0.6277 -0.4228 0.5012 -0.1165 0.5168 -0.4616
AR = 1.0e+004 * -0.0000 -2.3750 -2.3750
AM =
0
5.6464 0
Bentuk matriks kekakuan
DF =
0
0 0
1.0e+004 * -3.7099
0
3.7099
0
2.8500
0 -2.8500
0
1.3750
0 -1.3750
0
-2.8500
0
2.8500
0
-1.3668
0
1.3668
0
3.9000
0 -3.9000
0
-2.5000
0
2.5000
0
3.7099
0 -3.7099
0
-6.7500
0
6.7500
0
5.0767
0 -5.0767
0
-1.3750
0
1.3750
0
2.8500
0 -2.8500
0
-3.7099
0
0
3.7099
TABEL PERPINDAHAN TITIK Titik
Dx
Dy
1
0.0000
0.0000
2
-0.0000
0.0000
3
-0.0000
0.0000
4
-0.0000
0.0001
5
-0.0000
0.0001
6
-0.0000
0.0001
7
-0.0000
0.0001
8
-0.0000
0.0000
TABEL REAKSI PERLETAKAN Titik
Rx
Ry
1
-0.0000 -23750.0000
8
0.0000 -23750.0000
TABEL GAYA BATANG Batang
Fx1
Fy1
Fx2
Fy2
1 -37098.6860
0.0000 37098.6860
0.0000
2 28500.0000
0.0000 -28500.0000
0.0000
3 13750.0000
0.0000 -13750.0000
0.0000
4 -28500.0000
0.0000 28500.0000
0.0000
5 -13667.9369
0.0000 13667.9369
0.0000
6 39000.0000
0.0000 -39000.0000
0.0000
7 -25000.0000
0.0000 25000.0000
0.0000
8 37098.6860
0.0000 -37098.6860
0.0000
9 -67500.0000
0.0000 67500.0000
0.0000
10 50766.6229
0.0000 -50766.6229
0.0000
11 -13750.0000
0.0000 13750.0000
0.0000
12 28500.0000
0.0000 -28500.0000
0.0000
13 -37098.6860
0.0000 37098.6860
0.0000
>>
4.3. Verifikasi Program
Untuk verifikasi program digunakan perhitungan dengan menggunakan mikrosoft excel 2003 Formula yang digunakan adalah: ∆ =Outputprogram – Output Mikrosoft excel 2003
4.3.1. Output Program Matlab Tabel 4.1 Perpindahan Titik Titik 1 2 3 4 5 6 7 8 Tabel 4.2. Reaksi Perletakan Titik 1 8 Tabel 4.3. Gaya Batang Batang Fx1 1 -37098.6860 2 28500.0000 3 13750.0000 4 -28500.0000 5 -13667.9369 6 39000.0000 7 -25000.0000 8 37098.6860 9 -67500.0000 10 50766.6229 11 -13750.0000 12 28500.0000 13 -37098.6860
Dx 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000
Rx -0.0000 0.000
Fy1 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
Dy 0.0000 0.0000 0.0000 0.0001 0.0001 0.0001 0.0001 0.0000
Ry -23750.0000 -23750.0000`
Fx2 37098.6860 -28500.0000 -13750.0000 28500.0000 13667.9369 -39000.0000 25000.0000 -37098.6860 -67500.0000 50766.6229 -13750.0000 28500.0000 -37098.6860
Fy2 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
4.3.2.Perhitungan Finite Elemen Method pada Elemen Truss dengan menggunakan Mikrosoft Excel2003. Langkah-langkah menghitung Finite Elemen Method pada Elemen Truss dengan menggunakan Mikrosoft Excel2003 adalah sebagai berikut : 1. Deskritisasi Model 2. Menentukan matriks kekakuan lokal masing-masing elemen. Untuk elemen X digunakan [K ] =
EA 1 − 1 , sesuai dengan propertis EA/L L − 1 1
maka, ditentukan untuk K1 → EA1/L, K2 Tegak → EA2/Ltegak, K2Miring → EA2/Lmiring, K3→EA3/L 3. Menentukan matrik kekakuan Global Sesuai dengan persamaan (2.23) untuk setiap elemen, C2 EA SC ke = L − C 2 − SC
[ ]
SC S2 − SC − S2
−C2 − SC C2 SC
− SC − S2 SC S 2
dengan [ Ka] = [ kd] = [kh] = [kl] = [Kf], [Kb] = [Ki], [kc] = [Kg] = [Kk], [Ke] = [Km], dan [Kf] = [ Kj] 4. Menentukan Matriks kekakuan struktur sesuai dengan persamaan : f 1 K a 11 + K b11 K a 12 K b12 K a 22 + K c 11 + K d 11 K c 12 f 2 K a 21 f Kb Kc 21 K b 22 + K c 22 + K e11 + K f 11 21 3 0 Kd 21 K e 21 K d 22 + K e 22 f4 = 0 0 K f 21 f5 f 0 0 0 6 0 0 0 f7 f 0 0 0 8
5. menetapkan Boundary Condition u1 = v1 = x1 = u 8 = v8 = 0
0 K d 12
0 0
0 0
0 0
K e12 K f 12 0 0 K g 12 K h12 K i12 + K g 11 + K h11 + K i11 K g 21 K f 22 + K g 22 + K j 11 0 K j 12 K h 21 0 K h 22 + K k 11 + K l 11 K k 12 + K l 12 K i 21 K j 21 Kk 21 K i 22 + K j 22 + K k 22 + K m11 0 0 Kl 21 K l 22 + K m 21
0 d 1 0 d 2 0 d 3 0 d 4 0 d 5 0 d 6 K m12 d 7 K m 22 d 8
6. Mencari reaksi 7. Mencari gaya batang masing-masing elemen
4.3.3. Output Mikrosoft Excel2003 Tabel 4.4 Perpindahan Titik Titik 1 2 3 4 5 6 7 8 Tabel 4.5. Reaksi Perletakan Titik 1 8
Dx 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000
Rx -0.0000 0.000
Dy 0.0000 0.0000 0.0000 0.0001 0.0001 0.0001 0.0001 0.0000
Ry -23750.0000 -23750.0000`
Tabel 4.6 Perhitungan Gaya batang berdasarkan Perhitungan matematis Batang Fx1 Fy1 Fx2 Fy2 1(Elemen a) -37098.6860 0.0000 37098.6860 0.0000 2(Elemen b) 28500.0000 0.0000 -28500.0000 0.0000 13750.0000 0.0000 3(Elemen c) -13750.0000 0.0000 -28500.0000 0.0000 4(Elemen d) 28500.0000 0.0000 5(Elemen e) -13667.9369 0.0000 13667.9369 0.0000 6(Elemen f) 39000.0000 0.0000 -39000.0000 0.0000 7(Elemen g) -25000.0000 0.0000 25000.0000 0.0000 8(Elemen h) 37098.6860 0.0000 -37098.6860 0.0000 9(Elemen i) -67500.0000 0.0000 -67500.0000 0.0000 50766.6229 0.0000 10(Elemen j) 50766.6229 0.0000 11(Elemen k) -13750.0000 0.0000 -13750.0000 0.0000 12(Elemen l) 28500.0000 0.0000 28500.0000 0.0000 13(Elemen m) -37098.6860 0.0000 -37098.6860 0.0000
Berdasarkan hasil perbandingan output Matlab dapat dilihat dengan perhitungan menggunakan Mikrosoft Excel 2003, hasilnya sama
BAB V KESIMPULAN DAN SARAN
5.1 Kesimpulan 1. Pada pemograman finite elemen method dengan matlab pada elemen truss yang dilakukan pada tugas akhir ini dapat berjalan dengan baik ( berhasil ), dengan hasil yang diperolah untuk perhitungan Diplacement, Perpindahan titik dan gayagaya batang sama dengan perhitungan dengan menggunakan Mikrosoft Excel2003 hasil. 2.Pemograman Metode Elemen Hingga menggunakan Matlab ini dapat diterapkan pada elemen truss yang berbeda, hanya mengganti data masukan berupa propertis batang, titik simpul dan gaya-gaya yang bekerja pada File Input data 2D.
5.2 Saran 1.Pemograman dengan Matlab dibangan atas fungsi-fungsi berupa analisa simbolik, sehingga diperlukan ketelitian dalam memasukkan data, supaya program dapat dijalankan. 2.
Dikarenakan Matlab merupakan pemograman yang disusun melalui analisa simbolik, mengakibatkan dalam memasukkan data (input data) mudah terjadi kesalahan ataupun eror, sehingga perlu ada suatu program komputer yang lebih sederhana tanpa membangun banyak fungsi
DAFTAR PUSTAKA Akin, J.ED, 1986, Finite Elemen Analysis For undergraduates, Acdemic Press INC, London Agarwal. R.B, FEA Lectures Notes. Etter, Delores, dkk, 2003 , Pengantar Matlab 6, PT. INDEX Group Gramadia, Jakarta Hibbeller, R.C, 2002, Analisa Struktur, PT. Prenhalindo, Jakarta M. Firdaus, Alkaf, 2004, Matlab 6 untuk teknik sipil, Maxicom, Palembang Perangin-angin, Kasiman, ST, 2006, Pengenalan Matlab, ANDI, Yogyakarta. Pujiriyanto , Andry, 2000, Matlab Bahasa Komputansi Teknis, ANDI, Yogyakarta. Reddy, C.S,1981, Basic Structural Analysis, Tata Mc Graw-Hill, New Delhi. Sahid, Drs, M.Sc, 2006, Panduan Prkatis Matlab , ANDI, Yogyakarta. Susatio, Yerri, Ir, MT,2004, Dasar-dasar Metode Elemen Hingga, ANDI, Yogyakarta. Tarigan, Johannes,Dr.Ing, Prof.,Bahan Kuliah Finite Element Methode, USU, Medan Weaver, William, J.R, 1980, Matrix Analisis of Frame Struktures 2nd Edition, D.Van Nostrand Campany, New York The MathWorks.Inc, 2002,Getting Started With MATLAB, Version 6.