Analisis Perkuatan Pilar Jembatan Cisomang Tesis s2 Oke Bana
Analisis Perkuatan Pilar Jembatan Cisomang Tesis s2 Oke Bana
Analisis Perkuatan Pilar Jembatan Cisomang Tesis s2 Oke Bana
TESIS
Oleh
DANIEL DIXON OCTORA
NIM: 25016066
(Program Studi Magister Teknik Sipil)
Oleh
Daniel Dixon Octora
NIM: 25016066
(Program Studi Magister Teknik Sipil)
Dalam banyak praktik desain, asumsi yang sering digunakan pada perkuatan
elemen struktur beton sering mengabaikan kondisi initial load (elemen struktur
beton yang terbebani) dan interface slip pada hubungan antarmuka antara material
beton lama-baru. Elemen struktur beton yang terbebani oleh beban eksisting
(gravitasi) mengakibatkan penampang eksisting telah mengalami regangan
sebelum perkuatan diaplikasikan, sedangkan interface slip digambarkan sebagai
kondisi dimana pada penampang perkuatan tidak terjadi ikatan yang sempurna.
Penelitian ini akan mengkaji kedua parameter tersebut di atas dalam analisis non-
linier penampang beton yang diperkuat dengan metode jacketing beton. Parameter
elemen struktur yang terbebani atau diistilahkan sebagai initial load diperoleh
dengan melakukan analisis non-linier statik pada struktur bangunan eksisting untuk
memperoleh nilai initial moment yang dipakai sebagai initial point, sedangkan
parameter interface slip dihitung dengan cara sederhana menggunakan koefisien
slip yang nilainya sama di sepanjang bidang kontak perkuatan dengan variasi
besaran koefisien sebesar 0 – 1. Analisis non-linier penampang perkuatan dilakukan
dengan mengembangkan suatu paket program komputer yang disusun dalam bahasa
program MATLAB dengan pendekatan fiber section untuk memperoleh kurva
hubungan momen-kurvatur untuk dipakai sebagai input dalam pemodelan properti
inelastik elemen perkuatan. Perbandingan hasil dari program yang telah disusun
akan dilakukan pada kondisi dimana parameter initial load dihitung dengan
pendekatan monolitik dan efek slip pada kapasitas penampang perkuatan. Objek
penelitian diterapkan pada jembatan Cisomang yang terletak pada ruas tol
Cipularang, dimana pada tahun 2016, pilar jembatan mengalami retak dikarenakan
pergeseran pondasi akibat akumulasi pergerakan tanah pada sungai Cisomang.
Hasil penelitian menunjukkan bahwa parameter initial load tidak signifikan
mempengaruhi kapasitas penampang jika dibandingkan dengan pendekatan
monolitik (≤ 7%), sedangkan interface slip akan berpengaruh signifikan dengan
koefisien slip < 0,5. Evaluasi kinerja jembatan juga memberikan hasil yang sama
yaitu operational jika input properti inelastik elemen pilar perkuatan
memperhitungkan parameter initial load dibandingkan dengan pendekatan
monolitik.
Kata kunci: jacketing beton, pemrograman, MATLAB, initial load, initial strain,
interface slip, momen-kurvatur, pilar jembatan, level kinerja jembatan.
i
ABSTRACT
By
Daniel Dixon Octora
NIM: 25016066
(Master’s Program in Civil Engineering)
iii
ANALISIS PERKUATAN PILAR JEMBATAN DENGAN
METODE JACKETING MEMPERHITUNGKAN INITIAL
LOAD DAN INTERFACE SLIP
HALAMAN PENGESAHAN
Oleh
Daniel Dixon Octora
NIM: 25016066
(Program Studi Magister Teknik Sipil)
Menyetujui
Tim Pembimbing
Tanggal ………………………..
______________________ ______________________
(Ir. Made Suarjana, M.Sc., Ph.D.) (Muhammad Riyansysah, ST., Ph.D.)
v
PEDOMAN PENGGUNAAN TESIS
Sitasi hasil penelitian Tesis ini dapat di tulis dalam bahasa Indonesia sebagai
berikut:
Octora, D. D. (2019): Analisis perkuatan pilar jembatan dengan metode jacketing
memperhitungkan initial load dan interface slip, Tesis Program Magister,
Institut Teknologi Bandung.
Memperbanyak atau menerbitkan sebagian atau seluruh tesis haruslah seizin Dekan
Sekolah Pascasarjana, Institut Teknologi Bandung.
vii
HALAMAN PERUNTUKAN
To my beloved family
ix
KATA PENGANTAR
Penulis sangat berterima kasih kepada Bapak Ir. Made Suarjana, M.Sc., Ph.D.
selaku pembimbing utama/wali akademik dan Bapak Muhammad Riyansyah, ST.,
Ph.D. selaku pembimbing kedua, atas segala saran, bimbingan, nasihat, dan
kesabarannya selama proses penyusunan tesis ini. Penulis juga mengucapkan
terima kasih kepada Bapak Dr. Eng. Aris Aryanto, ST., MT., selaku dosen penguji,
yang telah bersedia memberikan saran dan perbaikan dalam penyusunan tesis ini.
Terima kasih disampaikan juga kepada Bapak dan Ibu dosen Magister Teknik Sipil
ITB, yang telah memberikan ilmu dan pengalamannya yang tidak ternilai, serta
seluruh staf TU Magister dan Doktor Teknik Sipil ITB, yang telah memberikan
bantuan dan kemudahan administrasi akademik dari awal perkuliahan sampai
dengan akhir masa studi penulis.
Penulis juga berterima kasih kepada rekan-rekan mahasiswa Magister Teknik Sipil
ITB, terutama rekan-rekan Kerma PUPR angkatan 2016, Kurniawan dan Derry
untuk pegetahuannya yang dibagikan dalam hal pemrograman, Winda dan Hans
atas diskusi dan sharing data perbaikan jembatan Cisomang, serta semua pihak yang
tidak dapat disebutkan satu per satu atas bantuannya.
Akhir kata, penghargaan dan ucapan terima kasih disampaikan kepada Kementerian
Pekerjaan Umum dan Perumahan Rakyat yang telah memberikan bantuan
beasiswa, sehingga penulis berkesempatan dapat melanjutkan pendidikan di
Program Magister Teknik Sipil ITB.
xi
DAFTAR ISI
ABSTRAK ............................................................................................................... i
ABSTRACT ............................................................................................................. iii
HALAMAN PENGESAHAN ................................................................................. v
PEDOMAN PENGGUNAAN TESIS................................................................... vii
HALAMAN PERUNTUKAN ............................................................................... ix
KATA PENGANTAR ........................................................................................... xi
DAFTAR ISI ........................................................................................................ xiii
DAFTAR LAMPIRAN ....................................................................................... xvii
DAFTAR GAMBAR DAN ILUSTRASI ............................................................ xix
DAFTAR TABEL .............................................................................................. xxiii
DAFTAR SINGKATAN DAN LAMBANG ..................................................... xxv
BAB I Pendahuluan............................................................................................ 1
I.1 Latar Belakang............................................................................... 1
I.2 Tujuan Penelitian ........................................................................... 4
I.3 Rumusan Masalah.......................................................................... 4
I.4 Ruang Lingkup Penelitian ............................................................. 4
I.5 Metodologi Penelitian.................................................................... 6
I.6 Sistematika Penulisan .................................................................... 7
xiii
Penampang Beton dengan Jacketing ............................. 40
III.3.1.1 Kekangan Efektif .......................................... 41
III.3.1.2 Regangan Ultimit .......................................... 45
III.3.1.3 Analisis Initial Load dan Interface Slip ........ 45
III.4 Analisis Gaya ............................................................................... 47
III.5 Solusi Persamaan Keseimbangan................................................. 48
xiv
Perilaku Dinamik Struktur............................................. 99
Penentuan Kondisi Eksisting Struktur ......................... 101
Momen-Kurvatur Penampang Pilar dengan Jacketing 102
Analisis Pushover ........................................................ 105
V.4.4.1 Properti Inelastik Elemen Struktur ............. 105
V.4.4.2 Kinerja Struktur Jembatan .......................... 107
V.4.4.3 Perbandingan Analisis Pushover ................ 113
xv
DAFTAR LAMPIRAN
xvii
DAFTAR GAMBAR DAN ILUSTRASI
xix
Gambar IV.2 Fungsi perhitungan regangan penampang eksisting.................. 55
Gambar IV.3 Fungsi perhitungan regangan penampang jacketing ................. 56
Gambar IV.4 Fungsi perhitungan tegangan penampang eksisting & jacketing
................................................................................................... 57
Gambar IV.5 Fungsi perhitungan regangan penampang eksisting & jacketing
................................................................................................... 58
Gambar IV.6 Detail dimensi penampang pilar P2 jembatan Cisomang.......... 59
Gambar IV.7 Pemodelan geometri penampang octagon hollow..................... 60
Gambar IV.8 Inti beton terkekang penampang tanpa perkuatan jacketing ..... 60
Gambar IV.9 Diskritisasi penampang ............................................................. 61
Gambar IV.10 Kurva hubungan tegangan-regangan material beton ................. 61
Gambar IV.11 Kurva hubungan tegangan-regangan material baja tulangan .... 62
Gambar IV.12 Kurva perbandingan model konstitutif hasil pemrograman Matlab
dan XTRACT ............................................................................ 62
Gambar IV.13 Perbandingan hubungan momen-kurvatur arah major .............. 63
Gambar IV.14 Perbandingan hubungan momen-kurvatur arah minor .............. 64
Gambar IV.15 Idealisasi bilinier kurva momen-kurvatur (Major, 𝑃 = 0,13𝑃𝑜)
................................................................................................... 65
Gambar IV.16 Detail perkuatan penampang pilar P2 jembatan Cisomang ...... 66
Gambar IV.17 Pemodelan geometri penampang dengan perkuatan jacketing . 67
Gambar IV.18 Diskritisasi penampang dengan perkuatan jacketing ................ 67
Gambar IV.19 Inti beton terkekang penampang dengan perkuatan jacketing .. 68
Gambar IV.20 Kurva hubungan tegangan material beton dengan jacketing .... 68
Gambar IV.21 Kurva hubungan momen-kurvatur dengan perkuatan jacketing
(𝑀𝑖 ≤ 𝑀𝑦(𝑝𝑟𝑒 − 𝑗𝑎𝑐𝑘𝑒𝑡)) – ignored slip................................. 69
Gambar IV.22 Kurva hubungan momen-kurvatur dengan perkuatan jacketing
(𝑀𝑖 > 𝑀𝑦(𝑝𝑟𝑒 − 𝑗𝑎𝑐𝑘𝑒𝑡)) – ignored slip................................. 70
Gambar IV.23 Perbandingan kurva hubungan momen-kurvatur dengan
perkuatan jacketing (Major Dir, 𝑀𝑖 > 𝑀𝑦(𝑝𝑟𝑒 − 𝑗𝑎𝑐𝑘𝑒𝑡)) – with
slip ............................................................................................. 70
Gambar IV.24 Profil regangan penampang dengan jacketing: (a) titik initial, (b)
titik initial+∆𝜑, (c) titik leleh tulangan jacket, dan (d) titik ultimit
................................................................................................... 73
Gambar IV.25 Perbandingan kurva hubungan momen-kurvatur dengan
pendekatan monolit (𝑀𝑖 ≤ 𝑀𝑦(𝑝𝑟𝑒 − 𝑗𝑎𝑐𝑘𝑒𝑡)) – ignored slip 74
Gambar IV.26 Perbandingan kurva hubungan momen-kurvatur dengan
pendekatan monolit (𝑀𝑖 > 𝑀𝑦(𝑝𝑟𝑒 − 𝑗𝑎𝑐𝑘𝑒𝑡)) – ignored slip 75
Gambar IV.27 Perbandingan kurva hubungan momen-kurvatur bilinier dengan
pendekatan monolit (𝑀𝑖 ≤ 𝑀𝑦(𝑝𝑟𝑒 − 𝑗𝑎𝑐𝑘𝑒𝑡)) – ignored slip 76
Gambar IV.28 Perbandingan kurva hubungan momen-kurvatur bilinier dengan
pendekatan monolit (𝑀𝑖 > 𝑀𝑦(𝑝𝑟𝑒 − 𝑗𝑎𝑐𝑘𝑒𝑡)) – ignored slip 76
Gambar IV.29 Perbandingan profil regangan pada kurvatur ultimit................. 77
Gambar IV.30 Perbandingan profil tegangan pada kurvatur ultimit: (a) tegangan
beton, (b) tegangan baja tulangan ............................................. 77
Gambar IV.31 Profil regangan pada kurvatur ultimit dengan asumsi slip ........ 78
Gambar V.1 Deformasi pada pilar (LAPI ITB, 2017b) ................................. 83
Gambar V.2 Ilustrasi pola retak yang terjadi pada pilar (LAPI ITB, 2017b) 83
Gambar V.3 Spalling pada pilar P0 ............................................................... 84
xx
Gambar V.4 Spalling pada pondasi bor P3.................................................... 84
Gambar V.5 Grouting pada pilar P0, P1, P2, dan P5 (LAPI ITB, 2017b) .... 86
Gambar V.6 Strutting pada pondasi P2-P3 (LAPI ITB, 2017b).................... 86
Gambar V.7 Potongan melintang perkuatan FRP (LAPI ITB, 2017b) ......... 87
Gambar V.8 FRP pada pilar P2 (LAPI ITB, 2017b) ..................................... 87
Gambar V.9 Tampak potongan jacketing beton P0....................................... 88
Gambar V.10 Detail penulangan jacketing beton P0 ...................................... 89
Gambar V.11 Tampak potongan jacketing beton P1....................................... 89
Gambar V.12 Detail penulangan jacketing beton P1 ...................................... 89
Gambar V.13 Tampak potongan jacketing beton & baja P2 ........................... 90
Gambar V.14 Detail jacketing baja P2............................................................ 90
Gambar V.15 Detail penulangan jacketing beton P2 ...................................... 91
Gambar V.16 Tampak potongan jacketing beton P5....................................... 91
Gambar V.17 Detail penulangan jacketing beton P5 ...................................... 91
Gambar V.18 Potongan memanjang Jembatan Cisomang .............................. 92
Gambar V.19 Tipikal potongan melintang Jembatan Cisomang ..................... 92
Gambar V.20 Kurva respon spektra desain ..................................................... 97
Gambar V.21 Model 3D struktur jembatan ..................................................... 99
Gambar V.22 Pola getar struktur jembatan: (a) translasi-x, (b) translasi-y, dan
(c) rotasi-z ............................................................................... 100
Gambar V.23 Momen inisial pada pilar jembatan: (a) arah major (transversal
jembatan), (b) arah minor (longitudinal jembatan)................. 101
Gambar V.24 Kurva hubungan momen-kurvatur pilar P2 bawah: (a) arah major
(transversal jembatan), (b) arah minor (longitudinal jembatan)
................................................................................................ 104
Gambar V.25 Pemodelan sendi plastis struktur jembatan pada Midas Civil 105
Gambar V.26 Momen-rotasi pilar P2 dengan perkuatan jacketing arah major
(transversal jembatan) ............................................................. 106
Gambar V.27 Momen-rotasi pilar P2 dengan perkuatan jacketing arah minor
(longitudinal jembatan) ........................................................... 107
Gambar V.28 Titik kontrol perpindahan ....................................................... 107
Gambar V.29 Pola beban lateral: (a) arah longitudinal, (b) arah transversal 108
Gambar V.30 Level kinerja jembatan eksisting (sebelum beban perpindahan
terjadi): (a) arah longitudinal, (b) arah transversal ................. 109
Gambar V.31 Level kinerja jembatan eksisting (sesudah beban perpindahan
terjadi): (a) arah longitudinal, (b) arah transversal ................. 110
Gambar V.32 Level kinerja jembatan dengan perkuatan di pilar P2: (a) arah
longitudinal, (b) arah transversal ............................................ 111
Gambar V.33 Level kinerja elemen perkuatan pilar P2 bagian bawah ......... 112
Gambar V.34 Status sendi plastis Push-X: (a) saat PP, (b) saat akhir pushover
................................................................................................ 113
Gambar V.35 Perbandingan analisis pushover .............................................. 113
xxi
DAFTAR TABEL
Tabel II.1 Tipe analisis struktur (NCHRP Synthesis 440, 2013) .............. 25
Tabel II.2 Kekuatan material ekspektasi ................................................... 26
Tabel II.3 Opsi model non-linier elemen struktur (Aviram dkk., 2008) ... 28
Tabel II.4 Level kerusakan dan kinerja jembatan (NCHRP Synthesis 440,
2013) ......................................................................................... 31
Tabel II.5 Parameter level kinerja jembatan (NCHRP Synthesis 440, 2013)
.................................................................................................. 33
Tabel III.1 Koefisien friksi (ACI Committee 318, 2014) ........................... 47
Tabel IV.1 Parameter geometri dan properti material penampang ............. 59
Tabel IV.2 Perbandingan parameter penting hubungan tegangan-regangan
.................................................................................................. 63
Tabel IV.3 Perbandingan titik-titik penting pada kurva momen-kurvatur .. 64
Tabel IV.4 Perbandingan hasil idealisasi bilinier ....................................... 65
Tabel IV.5 Tegangan maksimum tiap jenis diskritisasi penampang........... 69
Tabel IV.6 Perbandingan kekuatan penampang dengan perkuatan jacketing
.................................................................................................. 71
Tabel IV.7 Perbandingan diskritisasi penampang ....................................... 74
Tabel IV.8 Paremeter perbandingan analisis dengan monolit .................... 75
Tabel V.1 Hasil studi Pusjatan tahun 2016 (Zarkasi dkk., 2018) .............. 81
Tabel V.2 Hasil studi LAPI ITB tahun 2016 (Zarkasi dkk., 2018) ........... 82
Tabel V.3 Perpindahan pilar Jembatan Cisomang (LAPI ITB, 2017b) ..... 82
Tabel V.4 Daftar perkuatan Jembatan (Jasa Marga, 2017)........................ 84
Tabel V.5 Rangkuman perkuatan jacketing pada pilar .............................. 88
Tabel V.6 Properti material jembatan ........................................................ 93
Tabel V.7 Data tulangan longitudinal pilar ............................................... 94
Tabel V.8 Data tulangan transversal pilar ................................................. 94
Tabel V.9 Perhitungan N-SPT tanah ......................................................... 96
Tabel V.10 Parameter desain respon spektra ............................................... 96
Tabel V.11 Penampang inersia efektif berdasarkan tipe elemen struktur ... 98
Tabel V.12 Kombinasi beban ultimit dan layan .......................................... 98
Tabel V.13 Kondisi eksisting pada elemen pilar jembatan ....................... 102
Tabel V.14 Rangkuman kondisi initial pilar P2 ........................................ 102
Tabel V.15 Kombinasi gaya geser terfaktor .............................................. 103
Tabel V.16 Pengecekan interface slip pada penampang dengan perkuatan
jacketing: arah major dan minor penampang .......................... 103
Tabel V.17 Ringkasan data properti inelastik elemen pilar jembatan ....... 106
Tabel V.18 Level kinerja jembatan dengan perkuatan jacketing............... 112
Tabel V.19 Perbandingan level kinerja jembatan ...................................... 114
xxiii
DAFTAR SINGKATAN DAN LAMBANG
LAMBANG
xxv
𝐴𝑠𝑝 luas tulangan transversal 17
𝐴𝑣𝑓 𝐴𝑣𝑓 luas tulangan geser-friksi 47
𝑏𝑐 dimensi inti beton terkekang dalam arah-𝑥 19
𝑐 Jarak sumbu netral/posisi regangan nol 23
𝜑 Kurvatur/kelengkungan 22
𝑑𝑐 Dimensi inti beton terkekang dalam arah-𝑦 19
𝑑𝑠 Diameter kekangan spiral as ke as 17
Δ Perpindahan lateral 14
𝛿𝑡 Target perpindahan 30
𝐸𝑐 Modulus elastisitas beton 16
𝐸𝑠𝑒𝑐 Modulus sekan beton 16
𝜀𝑐 Regangan beton 16
𝜀𝑐𝑐 regangan tekan longitudinal beton pada saat 16
tegangan 𝑓′𝑐𝑐
𝜀𝑐𝑜 Regangan maksimum beton unconfined 16
𝜀𝑐𝑚 Regangan beton pada serat beton tekan terluar 23
𝜀𝑐𝑟 Regangan retak beton 24
𝜀𝑐𝑢 Regangan tekan ultimit beton 21
𝜀𝑟 Regangan baja untuk setiap segmen 40
𝜀𝑠 Regangan beton untuk setiap segmen 40
𝜀𝑠𝑝 Regangan beton pada kondisi cover spall 17
𝜀𝑠𝑢 Regangan maksimum baja tulangan 21
𝜀𝑦 Regangan leleh baja tulangan 24
𝐹 Gaya 47
𝑓𝑐 Tegangan beton 16
𝑓𝑐𝑐′ kuat tekan beton terkekang maksimum 16
′
𝑓𝑐𝑜 kuat tekan beton tidak terkekang 16
𝑓𝑙 tegangan kekangan lateral 17
𝑓𝑙′ tegangan kekangan lateral efektif 18
𝑓𝑦 Tegangan leleh baja tulangan 21
𝑓𝑦ℎ tegangan leleh tulangan transversal 17
𝑓𝑠𝑢 Tegangan maksimum baja tulangan 22
𝑘𝑒 Koefisien kekangan efektif 17
𝐾𝐺 kekakuan geometri yang berasal dari efek 14
perubahan kekakuan kolom
𝐾0 kekakuan lateral awal dari kolom 14
𝐿𝑝 Panjang sendi plastis 27
𝑀 Momen 22
𝜇 koefisien friksi 47
𝑛𝑥 jumlah segmen dalam arah-𝑥 37
𝑛𝑦 jumlah segmen dalam arah-𝑦 37
𝑃 Gaya aksial 23
𝜌 Rasio tulangan 22
𝜌𝑏 Rasio tulangan kondisi seimbang 22
𝜌𝑐𝑐 rasio luas tulangan longitudinal terhadap luas 17
inti beton terkekang
xxvi
𝜌𝑠 rasio volume tulangan transversal terhadap inti 17
beton terkekang
𝑠 spasi vertikal antar kekangan as ke as 17
𝑠’ spasi bersih vertikal antar kekangan 17
𝜃 Sudut lingkaran 38
𝜎 tegangan 47
𝑡𝑗 Tebal jacketing 42
𝑉𝑛 Kekuatan geser nominal 47
𝑉𝑢 Gaya geser terfaktor pada penampang 46
𝑤𝑖′ Jarak bersih antar tulangan longitudinal 19
𝑥𝑠 [𝑖 ] Jarak segmen[i] beton arah-x 37
𝑦𝑐 Jarak sumbu netral tiap segmen beton 40
𝑦𝑟 Jarak tiap baris/segmen tulangan longitudinal 40
𝑦𝑠 [𝑖 ] Jarak segmen[i] beton arah-y 37
xxvii
BAB I Pendahuluan
1
jembatan, salah satunya adalah perkuatan dengan metode jacketing beton yang
diaplikasikan pada beberapa pilar jembatan.
Metode jacketing adalah salah satu teknik perkuatan yang saat ini banyak
digunakan dalam praktik rekayasa untuk memperbaiki penampang beton yang telah
rusak dan meningkatkan kekuatan serta daktilitasnya. Secara garis besar terdapat
dua hal penting yang perlu dipertimbangkan di dalam aplikasi perkuatan
penampang beton dengan metode jacketing. Hal pertama terkait dengan initial
strain akibat adanya gaya eksisting pada struktur akibat beban gravitasi atau
dikatakan initial load, sedangkan hal yang kedua adalah efek hubungan antarmuka
antara material beton lama-baru, atau yang dikatakan dengan interface slip.
Interface slip antara material beton lama-baru dalam banyak praktek desain sering
diabaikan, dimana ikatan penuh antara material eksisting dan jacket diasumsikan
terjadi atau dikatakan komposit. Keakuratan asumsi tersebut sangat tergantung dari
type pembebanan, luas bidang geser antarmuka, kekasaran permukaan, dan
bagaimana material jacket diaplikasikan (Alhadid dan Youssef, 2017; A. P.
Lampropoulos dan Dritsos, 2011; Tsioulou dan Dritsos, 2011). Hal yang sama juga
sering diterapkan dalam desain jacketing yaitu dengan tidak mempertimbangkan
adanya efek initial load pada struktur pilar yang diperkuat atau dikatakan kedua
material memiliki profil regangan ultimit yang sama (Gambar I.2). Asumsi
tersebutlah yang sering diaplikasikan pada desain dan/atau evaluasi perkuatan
struktur bangunan seperti yang dilakukan pada kasus Jembatan Cisomang, dimana
hal tersebut bertolak belakang dengan realita yang terjadi sebenarnya, yaitu elemen
struktur pilar eksisting telah mengalami deformasi (initial strain) akibat beban
2
eksisting dalam bentuk gaya aksial tekan dengan/tanpa adanya momen, tergantung
dari tipe pilar jembatan yang berbentuk pilar tunggal ataupun portal, dan beban
eksisting lainnya seperti perpindahan pada pilar yang terjadi pada jembatan
Cisomang (Gambar I.3).
Gambar I.3 Profil regangan penampang jacketing dengan initial load & interface
slip
Penelitian ini akan mengkaji pengaruh pemodelan sendi plastis pilar jembatan
dengan perkuatan jacketing beton dengan memperhitungkan adanya initial load dan
interface slip akibat beban eksisting terhadap kinerja struktur jembatan. Evaluasi
juga akan dilakukan terhadap perbandingan kinerja struktur jembatan jika asumsi
dalam pemodelan sendi plastis perkuatan pilar jembatan dilakukan secara monolit
yaitu tidak memperhitungkan adanya initial load.
3
I.2 Tujuan Penelitian
Penelitian ini dikaji dengan maksud dan tujuan sebagai berikut:
1. Menganalisis perilaku non-linier penampang pilar jembatan yang
diperbaiki/diperkuat dengan metode jacketing beton dalam bentuk
hubungan momen-kurvatur dengan memperhitungkan adanya initial load
dan interface slip.
2. Mengembangkan program perhitungan analisis non-linier penampang
dengan perkuatan jacketing beton yang disusun dalam bahasa program
MATLAB.
3. Mengkaji pengaruh pemodelan sendi plastis pilar jembatan dengan
perkuatan jacketing beton memperhitungkan adanya initial load dan
interface slip terhadap kinerja struktur jembatan dan membandingkannya
dengan asumsi pemodelan sendi plastis menggunakan pendekatan monolit.
4
1. Objek penelitian diterapkan dengan mengambil studi kasus pada Jembatan
Cisomang yang berada pada Tol Cipularang, dimana pada akhir tahun 2016,
pilar jembatan mengalami retak dikarenakan oleh adanya pergerakan
pondasi akibat pergerakan tanah pada sungai Cisomang yang masih aktif.
5
I.5 Metodologi Penelitian
Secara lengkap, metodologi penelitian yang diterapkan dalam penelitian ini
disajikan pada diagram alir sebagai berikut:
Mulai
Perumusan Masalah
Studi Literatur
M-φ
(initial load & interface slip)
Analisis Pushover
Selesai
6
I.6 Sistematika Penulisan
Dalam penelitian ini, akan diuraikan pembahasan studi secara bertahap dengan
sistematika sebagai berikut:
Bab I Pendahuluan
Bab ini menjelaskan tentang latar belakang masalah, tujuan
penelitian, rumusan masalah, ruang lingkup penelitian, dan
metodologi penelitian yang digunakan dalam penelitian.
7
Bab V Studi Kasus
Bab ini berisi detail deskripsi jembatan, kondisi kerusakan jembatan,
dan upaya perkuatan yang telah dilakukan pada jembatan Cisomang
yang dijadikan sebagai objek penelitian. Pada bab ini juga disajikan
pemodelan struktur jembatan dan evaluasi kinerja struktur jembatan
setelah diperkuat dengan metode jacketing yang dilakukan dengan
metode analisis pushover.
Bab VI Penutup
Bab ini berisikan kesimpulan yang diperoleh dari hasil penelitian
dan saran yang membangun agar kajian selanjutnya dapat dilakukan
lebih baik.
8
BAB II Tinjauan Pustaka
II.1 Umum
Kegagalan atau kerusakan pada struktur bangunan seperti yang terjadi pada
jembatan Cisomang tentu akan sangat berbahaya bagi para penggunanya.
Kegagalan atau kerusakan ini sendiri tentunya harus segera diperbaiki sebelum
kerusakan yang terjadi menjadi lebih parah dan berakibat fatal bagi keselamatan.
Perbaikan yang sering disebut dengan perkuatan (retrofit) pada elemen struktur
eksisting ini bisa dilakukan dengan berbagai cara sesuai dengan kondisi yang ada
di lapangan, yang pada umumnya desain retrofit lebih sulit daripada desain struktur
baru khususnya jika mempertimbangkan aspek ketahanan gempa, hal tersebut
dikarenakan berbagai pembatasan dalam desain retrofit. Elemen struktur utama
tidak dapat diubah atau diganti dalam proses retrofit, yang mempersempit
kemungkinan opsi desain dan konstruksi. Terdapat berbagai macam jenis retrofit
yang bisa dilakukan pada elemen struktur yang mengalami kerusakan, secara garis
besar diklasifikasikan sebagai berikut:
9
JSCE (1999) memberikan panduan dalam proses perkuatan (retrofit) yaitu sebagai
berikut:
1. Identifikasi kebutuhan kapasitas pada struktur eksisting yang akan dilakukan
perkuatan dan tentukan jenis metode perkuatan yang akan dilakukan.
2. Inspeksi struktur eksisting yang akan dilakukan perkuatan.
3. Berdasarkan hasil inspeksi tersebut, lakukan evaluasi eksisting struktur
terhadap performa struktur tersebut.
4. Apabila struktur tersebut terjadi penurunan kondisi (deterioration), maka
lanjutkan dengan proses perkuatan (retrofit) yang diinginkan.
5. Tentukan pilihan yang tepat jenis perkuatan, material, dan metode pelaksanaan
yang akan digunakan.
6. Evaluasi performa struktur tersebut setelah diberikan perkuatan.
7. Apabila peningkatan kapasitas yang dibutuhkan tercapai, maka perbaikan
struktur tersebut berhasil.
Terdapat tiga kasus utama dalam melakukan perkuatan struktur, untuk lebih
jelasnya dapat diilustrasikan pada gambar di bawah ini:
10
II.2 Perkuatan Jacketing Beton
Jacketing beton merupakan salah satu metode tradisional dan yang paling umum
dipakai untuk perbaikan/perkuatan penampang beton. Pembesaran dimensi dan
penambahan tulangan di sekeliling penampang eksisting dapat meningkatkan efek
kekangan dan kekuatan elemen tersebut (Gambar II.3). Metode ini sering dijadikan
pilihan dalam melakukan perkuatan struktur, hal tersebut didasari pada dua alasan.
Pertama, pada umumnya aplikasi perkuatan dengan metode jacketing beton lebih
murah dibandingkan dengan metode perkuatan yang lainnya. Kedua, pada aplikasi
perkuatan struktur pilar jembatan metode ini memiliki nilai lebih jika diterapkan
pada lingkungan basah. Berdasarkan alasan tersebut, metode perkuatan jacketing
beton lebih sering digunakan untuk perkuatan pilar jembatan di sungai atau laut.
Dari sudut pandang praktis beberapa studi telah mengusulkan aturan desain untuk
teknik jacketing beton (Penelis dan Kappos, 1997), secara khusus dapat diringkas
sebagai berikut:
• Kekuatan material baru yang digunakan untuk jacket harus lebih besar atau
sama dari material eksisting;
• Ketebalan jacket harus minimal 4 cm untuk aplikasi shotcrete dan 10 cm
untuk beton cast-in-situ;
• Penulangan harus tidak kurang dari empat batang untuk keempat sisi jacket
dan diameter batang minimal 14 mm;
11
• Diameter batang tulangan transversal harus minimal 8 mm dan setidaknya
1/3 dari diameter batang vertikal;
• Jarak vertikal tulangan transversal maksimum sebesar 200 mm dan pada
area join tidak boleh melebihi 100 mm;
• Jarak tulangan transversal tidak boleh melebihi ketebalan jacket dan
permukaan beton eksisting harus dilembabkan serta dibersihkan dari
kotoran sebelum dilakukan pengecoran material jacket.
Ong dkk. (2004); Campione dkk. (2014); Minafò (2015) melakukan studi analitis
mengenai model konstitutif untuk penampang beton bertulang dengan perkuatan
jacketing beton. Studi tersebut menjabarkan analisis dan perhitungan model
12
material beton confined akibat efek kekangan eksisting dan jacket yang
formulasinya mengadopsi metode perhitungan model Mander dkk. (1988) dan
membandingkannya dengan data eksperimen. Hasil dari studi yang dilakukan
diperoleh batasan nilai mengenai keefektifan kekangan yang sesuai akibat oleh
adanya kekangan internal dan eksternal pada penampang beton dengan perkuatan
jacketing dan perbandingan hasil dari data pengujian eksperimen juga memberikan
hasil yang baik.
13
Gambar II.4 Perilaku kolom akibat efek p-delta (Midas IT, 2012)
Bila efek p-delta (P-Δ) diabaikan, maka besarnya momen pada kolom hanya
diakibatkan oleh beban lateral saja yang nilainya bervariasi dari M = 0 pada ujung
atas kolom dan M = VL pada dasar kolom. Adanya tambahan momen akibat gaya
aksial tekan (beban gravitasi) akan menghasilkan momen positif akibat efek p-delta.
Perpindahan lateral dapat diekspresikan sebagai fungsi dari gaya lateral dan aksial,
yaitu sebagai berikut:
𝑉
Δ= , 𝐾 = 𝐾0 + 𝐾𝑔 (II.1)
𝐾
Dimana, 𝐾0 adalah kekakuan lateral awal dari kolom, dan 𝐾𝐺 merepresentasikan
kekakuan geometri yang berasal dari efek perubahan kekakuan kolom akibat gaya
aksial.
14
Non-Linier Material
Struktur beton bertulang terbuat dari material beton dan baja, kedua material
tersebut memiliki perilaku fisik dan mekanik yang berbeda. Beton merupakan
material komposit yang terbuat dari kumpulan agregat (halus dan kasar) yang
terikat secara kimiawi oleh produk hidrasi semen Portland. Walaupun beton terbuat
dari bahan yang bersifat linier elastik, namun kenyataannya hubungan tegangan-
regangannya cendrung bersifat non-linier, bahkan pada saat menahan beban yang
kecil sekalipun (Imran dan Zulkifli, 2014). Hal ini disebabkan oleh adanya retak-
retak yang terbentuk antara bidang agregat dan beberapa faktor lainnya seperti
riwayat pembebanan, efek jangka panjang, perilaku plastisitas akibat friksi internal,
dan lain-lain. Material beton lemah dalam tarik sehingga material beton digunakan
bersama-sama dengan material baja tulangan yang berfungsi untuk menahan
tegangan tarik. Material baja berperilaku linier dalam rentang tegangan kerja
sampai dengan tegangan lelehnya. Perilaku non-linier struktur yang disebabkan
oleh non-linier material dapat didefinisikan dalam bentuk kurva hubungan
tegangan-regangan, dimana untuk struktur beton bertulang dibagi menjadi tiga
bagian yaitu pada selimut beton (unconfined concrete), inti beton atau beton
terkekang (confined concrete), dan baja tulangan.
15
Untuk pembebanan monotonic pada slow rate strain, tegangan tekan longitudinal
beton 𝑓𝑐 diformulasikan sebagai berikut:
𝑓𝑐𝑐′ 𝑥𝑟
𝑓𝑐 = (II.3)
𝑟 − 1 + 𝑥𝑟
dimana 𝑓𝑐𝑐′ adalah kuat tekan beton terkekang maksimum, dan parameter nilai 𝑥
adalah sebagai berikut:
𝜀𝑐
𝑥= (II.4)
𝜀𝑐𝑐
dengan 𝜀𝑐𝑐 merupakan regangan pada saat kuat tekan beton terkekang maksimum
𝑓𝑐𝑐′ yang diekspresikan sebagai berikut:
𝑓𝑐𝑐′
𝜀𝑐𝑐 = 𝜀𝑐𝑜 [1 + 5 ( ′ − 1)] (II.5)
𝑓𝑐𝑜
′
Nilai 𝜀𝑐𝑐 sesuai dengan yang diusulkan oleh Richart dkk. (1928), dimana 𝑓𝑐𝑜 dan
𝜀𝑐𝑜 adalah besaran tegangan dan regangan beton unconfined (umumnya dipakai
𝜀𝑐𝑜 = 0.002), serta nilai-nilai parameter lainnya dapat dinyatakan sebagai berikut:
𝐸𝑐
𝑟= (II.6)
𝐸𝑐 − 𝐸𝑠𝑒𝑐
dimana,
′
𝐸𝑐 = 5000√𝑓𝑐𝑜 MPa (II.7)
𝐸𝑐 merupakan modulus elastisitas beton, dan
𝑓′𝑐𝑐 (II.8)
𝐸𝑠𝑒𝑐 =
𝜀𝑐𝑐
16
Perilaku kurva tegangan-regangan pada selimut beton (unconfined concrete),
bagian kurva yang turun, dimana 𝜀𝑐 > 2𝜀𝑐𝑜 , diasumsikan sebagai garis lurus yang
mencapai tegangan nol saat regangan 𝜀𝑠𝑝 ≈ 0.005 (Caltrans SDC ver. 1.7, 2013).
𝐴𝑒
𝑘𝑒 = (II.11)
𝐴𝑐𝑐
(1 − 𝑠 ′⁄2𝑑𝑠)2 ⁄(1 − 𝜌𝑐𝑐 ) 𝑐𝑖𝑟𝑐𝑢𝑙𝑎𝑟 ℎ𝑜𝑜𝑝𝑠
𝑘𝑒 = { (II.12)
(1 − 𝑠 ′ ⁄2𝑑𝑠)⁄(1 − 𝜌𝑐𝑐 ) 𝑐𝑖𝑟𝑐𝑢𝑙𝑎𝑟 𝑠𝑝𝑖𝑟𝑎𝑙𝑠
𝜌𝑐𝑐 : rasio luas tulangan longitudinal terhadap luas inti beton terkekang
𝑘𝑒 : koefisien kekangan efektif
𝑓𝑦ℎ : tegangan leleh tulangan transversal
𝐴𝑠𝑝 : luas tulangan transversal
𝑓𝑙 : tegangan kekangan lateral
𝑠 : spasi vertikal antar kekangan as ke as
𝑠’ : spasi bersih vertikal antar kekangan
𝑑𝑠 : diameter kekangan spiral as ke as
𝜌𝑠 : rasio volume tulangan transversal terhadap inti beton terkekang
17
Gambar II.6 Kekangan efektif untuk penampang lingkaran
Selanjutnya nilai tegangan tekan puncak dari beton terkekang dapat diperoleh
dengan formula sebagai berikut:
7.94𝑓𝑙′ 𝑓𝑙′
𝑓𝑐𝑐′ = 𝑓𝑐𝑜
′
(−1.254 + 2.254√1 + ′
− 2 ′
) (II.17)
𝑓𝑐𝑜 𝑓𝑐𝑜
′
dimana, 𝑓𝑐𝑜 merupakan kuat tekan beton tidak terkekang (unconfined); dan 𝑓𝑙′
sesuai dengan persamaan II.16.
• Penampang beton persegi dikekang dengan atau tanpa cross ties (Gambar II.7)
Pada penampang dengan bentuk persegi panjang, dengan mengacu pada
Gambar II.7 dapat dilihat bahwa terdapat dua kekangan tidak efektif yang
bekerja pada sumbu 𝑥 dan 𝑦, yang dinyatakan sebagai berikut:
18
Gambar II.7 Kekangan efektif untuk penampang persegi
Total luas inti beton yang secara tidak efektif terkekang dalam arah bidang
dengan jumlah n tulangan longitudinal adalah:
𝑛
(𝑤𝑖′ )2
𝐴𝑖 = ∑ (II.18)
6
𝑖=1
Dengan menggabungkan pengaruh area inti beton yang secara tidak efektif
terkekang dalam arah vertikal (elevation), diperoleh formula untuk menyatakan
luasan beton terkekang efektif yaitu sebagai berikut:
𝑛
(𝑤𝑖′ )2 𝑠′ 𝑠′
𝐴𝑒 = 𝑏𝑐 𝑑𝑐 − ∑ (1 − ) (1 − ) (II.19)
6 2𝑏𝑐 2𝑑𝑐
𝑖=1
dengan 𝑏𝑐 dan 𝑑𝑐 adalah dimensi inti beton yang dihitung dari as kekangan
dalam arah x dan y, dimana 𝑏𝑐 ≥ 𝑑𝑐 , dan dari persamaan II.11 koefisien
kekangan efektif untuk kekangan berbentuk persegi panjang adalah:
(𝑤𝑖′ )2 𝑠′ 𝑠′
(1 − ∑𝑛𝑖=1 ) (1 − ) (1 − )
6𝑏𝑐 𝑑𝑐 2𝑏𝑐 2𝑑𝑐 (II.20)
𝑘𝑒 =
(1 − 𝜌𝑐𝑐 )
19
Terdapat kemungkinan dalam arah 𝑥 dan 𝑦 pada penampang beton dengan
bentuk persegi memiliki rasio tulangan transversal yang berbeda. Hal tersebut
dapat diekspresikan:
𝐴𝑠𝑥 𝐴𝑠𝑦
𝜌𝑥 = ; 𝜌𝑦 = (II.21)
𝑠𝑑𝑐 𝑠𝑏𝑐
dimana 𝐴𝑠𝑥 dan 𝐴𝑠𝑦 adalah luas total tulangan transversal paralel terhadap arah
sumbu x dan y, maka tegangan kekangan lateral pada beton untuk kedua arah
dapat dirumuskan sebagai berikut:
𝐴𝑠𝑥 𝐴𝑠𝑦
𝑓𝑙𝑥 = 𝑓𝑦ℎ = 𝜌𝑥 𝑓𝑦ℎ dan 𝑓𝑙𝑦 = 𝑓 = 𝜌𝑦 𝑓𝑦ℎ (II.22)
𝑠𝑑𝑐 𝑠𝑏𝑐 𝑦ℎ
Tegangan kekangan lateral efektif untuk arah x dan y dapat diperoleh dengan
formulasi sebagai berikut:
Dari persamaan II.23 di atas dimana 𝑓𝑙𝑥′ ≥ 𝑓𝑙𝑦′ , maka tegangan tekan dari beton
terkekang dapat diperoleh dengan mengacu pada Gambar II.8.
20
Persamaan yang sederhana dan konservatif dalam mengestimasi regangan ultimit
beton terkekang diberikan oleh Priestley dkk. (1996) yaitu sebagai berikut:
1,4𝜌𝑠 𝑓𝑦ℎ 𝜀𝑠𝑢
𝜀𝑐𝑢 = 0,004 + (II.24)
𝑓𝑐𝑐′
dimana, 𝜀𝑠𝑢 adalah regangan tarik maksimum baja tulangan, dan untuk penampang
persegi panjang 𝜌𝑠 = 𝜌𝑥 + 𝜌𝑦 . Nilai tipikal untuk 𝜀𝑐𝑢 berkisar antara 0,012 s/d 0,05.
Persamaan II.24 adalah formulasi untuk bagian terkekang yang dibebani aksial
tekan, sementara untuk elemen beton yang mengalami lentur ataupun kombinasi
aksial tekan dan lentur, maka nilai 𝜀𝑐𝑢 secara konservatif dapat dikurangi 50%
(Priestley dkk., 1996).
21
• Strain Hardening (𝜀𝑠ℎ < 𝜀𝑠 < 𝜀𝑠𝑢 )
Park dan Paulay (1975)
𝑚(𝜀𝑠 − 𝜀𝑠ℎ ) + 2 (𝜀𝑠 − 𝜀𝑠ℎ )(60 − 𝑚)
𝑓𝑠 = 𝑓𝑦 [ + ] (II.27)
60(𝜀𝑠 − 𝜀𝑠ℎ ) + 2 2(30𝑟 + 1)2
Non-Linier Penampang
Analisis non-linier penampang dilakukan untuk mengetahui perilaku inelastik dari
elemen struktur yang disebabkan oleh perilaku non-linieritas material dalam bentuk
hubungan tegangan-regangan. Tujuan utama dari analisis non-linier penampang
adalah untuk memperoleh hubungan momen-kurvatur (𝑀 − 𝜑) dari penampang
beton bertulang (Gambar II.10).
Gambar II.10 Hubungan 𝑀 − 𝜑. (a) 𝜌 < 𝜌𝑏 , (b) 𝜌 > 𝜌𝑏 (Park dan Paulay, 1975)
22
Asumsi yang dipakai dalam analisis non-linier penampang adalah:
- Penampang tegak lurus sumbu lentur yang berupa bidang datar sebelum
lentur akan tetap berupa bidang datar setelah lentur.
- Deformasi geser dan torsi diabaikan.
- Tegangan pada beton dan tulangan dapat dihitung dari regangan dengan
menggunakan hubungan tegangan-regangan beton dan baja tulangan.
- Tidak terjadi slip antara beton dan tulangan (perfect bond).
Gambar II.11 Partisi penampang beton bertulang (Park dan Paulay, 1975)
23
dimana, 𝑓𝑐𝑖 dan 𝑓𝑠𝑖 adalah tegangan pada beton dan tulangan pada setiap partisi
penampang, 𝐴𝑐𝑖 dan 𝐴𝑠𝑖 adalah luas dari setiap partisi beton dan tulangan, dan n
adalah jumlah partisi penampang. Besarnya momen pada setiap nilai 𝜀𝑐𝑚 atau 𝜑
dengan asumsi beban P bekerja pada plastic center yaitu sebagai berikut:
𝑛 𝑛
24
II.4 Perencanaan Tahan Gempa Berbasis Kinerja
Sebagian besar aturan yang dipakai dalam perencanaan bangunan tahan gempa
mengadopsi perencanaan berdasarkan metode gaya dimana parameter yang dipakai
adalah gaya yang bekerja pada elemen. Gaya yang bekerja pada elemen struktur
akibat gaya luar dibandingkan dengan kapasitas kekuatan dari element tersebut. Hal
tersebut pada dasarnya merupakan metode elastik, dimana efek dari deformasi
inelastik dipertimbangkan secara tidak langsung melalui faktor modifikasi respons.
Di sisi lain, pada perencanaan bangunan tahan gempa berbasis kinerja/performance
based seismic design (PBSD), perkiraan deformasi non-linier dan kerusakan
struktur diperoleh pada berbagai tingkat eksitasi gempa. Metode perencanaan
PBSD didasarkan pada analisis struktur non-linier, dimana mekanisme kegagalan
dan redistribusi gaya selama proses pelelehan dari struktur dipertimbangan. Hal
tersebut memberikan pemahaman yang lebih baik mengenai kapasitas dan kinerja
yang diharapkan dari struktur terhadap beban gempa yang direncanakan.
Dalam mendesain dan mengevaluasi kinerja struktur bangunan, analisis linier dan
non-linier dibutuhkan agar mendapatkan hasil yang akurat. Berikut merupakan
jenis-jenis analisis struktur:
Tabel II.1 Tipe analisis struktur (NCHRP Synthesis 440, 2013)
25
Prosedur umum dalam melakukan performance based seismic design (PBSD) atau
evaluasi kinerja bangunan menggunakan lebih dari satu kategori analisis struktur.
Sebagai contoh, analisis linier dinamik dengan modal response spectrum digunakan
untuk menghitung besarnya perpindahan pada struktur jembatan (displacement
demand), sedangkan analisis non-linier statik (pushover) digunakan untuk
menghitung besarnya kinerja dari struktur jembatan (displacement capacity).
26
Sendi Plastis
Pilar jembatan merupakan elemen struktur yang didesain sebagai elemen yang
daktail dan lokasi dimana terbentuknya sendi plastis untuk mendisipasi energi pada
saat terjadi gempa. Untuk memenuhi tujuan dari perencanaan berbasis kinerja
(PBSD), level kerusakan yang dapat mempengaruhi serviceability dari struktur
jembatan harus sesuai dengan kriteria teknis. Untuk elemen struktur pilar yang
terkekang dengan baik, urutan kerusakan yang terjadi adalah retak beton, leleh pada
tulangan longitudinal, selimut beton hancur (crushing), leleh pada tulangan
transversal, tekuk pada tulangan longitudinal, dan fraktur pada tulangan
longitudinal/transversal (Goodnight dkk., 2016).
Gambar II.13 Deformasi elastis dan plastis pilar jembatan (Hachem dkk., 2003)
27
Dalam analisis non-linier struktur jembatan, perilaku non-linier elemen struktur
(balok atau kolom) diidealisasikan melalui model sendi plastis elemen struktur.
Pemodelan non-linier balok atau kolom menggunakan hubungan momen-rotasi
lentur pada elemen struktur yang diperoleh dengan melakukan integrasi kurvatur
sepanjang sendi plastis (𝐿𝑝 ). Terdapat beberapa macam pilihan yang dapat
digunakan dalam hal pemodelan sendi plastis elemen struktur yang dapat dilihat
pada tabel di bawah ini yaitu sebagai berikut:
Tabel II.3 Opsi model non-linier elemen struktur (Aviram dkk., 2008)
28
Analisis Pushover
Dalam menganalisis perilaku inelastis dari struktur, analisis linier statik dan linier
dinamik tidak dapat diandalkan untuk secara tepat mengukur kinerja struktur, oleh
karena itu, metode non-linier harus digunakan. Analisis dinamik riwayat waktu
non-linier merupakan metode yang paling akurat dalam analisis struktur terhadap
eksitasi beban gempa, namun terdapat kekurangan dalam analisis tersebut yaitu
proses komputasi yang lama dan analisis yang kompleks. Beberapa tahun terakhir
salah satu analisis yang efektif dan sederhana dalam menilai kinerja struktur
jembatan eksisting atau jembatan baru di bawah beban gempa adalah analisis
pushover. Analisis ini dilakukan dengan cara memberikan suatu pola beban
lateral/perpindahan pada struktur, yang kemudian secara bertahap ditingkatkan
dengan faktor pengali sampai suatu kegagalan atau kondisi batas tertentu tercapai.
Analisis pushover menghasilkan kurva dalam bentuk hubungan gaya-perpindahan,
yang dinamakan kurva pushover atau capacity curve (Gambar II.15).
29
Pada penelitian ini analisis pushover dilakukan dengan metode spektrum kapasitas
sesuai dengan ATC-40 (1996). Kurva kapasitas yang menggambarkan kapasitas
struktur diplotkan ke dalam format ADRS yang terdiri dari axis berupa perpindahan
spektral (𝑆𝑑 ) dan ordinat berupa percepatan spectral (𝑆𝑎 ). Dalam kurva ADRS juga
diplotkan kurva permintaan (demand spectrum) yang berasal dari respons spektra.
Proses iterasi capacity spectrum dan reduced seismic demand akan menghasilkan
suatu titik perpotongan yang disebut performance point (Gambar II.16).
Gambar II.16 Ilustrasi performance point pada analisis pushover (Midas IT, 2012)
30
jembatan penting, dimana respons struktur jembatan ditentukan pada respons
struktur pada pola ragam getar tinggi, pola beban lateral harus berdasarkan
distribusi CQC semua pola ragam getar struktur yang umumnya diambil sampai
dengan 90% partisipasi massa.
Gambar II.17 Pola beban lateral pada analisis pushover (Aviram dkk., 2008)
Tabel II.4 Level kerusakan dan kinerja jembatan (NCHRP Synthesis 440, 2013)
31
Ilustrasi dari level kinerja struktur divisualisasikan pada gambar di bawah ini:
Gambar II.18 Visualisasi level kinerja jembatan (NCHRP Synthesis 440, 2013)
32
Berikut merupakan definisi titik-titik pada Gambar II.19 (Aviram dkk., 2008):
- A (zero loading);
- B (yield point), dimana besaran nilainya adalah Mne (expected nominal
moment) dan θY (idealized yield rotation). Titik ini bernilai 1,0;
- C (ultimate capacity point), dimana titik ini adalah Mp (plastic moment) dan
θp (plastic rotation), dengan maksud untuk mencegah hasil yang
overestimate pada nilai kapasitas plastis dan gaya geser dasar kolom. Input
pada titik ini adalah Mp/Mne dan θp/θY;
- D (degraded capacity), yang besarnya diambil sebesar 0,2Mp dan 1,2 θp;
- E (failure point), diambil sebesar 0,2Mp dan 1,5 θp.
Tabel II.5 Parameter level kinerja jembatan (NCHRP Synthesis 440, 2013)
33
BAB III Formulasi Non-Linier Penampang
III.1 Umum
Pada subbab II.3.3 sebelumnya telah dibahas mengenai analisis non-linier
penampang pada beton bertulang dalam bentuk hubungan momen-kurvatur (𝑀 −
𝜑) untuk mengetahui perilaku inelastik dari elemen struktur. Pada dasarnya dalam
proses perhitungan analisis non-linier penampang formulasinya dibagi menjadi
beberapa bagian perhitungan yaitu dikritisasi penampang, model konstitutif
material, analisis tegangan, analisis gaya, dan solusi persamaan kesetimbangan
gaya. Proses awal yang dilakukan adalah melakukan analisis data yang terdiri dari
properti material, properti penampang, detail penulangan, dan pembebanan (gaya
aksial). Selanjutnya, perhitungan dilakukan sesuai dengan ilustrasi pada diagram
alir dari pemrograman perhitungan momen-kurvatur (𝑀 − 𝜑 ) penampang di bawah
ini:
MULAI
Try yc
- Section Properties
- Material Properties
- Reinforcement Details Analisis Data
- P=? Strain Calculation
ΣF=P?
φ
Yes, yc obtained
n n
M = f ci Aci di + f si Asi di
i =1 i =1
END
Detail perhitungan dari setiap sub bagian akan disajikan pada sub bab selanjutnya.
35
III.2 Diskritisasi Penampang
Diskritisasi penampang dilakukan dengan mendefinisikan terlebih dahulu sifat
material yang akan dibagi, yaitu apakah termasuk dalam kategori material
unconfinied, confined, dan steel. Hal tersebut dilakukan karena setiap kategori
material memiliki perilaku yang berbeda atau dikatakan memiliki hubungan
tegangan-regangan yang berbeda.
Untuk kategori penampang beton yang telah didefinisikan (unconfined & confined),
setiap penampang dibagi menjadi beberapa segmen untuk setiap arah sumbu
dengan memasukkan detail properti geometrinya yaitu 𝑥𝑚𝑖𝑛 , 𝑦𝑚𝑖𝑛 , 𝑥𝑚𝑎𝑥 , 𝑦𝑚𝑎𝑥, 𝑛𝑥
atau jumlah segmen arah-𝑥, dan 𝑛𝑦 atau jumlah segmen arah-𝑦 (Gambar III.3).
y
y
(xmax,ymax)
3 1 4 ny 1
x
(xmin,ymin) nx
1 x
(0,0)
36
Hal selanjutnya adalah melakukan perhitungan pada setiap segmen penampang
beton untuk memperoleh koordinat dan luasnya, diformulasikan sebagai berikut:
a. Koordinat Segmen
Koordinat setiap segmen atau arm length untuk kedua arah sumbu dapat
dicari dengan formulasi sebagai berikut:
arah-𝑥
(𝑥𝑚𝑎𝑥 −𝑥𝑚𝑖𝑛 )
𝑛𝑥 (𝑥𝑚𝑎𝑥 −𝑥𝑚𝑖𝑛 )
𝑥𝑠 [𝑖 ] = [ 2
] + [(𝑖 − 1) × 𝑛𝑥
]+ 𝑥𝑚𝑖𝑛 (III.1)
arah-𝑦
(𝑦𝑚𝑎𝑥 −𝑦𝑚𝑖𝑛 )
𝑛𝑦 (𝑦𝑚𝑎𝑥 −𝑦𝑚𝑖𝑛 )
𝑦𝑠 [𝑖 ] = [ 2
]+ [(𝑗 − 1) × 𝑛𝑦
]+ 𝑦𝑚𝑖𝑛
(III.2)
b. Luas Segmen
(𝑥𝑚𝑎𝑥 −𝑥𝑚𝑖𝑛 )
𝐴𝑠 [𝑖 ] = [𝑦𝑚𝑎𝑥 − 𝑦𝑚𝑖𝑛 ] × [ 𝑛𝑥×𝑛𝑦
] (III.3)
Penampang Lingkaran
Pada penampang dengan bentuk dasar lingkaran, pembagian kategori diskritisasi
penampang menjadi tiga bagian (fibres) dapat dilihat pada Gambar III.4. Metode
yang paling cocok untuk mendefinisikan luas terkait proses diskritisasi adalah
37
dengan menggunakan formula luas juring lingkaran (Chai dkk., 1991),
diilustrasikan pada Gambar III.5, yaitu sebagai berikut:
𝐷2
𝐴𝑠𝑒𝑐 = (𝜃 − sin 𝜃 )
8
𝐷2 2𝑦 𝐷
= cos −1 (1 − ) − ( − 𝑦) √𝐷𝑦 − 𝑦 2
4 𝐷 2 (III.4)
y y y
yi-1
yci
yi
ith segment
x = x + x
h
D
dengan, D adalah diameter lingkaran; 𝜃 adalah sudut lingkaran; dan 𝑦 adalah jarak
yang diukur dari tepi serat bagian atas.
Dengan cara yang sama, luas juring untuk inti beton terkekang dapat ditulis sebagai
berikut:
𝑑𝑐2 2𝑦 𝑑𝑐
𝐴′𝑠𝑒𝑐 = cos −1 (1 − ) − ( − 𝑦) √𝑑𝑐 𝑦 − 𝑦 2 (III.5)
4 𝑑𝑠 2
38
dengan mensubstitusi jarak 𝑦𝑖−1 dan 𝑦𝑖 ke persamaan III.4, luas juring yang sesuai
𝐴(𝑠𝑒𝑐)𝑖−1 dan 𝐴(𝑠𝑒𝑐)𝑖 dapat diperoleh. Selisih antara kedua luas juring tersebut dapat
diperoleh luas segmen, 𝐴𝑠𝑖 , yaitu sebagai berikut (Gambar III.6):
𝐴𝑠𝑖 = 𝐴(𝑠𝑒𝑐)𝑖 − 𝐴(𝑠𝑒𝑐)𝑖−1 (III.6)
Dengan cara yang sama, luas segmen untuk inti beton terkekang dapat ditulis
sebagai berikut:
𝐴′𝑠𝑖 = 𝐴′(𝑠𝑒𝑐)𝑖 − 𝐴′(𝑠𝑒𝑐)𝑖−1 (III.7)
Pada setiap segmen, luas setiap segmen dibagi lagi menjadi luas selimut beton dan
luas inti beton. Luas tiap segmen dalam daerah selimut beton:
𝐴𝑐𝑜𝑣𝑒𝑟𝑖 = 𝐴𝑠𝑖 (III.8)
𝐴𝑐𝑜𝑟𝑒𝑖 = 0 (III.9)
Untuk posisi setiap segmen beton dari serat atas terluar dari penampang, 𝑦𝑖 , dapat
dihitung dengan persamaan sebagai berikut:
𝑦𝑖 = (𝑖 − 0,5)∆ℎ (III.12)
dengan 𝑖 merupakan segmen ke-𝑖 dan ∆ℎ adalah tinggi tiap segmen.
39
III.3 Analisis Tegangan
Setelah semua luas segmen dan koordinat segmen diperoleh, maka selanjutnya
adalah melakukan perhitungan analisis tegangan. Dengan menggunakan data
koordinat segmen dan sebuah nilai φ, tegangan pada setiap segmen dapat dihitung.
Seperti yang telah dibahas pada sub bab II.3.2, tegangan untuk setiap nilai regangan
dapat dengan tepat dihitung menggunakan hubungan tegangan-regangan atau
fungsi 𝑓(𝜀). Oleh karena itu, dengan nilai φ yang telah ditentukan sebelumnya,
regangan beton untuk setiap segmen dapat diperoleh dengan formulasi matematis
sebagai berikut:
𝜀𝑠 [𝑖 ] = (𝑦𝑐 − 𝑦𝑠 [𝑖 ]) × 𝜑 (III.13)
Sedangkan regangan baja untuk setiap segmen dihitung sebagai berikut:
𝜀𝑟 [𝑖 ] = (𝑦𝑐 − 𝑦𝑟 [𝑖 ]) × 𝜑 (III.14)
dimana 𝑦𝑐 jarak regangan nol yang dihitung dari serat tekan terluar dari penampang,
atau yang biasa disebut sebagai sumbu netral penampang; 𝑦𝑠 adalah jarak tiap
segmen beton; dan 𝑦𝑟 adalah jarak tiap baris/segmen tulangan longitudinal.
Dari persamaan III.13 dan III.14, diketahui bahwa nilai regangan dapat bernilai
positif atau negatif yang mengindikasikan regangan bersifat tekan atau tarik.
Regangan tarik atau negatif terjadi ketika nilai 𝑦𝑠 [𝑖 ] dan/atau 𝑦𝑟 [𝑖 ] lebih besar dari
nilai 𝑦𝑐 . Dimana, nilai 𝑦𝑐 diperoleh dari solusi persamaan kesetimbangan gaya yang
dilakukan secara iterasi, hal tersebut akan dibahas lebih detail pada sub bab Analisis
Gaya dan sub bab Solusi Persamaan Keseimbangan.
Setelah nilai regangan dari setiap segmen diperoleh, maka nilai tegangan dapat
diperoleh dengan menggunakan fungsi 𝑓(𝜀) dari model material yang telah
didefinisikan.
40
jacketing, dimana kekangan efektif pada penampang dihitung dengan meninjau
kekangan yang disebabkan oleh kekangan internal dan eksternal. Disamping hal
tersebut, dengan memperhitungkan kondisi initial load akibat beban eksisting dan
interface slip pada hubungan antarmuka antara material beton eksisting dan jacket,
maka pada bagian perhitungan analisis tegangan untuk setiap segmen penampang
jacketing harus dihitung dengan memodifikasi nilai regangan sehingga dapat
memperhitungkan kondisi initial load dan interface slip.
Gambar III.7 Kekangan eksisting dan jacketing pada penampang persegi dengan
perkuatan jacketing (Campione dkk., 2014)
Luasan beton terkekang efektif pada penampang jacketing dipengaruhi oleh dua
kondisi, yaitu kondisi dimana posisi parabola atau luas inti beton yang secara tidak
efektif terkekang berada (Gambar III.8). Kondisi pertama terjadi jika posisi
41
parabola jauh di luar inti beton, sedangkan kondisi kedua terjadi jika posisi parabola
bersinggungan dengan inti beton (Campione dkk., 2014; Ong dkk., 2004), yaitu
sebagai berikut:
• Kondisi pertama, posisi parabola jauh di luar inti beton bagian dalam:
𝑏 1
> 𝑡𝑗 (III.15)
𝑎
2 (1 − 𝑏 )
• Kondisi kedua, posisi parabola bersinggungan dengan inti beton bagian dalam:
𝑏 1
≤ 𝑡𝑗 (III.16)
𝑎
2 (1 − )
𝑏
Studi yang telah dilakukan oleh Ong dkk. (2004) dipakai dalam menghitung
koefisien kekangan efektif pada penampang jacketing, dimana dasar
perhitungannya dilakukan dengan mengadopsi metode seperti yang diusulkan oleh
Mander dkk. (1988).
42
Pada penampang jacketing dengan bentuk persegi panjang, luas inti beton yang
secara tidak efektif terkekang dipengaruhi dalam arah bidang dan vertikal.
Kekangan efektif dalam arah bidang (plan) dapat diperoleh dengan mengurangkan
luas beton terkekang dengan jumlah parabola yang merepresentasikan luas inti
beton yang secara tidak efektif terkekang. Formulasi efek kekangan dengan dua
kondisi kemungkinan susunan parabola dalam arah bidang (Gambar III.8a)
diekspresikan sebagai berikut:
• Kondisi pertama terjadi, maka efek pengekangan akan menjadi maksimum.
Rasio luasan confined core dengan inner core diformulasikan sebagai berikut:
𝜆=1 (III.17)
• Kondisi kedua terjadi, maka rasio 𝜆 dapat diekspresikan sebagai berikut:
′
2𝑤𝑖,𝑗𝑎𝑐 𝑚
𝐴𝑐𝑐,𝑗𝑎𝑐 − ∑𝑛𝑖=1
𝜆= 3 (III.18)
𝐴𝑐𝑐,𝑗𝑎𝑐
′
dimana, 𝑤𝑖,𝑗𝑎𝑐 merupakan panjang dasar dari parabola di pinggiran beton
terkekang, 𝑚 adalah tinggi parabola di dalam inti beton terkekang yang diambil
1 ′
sebesar 4 𝑤𝑖,𝑗𝑎𝑐 , dan 𝐴𝑐𝑐,𝑗𝑎𝑐 adalah luas inti beton terkekang tidak termasuk luas
tulangan jacket.
Kondisi yang sama juga diasumsikan terjadi untuk kekangan efektif dalam arah
vertikal (Gambar III.8b), dua kondisi yang dapat terjadi adalah sebagai berikut:
• Kondisi pertama terjadi, maka kekangan jacketing (tulangan transversal jacket)
tidak akan memberikan efek kekangan pada inti beton (core). Sehingga luasan
efektif confined core diformulasikan sebagai berikut:
𝐴𝑒 = 𝜆𝑏𝑐 𝑑𝑐 (III.19)
• Jika parabola bersinggungan dengan inti beton bagian dalam (inner core),
luasan efektif confined core diformulasikan sebagai berikut:
𝑠𝑗′ 𝑠𝑗′
𝐴𝑒 = 𝜆 [1 − ( − 2𝑚)] [1 − ( − 2𝑚)] (III.20)
2𝑏𝑐 2𝑑𝑐
dimana, 𝑠𝑗′ merupakan jarak bersih tulangan transversal jacket.
43
Berdasarkan penurunan formulasi pada persamaan III.17-III.20, maka koefisien
kekangan efektif penampang jacketing, 𝑘𝑒,𝑗𝑎𝑐 untuk bentuk penampang persegi
panjang untuk kondisi kedua diformulasikan sebagai berikut:
𝑠𝑗′ 𝑠𝑗′
𝜆 [1 − ( − 2𝑚)] [1 − ( − 2𝑚)]
𝐴𝑒 2𝑏𝑐 2𝑑𝑐 (III.21)
𝑘𝑒,𝑗𝑎𝑐 = =
𝐴𝑐𝑐,𝑗𝑎𝑐 𝐴𝑐 (1 − 𝜌𝑐𝑐,𝑗 )
Sehingga dengan mengacu pada persamaan II.13 dan II.16, tegangan kekangan
lateral efektif total pada penampang inti beton dengan perkuatan jacketing dapat
dihitung dengan formulasi sebagai berikut:
′
1 1
𝑓𝑙,𝑡𝑜𝑡 = 𝑘𝑒,𝑒𝑥 𝜌𝑠,𝑒𝑥 𝑓𝑦ℎ,𝑒𝑥 + 𝑘𝑒,𝑗𝑎𝑐 𝜌𝑠,𝑗𝑎𝑐 𝑓𝑦ℎ,𝑗𝑎𝑐 (III.25)
2 2
44
III.3.1.2 Regangan Ultimit
Regangan ultimit tekan beton terkekang pada penampang dengan perkuatan
jacketing mengadopsi persamaan Priestley dkk. (1996), seperti pada persamaan
II.24, dengan mempertimbangkan efek dari kekangan eksisting dan jacketing yang
dihitung dengan formulasi sebagai berikut:
1,4𝜌𝑠,𝑒𝑥 𝑓𝑦ℎ,𝑒𝑥 𝜀𝑠𝑢,𝑒𝑥 1,4𝜌𝑠,𝑗𝑎𝑐 𝑓𝑦ℎ,𝑗𝑎𝑐 𝜀𝑠𝑢,𝑗𝑎𝑐
𝜀𝑐𝑢 = 0,004 + ′
+ ′ (III.26)
𝑓𝑐𝑐,𝑒𝑥 𝑓𝑐𝑐,𝑗𝑎𝑐
dimana, 𝜀𝑠𝑢,𝑒𝑥 dan 𝜀𝑠𝑢,𝑗𝑎𝑐 adalah regangan tarik maksimum baja tulangan eksisting
dan jacket, dan untuk penampang persegi panjang besaran 𝜌𝑠,𝑒𝑥 dan 𝜌𝑠,𝑗𝑎𝑐 diperoleh
dari penjumlahan dua sumbu 𝑥 dan 𝑦 dalam arah bidang penampang.
45
Initial Load
Kondisi initial load pada analisis non-linier penampang dengan jacketing dihitung
dengan memodifikasi nilai regangan pada penampang asli (existing section),
dimana nilai regangan pada penampang eksisting untuk setiap peningkatan nilai 𝜑
(persamaan III.13 – III.14) harus ditambahkan dengan initial strain, sedangkan
untuk penampang jacket (jacket section) nilai regangan pada setiap peningkatan
nilai 𝜑 ditambahkan dengan nol (penampang jacket tidak terdapat initial strain).
Perhitungan matematis untuk penjelasan tersebut diformulasikan sebagai berikut:
• Penampang asli (existing section)
𝜀𝑠,𝑒𝑥 [𝑖 ] = {(𝑦𝑐 − 𝑦𝑠 [𝑖 ]) × 𝜑} + 𝜀𝑖𝑛𝑖𝑡𝑖𝑎𝑙 (III.27)
• Penampang jacket (jacket section)
𝜀𝑠,𝑗𝑎𝑐 [𝑖 ] = {(𝑦𝑐 − 𝑦𝑠 [𝑖 ]) × 𝜑} + 0 (III.28)
dimana, 𝜀𝑒𝑠,𝑒𝑥 [𝑖 ] adalah regangan pada tiap segmen penampang asli dan 𝜀𝑠,𝑗𝑎𝑐 [𝑖 ]
regangan pada tiap segmen penampang jacket untuk setiap nilai kurvatur (𝜑).
Interface Slip
Ketika elemen beton diperkuat dengan menempatkan lapisan beton baru, gaya geser
harus ditransfer pada hubungan antarmuka, dimana kemungkinan slip dapat terjadi
(Gambar III.10). Mekanisme penyaluran gaya geser tersebut dikenal dengan istilah
geser-friksi.
Gambar III.10 Profil regangan dengan kondisi slip (Thermou dkk., 2014a)
Hubungan antarmuka dimana gaya geser bekerja disebut sebagai bidang geser atau
bidang slip. Pada ACI 318M-14 Pasal 22.9, design shear strength pada bidang geser
harus didesain dengan ketentuan:
𝜙𝑉𝑛 ≥ 𝑉𝑢 (III.29)
46
𝑉𝑛 = 𝜇𝐴𝑣𝑓 𝑓𝑦 (III.30)
dimana, 𝐴𝑣𝑓 adalah luas tulangan geser-friksi dan 𝜇 adalah koefisien friksi yang
sesuai dengan tabel Tabel III.1.
Pada penelitian ini, slip diasumsikan terjadi jika formulasi pada persamaan III.29
tidak terpenuhi. Untuk mengkuantifikasi terjadinya slip di dalam perhitungan
analisis non-linier penampang dengan perkuatan jacketing, cara sederhana yang
digunakan sebagai perkiraan adalah dengan mereduksi kekuatan penampang
dengan suatu faktor slip (Dritsos, 2007; Andreas P. Lampropoulos dkk., 2012;
Thermou dkk., 2014b). Faktor slip menggunakan suatu nilai yang besarannya sama
di sepanjang bidang kontak perkuatan dengan variasi nilai 0 – 1, dimana nilai 0
(nol) menggambarkan kondisi pada hubungan antarmuka penampang tidak terjadi
ikatan sama sekali, sedangkan nilai 1 (satu) menggambarkan kondisi pada
hubungan antarmuka penampang terjadi ikatan yang sempurna atau full composite.
47
dimana, 𝐹 [𝑖 ] adalah besarnya gaya tekan atau tarik pada setiap segmen beton atau
tulangan yang nilainya dapat bernilai positif atau negatif tergantung dari regangan
pada segmen tersebut.
48
suatu nilai asumsi awal. Nilai 𝑑 adalah tinggi efektif penampang yang diukur dari
serat tekan terluar ke centroid tulangan tarik. Dengan nilai-nilai tersebut, nilai 𝑦𝑐𝑟
dapat diperoleh dengan menggunakan persamaan:
𝑦𝑐1 + 𝑦𝑐2
𝑦𝑐𝑟 = (III.32)
2
dengan diperoleh nilai 𝑦𝑐𝑟 maka dapat diketahui 𝐹 (𝑦𝑐𝑟 ), kemudian iterasi dilakukan
dengan menggunakan persayaratan yaitu jika 𝐹 (𝑦𝑐𝑟 ) ∙ 𝐹 (𝑦𝑐1 ) < 0, maka 𝑦𝑐2 =
𝑦𝑐𝑟 ; jika tidak, maka 𝑦𝑐1 = 𝑦𝑐𝑟 . Iterasi terus dilakukan sampai diperoleh nilai error
yang besarnya kurang dari toleransi yang ditetapkan atau dengan kata lain nilai
𝐹 (𝑦𝑐𝑟 ) = 0.
𝑦𝑐𝑟 −𝑦𝑐1
error = abs ( ) × 100 ≤ tolerance (III.33)
𝑦𝑐𝑟
49
BAB IV Pemrograman Komputer
IV.1 Umum
Pada BAB III sebelumnya telah dibahas mengenai formulasi analisis non-linier
penampang pada beton bertulang dalam bentuk hubungan momen-kurvatur (𝑀 −
𝜑), dimana dalam proses perhitungannya dilakukan dengan cara membagi
penampang menjadi sejumlah partisi dengan jumlah tertentu. Untuk mendapatkan
hasil dengan ketelitian yang baik, sangat tergantung dari proses diskritisasi
penampang (mesh), yaitu tingkat kehalusan dari partisi penampang yang dilakukan
(sufficiently refined mesh). Proses perhitungan tersebut tentunya tidak efektif jika
dilakukan secara manual dikarenakan dalam prosesnya akan membutuhkan waktu
lama dan error yang besar dalam mencari solusi persamaan keseimbangan gaya,
sehingga dibutuhkan alat bantu dalam bentuk program komputer. Saat ini, terdapat
beberapa program komputer yang mampu melakukan analisis non-linier
penampang (𝑀 − 𝜑), salah satunya adalah program XTRACT yang
direkomendasikan oleh FEMA (FEMA 451B, 2006). Program XTRACT
merupakan program yang handal dalam perhitungan hubungan (𝑀 − 𝜑), namun
program tersebut kurang tepat jika diaplikasikan pada analisis non-linier
penampang beton dengan perkuatan jacketing. Hal tersebut dikarenakan program
tersebut tidak memiliki kemampuan dalam mendefinisikan dan memperhitungkan
adanya kondisi initial load dan interface slip.
51
IV.2 Organisasi Program
Pada hematnya, penyusunan suatu program dapat dituangkan dalam suatu paket
program komputer manunggal. Dengan mengambil cara ini, suatu program dapat
terdiri atas ribuan baris code yang dapat menimbulkan beberapa kesulitan. Pertama,
melakukan kompilasi atas program manunggal yang besar membutuhkan proses
yang panjang, dan ini menyita biaya penggunaan jika program dijalankan pada
sistem komputer berbasis sewa. Kedua, menyangkut proses kompilasi dan
pencarian kesalahan program (debugging process). Sangat sulit menentukan
dimana letak kesalahan program di antara ribuan baris yang ada. Kadang-kadang
perbaikan dilakukan dengan merubah baris-baris yang sebenarnya sudah betul, dan
kejadian ini malah menambah kesalahan program.
Untuk mengatasi kesulitan tersebut di atas, perekayasa mengikuti pola lain, yaitu
dengan membagi program yang terdiri atas satu program utama (main program)
dan beberapa program (sub programs). Tugas dari program utama adalah untuk
memanggil pekerjaan yang dilakukan oleh sub-sub program. Sub program terdiri
atas dua jenis, yaitu script dan function. Script mengerjakan satu jenis pekerjaan
berskala besar, sedangkan function hanya mengerjakan pekerjaan sederhana dengan
menerima beberapa parameter dan mengembalikan satu nilai parameter via nama
function itu sendiri.
52
IV.3 Diagram Alir Program Analisis Non-Linier Penampang
Berikut ini disajikan penjelasan penyusunan program, termasuk pengorganisasian
yang terbagi dalam beberapa blok program (Gambar IV.1), yaitu: blok input data,
blok pemrosesan data, blok solusi, dan blok keluaran data. Penjelasan blok tersebut
dipaparkan dalam subbab berikutnya dan detail diagram alirnya akan disajikan pada
bagian Lampiran laporan tesis ini.
MULAI
Input Data
Section
Discretization
Material Model
φi
Try yc
Strain Calculation
Stress Calculation
f(ε ) No
Force Calculation
F = fi×Ai
ΣF=P?
Yes, yc obtained
n n
M = f ci Aci di + f si Asi di
i =1 i =1
Record
(M-φ)
END
53
Blok Input Data
Langkah pertama yang harus dilakukan oleh pengguna adalah memasukkan data
yang dibagi atas beberapa bagian, yaitu sebagai berikut:
- Properti Material
Pada bagian ini, pengguna memasukkan data detail properti dari material
beton dan baja tulangan yang terdiri dari nilai tegangan, regangan, dan
modulus elastisitas dari kedua jenis material.
- Geometri Penampang
Data yang dimasukkan oleh pengguna berupa detail geometri penampang
seperti lebar dan tinggi penampang, tebal penutup beton, panjang elemen,
dan jenis deformasi elemen struktur yaitu termasuk single atau double
curvature yang terkait dengan perhitungan panjang sendi plastis elemen.
- Detail Tulangan
Data yang dimasukkan oleh pengguna berupa detail tulangan yang terdapat
pada penampang yaitu diameter dari tulangan longitudinal dan transversal,
jarak vertikal tulangan transversal, jarak bersih vertikal tulangan
transversal, jumlah kekangan pada kedua arah sumbu penampang, dan
jumlah partisi/layer tulangan pada kedua arah sumbu penampang.
- Jarak Bersih antar Tulangan
Pada bagian ini, pengguna memasukan secara manual detail dari jarak
bersih antar tulangan longitudinal yang akan dipakai dalam perhitungan
kekangan efektif inti beton terkekang.
- Posisi Tulangan Longitudinal
Posisi dari setiap tulangan longitudinal dimasukkan dengan bentuk matriks
yaitu [𝐴𝑠𝑏 𝑑𝑖 𝐷𝑏 ], dimana 𝐴𝑠𝑏 adalah luas tulangan; 𝑑𝑖 adalah jarak
tulangan ke serat tekan terluar penampang; dan 𝐷𝑏 merupakan diameter
tulangan.
- Delta Strain
Delta strain merupakan nilai yang akan dipakai untuk perhitungan hubungan
tegangan-regangan material.
- Beban Aksial
Data beban aksial adalah beban P yang dimasukkan.
54
Blok Pemrosesan Data
Setelah pemasukan data dilakukan, hal selanjutnya adalah melakukan perhitungan
diskritisasi penampang yang prosesnya dihitung secara otomatis oleh program
untuk menghasilkan data koordinat dan luasan dari setiap partisi untuk material
beton unconfined, beton confined, dan baja tulangan. Hasil dari proses tersebut
disajikan dalam bentuk matriks yaitu [𝑥𝑐𝑜𝑜𝑟𝑑 𝑦𝑐𝑜𝑜𝑟𝑑 𝐴𝑖 ], dimana 𝑥𝑐𝑜𝑜𝑟𝑑 dan
𝑦𝑐𝑜𝑜𝑟𝑑 adalah koordinat arah-x dan arah-y; dan 𝐴𝑖 merupakan luas dari setiap
partisi/layer ketiga jenis material tersebut.
Blok Solusi
Seperti yang telah diilustrasikan pada Gambar IV.1, bagian blok solusi terdapat
beberapa proses perhitungan dan proses iterasi untuk memperoleh posisi sumbu
netral, 𝒚𝒄 , pada setiap inkrementasi kurvatur. Pada setiap inkrementasi kurvatur
dilakukan iterasi sedemikian sehingga diperoleh nilai sumbu netral (𝒚𝒄 ), kurvatur
(𝝋), dan momen (𝑴). Tes konvergensi dilakukan dengan menggunakan parameter
toleransi dengan tingkat ketelitian sebesar 𝟏𝟎−𝟖 . Detail algoritma pada proses
perhitungan dapat dilihat pada Lampiran B laporan tesis ini.
Berikut merupakan detail dari setiap fungsi yang dipakai untuk algoritma pada blok
solusi yaitu sebagai berikut:
- Perhitungan regangan
55
Algoritma perhitungan regangan di atas dipakai pada proses perhitungan
regangan untuk penampang eksisting (tanpa perkuatan). Untuk penampang
dengan perkuatan jacketing yang memperhitungkan adanya initial load, maka
fungsi tersebut dimodifikasi dengan menambahkan initial strain yaitu sebagai
berikut:
Pada Gambar IV.3, nilai 𝑒𝑖 merupakan besaran initial strain pada segmen
penampang eksisting akibat initial load, sedangkan pada segmen penampang
jacketing nilai 𝑒𝑖 bernilai nol. Selanjutnya untuk parameter interface slip,
diperhitungkan dengan mengalikan hasil perhitungan regangan pada segmen
penampang jacket dengan nilai koefisien slip.
- Perhitungan tegangan
Hal yang juga penting dalam pemrogaman analisis non-linier penampang
adalah proses perhitungan tegangan pada setiap inkrementasi kurvatur.
Besarnya tegangan dapat diperoleh setelah nilai regangan pada setiap
inkrementasi kurvatur diperoleh dengan hubungan fungsi 𝑓(𝜀).
Proses perhitungan tegangan pada program yang telah disusun dapat dilakukan
dengan 2 (dua) cara, yaitu menggunakan fungsi built-in pada program Matlab
yaitu interp1 atau menggunakan user function yang dibuat menggunakan
formula untuk setiap jenis material (Gambar IV.4). Kedua fungsi tersebut
menghasilkan besaran yang sama, namun terdapat kelemahan dalam fungsi
built-in pada program Matlab (interp1) yaitu waktu komputasi yang sangat lama
dengan perbedaan mencapai ± 4x, berikut merupakan user function yang
digunakan dalam perhitungan tegangan pada tiap segmen material:
56
function [fi] = stress_fun(eco,espall,ecc,ecu,fco,fcc,esh,esu,fy,fsu,Ec,Es,ei,type)
% stress_fun: calculate stress of each layers based on strain of each
% layer-i and material type
% input:
% - eco = strain at peak stress for unconfined concrete
% - espall = spalling strain of unconfined concrete
% - ecc = strain at maximum confined concrete stress (fcc)
% - ecu = ultimate confined concrete compresive strain
% - fco = compressive strength of concrete (MPa)
% - fcc = compressive strength (peak) of confined concrete (MPa)
% - esh = onset of strain hardening
% - esu = ultimate tensile strain
% - fy = yield strength of longitudinal reinforcement (MPa)
% - fsu = tensile strength of longitudinal reinforcement(MPa)
% - Ec = modulus of elasticity of concrete (MPa)
% - Es = modulus of elasticity of steel (MPa)
% - ei = strain of layer-i
% - type = material type
% output:
% - fi = stress of layer-i
% notes :
% Please defined correctly the input variable above for each execution
% of this function
%
% the stress calculated by the formula in the material model from a given
% strain of each layers
%
switch lower(type)
case 'unconfined' % formula based on Mander et al.
fi = zeros(length(ei),1);
Esec = fco/eco;
r = Ec/(Ec-Esec);
x = ei/eco;
for i=1:length(ei)
if ei(i)<0
fi(i)=0; % don't consider tension strength of concrete
end
if ei(i)>0 && ei(i)<=2*eco
fi(i) = fco*x(i)*r/(r-1+x(i)^r);
end
if ei(i)>2*eco && ei(i)<=espall
fi(i) = fco*(2*r/(r-1+2^r))*((espall-ei(i))/(espall-2*eco));
end
if ei(i)>espall
fi(i) = 0;
end
end
case 'confined' % formula based on Mander et al.
fi = zeros(length(ei),1);
Esec = fcc/ecc;
r = Ec/(Ec-Esec);
x = ei/ecc;
for i=1:length(ei)
if ei(i)<0
fi(i) =0; % don't consider tension strength of concrete
end
if ei(i)>0 && ei(i)<=ecu
fi(i) = fcc*x(i)*r/(r-1+x(i)^r);
end
if ei(i)>ecu
fi(i) = 0;
end
end
case 'steel' % strain hardening formula based on AASHTO/Caltrans
fi = zeros(length(ei),1);
r = esu-esh;
ey = fy/Es;
for i=1:length(ei)
if ei(i)>0 && ei(i)<=ey
fi(i) = Es*ei(i);
end
if ei(i)<0 && ei(i)>=-ey
fi(i) = Es*ei(i);
end
if ei(i)>=ey && ei(i)<=esh
fi(i) = fy;
end
if ei(i)<=-ey && ei(i)>=-esh
fi(i) = -fy;
end
if ei(i)>=esh && ei(i)<=esu
fi(i) = fsu-((fsu-fy)*((esu-ei(i))/r)^2);
end
if ei(i)<=-esh && ei(i)>=-esu
fi(i) = -fsu+((fsu-fy)*((esu+ei(i))/r)^2);
end
if ei(i)<-esu && ei(i)>esu
fi(i)=0;
end
end
otherwise
disp('type not available, enter the type of layer'); return;
end
end
57
- Perhitungan gaya
Perhitungan gaya dihitung dengan mengalikan besarnya tegangan pada tiap
segmen dengan luasannya, yaitu sebagai berikut:
58
Penampang Beton Tanpa Jacketing
Pada subbab ini akan disajikan hasil program analisis non-linier penampang beton
tanpa jacketing dengan menggunakan data penampang pilar Jembatan Cisomang.
Penampang pilar jembatan yang akan digunakan sebagai sampel dalam analisis
adalah data penampang pada pilar jembatan P2 yang memiliki geometri penampang
berbentuk octagon hollow (Gambar IV.6).
Detail dimensi dan penulangan pilar P2 jembatan Cisomang yaitu sebagai berikut:
Parameter geometri dan properti material dari penampang disajikan pada tabel di
bawah ini:
59
Berdasarkan ilustrasi pada Gambar IV.6, dapat dilihat bahwa terdapat chamfer pada
geometri penampang pilar P2 sebesar 200 milimeter. Untuk memudahkan dalam
proses diskritisasi penampang dan melihat bahwa besaran chamfer yang relatif kecil
dibandingkan dengan dimensi penampang, maka digunakan pendekatan model
geometri penampang persegi. Pendekatan model geometri tersebut diilustrasikan
pada gambar di bawah ini yaitu sebagai berikut:
3 4
5 6 7 8
1 x
60
Berikut disajikan hasil pemrograman:
1. Diskritisasi Penampang
61
Gambar IV.11 Kurva hubungan tegangan-regangan material baja tulangan
50
Tegangan (MPa)
40
30
Pemrograman Matlab (Cover)
20 Pemrograman Matlab (Core)
XTRACT (Cover)
10 XTRACT (Core)
0
0 0.005 0.01 0.015 0.02 0.025 0.03
Regangan
Pada Gambar IV.12, terdapat perbedaaan model konstitutif material beton tidak
terkekang (cover) antara hasil pemrograman Matlab dan XTRACT. Hal tersebut
disebabkan perbedaan persamaan dalam mendefinisikan hubungan tegangan-
62
regangan material beton. Pada XTRACT tegangan mengalami penurunan
secara linier dimulai pada saat beton telah mencapai 𝜀𝑐𝑢 = 0,003 (regangan
beton ultimit tidak terkekang), sedangkan pada pemrograman Matlab yang
disusun, asumsi penurunan linier dimulai pada saat beton telah mencapai
regangan 2𝜀𝑐𝑜 = 0,004 (Mander dkk., 1988).
6
Momen (kN-m)
0
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04
Kurvatur (1/m)
63
Momen-Kurvatur arah Minor
7
x 10000 6
5
Momen (kN-m)
3
Pemrograman Matlab, P=0
2 Pemrograman Matlab, P=0,13Po
XTRACT, P=0
1
XTRACT, P=0,13Po
0
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045 0.05
Kurvatur (1/m)
Berdasarkan Gambar IV.13 dan Gambar IV.14 di atas, dapat dilihat bahwa
kurva hubungan momen-kurvatur yang dihasilkan dari program yang telah
disusun sangat mendekati kurva yang diperoleh dari program XTRACT.
Perbandingan hasil titik-titik penting pada kurva tersebut juga menunjukan hasil
yang cukup dekat pada kedua arah sumbu penampang dengan perbedaan
sebesar ≤ 0,75% (Tabel IV.3).
64
Hal tersebut penting, mengingat dalam pemodelan sendi plastis elemen struktur
pilar, idealisasi kurva bilinier tersebutlah yang digunakan sebagai input data
analisis pushover yang pemodelan dan analisisnya dilakukan dengan bantuan
software Midas Civil.
65
Penampang Beton dengan Jacketing
Pada subbab ini akan disajikan hasil pemrograman analisis non-linier penampang
dengan perkuatan jacketing beton yang formulasinya sesuai dengan yang telah
dijabarkan pada subbab III.3.1. Data penampang yang digunakan masih
menggunakan data penampang perkuatan pilar jembatan Cisomang, yaitu pilar P2.
Initial load yang direpresentasikan sebagai initial curvature diasumsikan dalam dua
kondisi, yaitu kondisi pada saat initial curvature berada di bawah dan di atas
curvature yield penampang eksisting (tanpa perkuatan). Sedangkan interface slip
bekerja secara linier pada bidang slip di sekeliling penampang yang perhitungannya
dilakukan dengan cara mereduksi regangan pada penampang jacket menggunakan
koefisien slip.
Detail perkuatan jacketing beton pada pilar P2 jembatan Cisomang yaitu sebagai
berikut:
66
Dari Gambar IV.16 di atas, maka dalam pemrograman analisis non-linier
penampang dilakukan pemodelan penampang seperti pada ilustrasi di bawah ini:
18 19 20 21 22 23 24 18 19 20 21 22 23 24
16 12 13 14 15 16 17 16 12 13 14 15 16 17
14 10 30 31 32 11 15 14 10 30 31 32 11 15
= 12
8
28 29
9
13
+ 12
8
28 29
9
13
10 6 25 26 27 7 11 10 6 25 26 27 7 11
8 1 2 4 5 9 8 1 2 4 5 9
3 3
1 2 3 4 5 6 7 1 2 3 4 5 6 7
30 31 32 33 34 35 36 37 38 39 40
25 26 27 28 29 31 32
28 24 30 29
26 22 18 19 20 21 22 23 24 23 27
24 20 16 12 13 14 15 16 17 21 25
22 18 14 10 46 47 48 11 15 19 23
8 21
20 9 17
16
12 44 45 13
18 14 10 6 41 42 43 7 11 15 19
16 12 8 1 2 4 5 9 13 17
3
14 10 1 2 3 4 5 6 7 11 15
12 1 2 3 4 5 6 7 8 9 13
1 2 3 4 5 6 7 8 9 10 11
67
IV.4.2.1 Material Beton Confined dan Unconfined
Perhitungan model konstitutif untuk material beton confined dan unconfined pada
penampang beton dengan perkuatan jacketing dilakukan dengan menghitung
kekangan efektif eksisting dan jacketing yaitu dengan menjumlahkan luasan
parabola pada penampang eksisting dan jacket (Gambar IV.19).
4 18 19 20 21 22 23 24
14
2 16 12 13 15 16 17
3 14 10 30 31 32 11 15
= +
3 4
8
9
5 6 7 8 12 28 29 13
2 10 6 25 26 27 7 11
8 1 2 4 5 9
1 3
1 1 2 3 4 5 6 7
Pada Gambar IV.20 terlihat bahwa terjadi kenaikan besarnya tegangan dan
regangan ultimit pada inti beton (𝑓𝑐𝑐 dan 𝜀𝑐𝑐 ) dengan perkuatan jacketing
dibandingkan dengan penampang eksisting, hal tersebut disebabkan karena
kontribusi tambahan tegangan lateral yang disumbangkan oleh tulangan transversal
jacket. Kenaikan tegangan yang terjadi pada inti beton (𝑓𝑐𝑐 ) tidak signifikan terjadi
dikarenakan luasan efektif inti beton yang tidak terkekang oleh tulangan transversal
68
jacket pada arah bidang penampang beton cukup besar, hal tersebut diakibatkan
tidak adanya ikatan tambahan (ties) pada tulangan transversal.
1. Skenario 1
- Direction = Major
- Axial load = 18150 kN
- Initial Moment (𝑀𝑖 ) = 30000 kN-m (𝑀𝑖 ≤ 𝑀𝑦(𝑝𝑟𝑒−𝑗𝑎𝑐𝑘𝑒𝑡) , Tabel IV.3)
- Interface slip = ignored slip (komposit)
69
2. Skenario 2
- Direction = Major
- Axial load = 18150 kN
- Initial Moment (𝑀𝑖 ) = 60000 kN-m (𝑀𝑖 > 𝑀𝑦(𝑝𝑟𝑒−𝑗𝑎𝑐𝑘𝑒𝑡) , Tabel IV.3)
- Interface slip = ignored slip (monolit)
70
Pembahasan
Pada bagian ini akan dibahas mengenai hasil yang telah diperoleh dari kurva
hubungan momen-kurvatur dengan perkuatan jacketing. Pembahasan terkait
dengan penentuan titik yield dan ultimit, kekuatan dan daktilitas penampang, profil
regangan penampang, kondisi jika asumsi slip terjadi, perbandingannya dengan
analisis kurva hubungan momen-kurvatur dengan pendekatan model monolit, dan
pemodelan sendi plastis dalam bentuk hubungan momen-rotasi sesuai dengan
bentuk kurva hubungan beban-perpindahan (backbone curve) FEMA.
71
Hal yang menarik dapat dilihat juga pada Gambar IV.21, dimana untuk kondisi
perkuatan dilakukan pada saat tulangan longitudinal eksisting belum mencapai
leleh (𝑀𝑖 ≤ 𝑀𝑦(𝑝𝑟𝑒−𝑗𝑎𝑐𝑘𝑒𝑡) ), terjadi kenaikan yang signifikan pada 𝑀𝑦−𝑒𝑥 (leleh
tulangan longitudinal eksisting) sampai sebesar ≥ 2 kalinya. Peningkatan juga
terjadi pada 𝜑𝑦−𝑒𝑥 (leleh tulangan longitudinal eksisting) sebesar 12%.
(a)
72
(b)
(c)
(d)
Gambar IV.24 Profil regangan penampang dengan jacketing: (a) titik initial, (b)
titik initial+∆𝜑, (c) titik leleh tulangan jacket, dan (d) titik ultimit
73
IV.4.3.4 Perbandingan dengan Monolit
Pada penelitian ini akan dibandingkan analisis kurva hubungan momen-kurvatur
dengan pendekatan monolit (asumsi initial load diabaikan). Hal tersebut dilakukan
untuk melihat bagaimana pengaruh initial load terhadap kekuatan dari penampang.
74
Gambar IV.26 Perbandingan kurva hubungan momen-kurvatur dengan pendekatan
monolit (𝑀𝑖 > 𝑀𝑦(𝑝𝑟𝑒−𝑗𝑎𝑐𝑘𝑒𝑡)) – ignored slip
Pada Gambar IV.25 dan Gambar IV.26 terlihat bahwa hasil analisis kurva hubungan
momen-kurvatur antara case-1 dan case-4 menunjukan perbedaan kekuatan ultimit
sebesar ±7%. Pendekatan analisis momen-kurvatur pada penampang dengan
perkuatan jacketing menggunakan case-4 tidak direkomendasikan, karena akan
mengakibatkan kinerja struktur bangunan menjadi overestimate. Respons kekuatan
penampang untuk case-2 dan case-3 secara garis besar menunjukan hasil yang tidak
berbeda, hal tersebut dikarenakan perbedaan model konstitutif yang dipakai untuk
diskritisasi pada bagian outer cover dan inner jacket hanya memiliki perbedaan
tegangan sebesar ≤ 1%. Berdasarkan hal tersebut, maka rekomendasi yang aman
dan praktis dalam praktek di lapangan adalah menggunakan case-2, dimana
material jacket dimodelkan sebagai beton unconfined.
Tabel IV.8 Paremeter perbandingan analisis dengan monolit
Parameter Case-1 Case-2 Case-3 Case-4
𝑴𝒊 ≤ 𝑴𝒚(𝒑𝒓𝒆−𝒋𝒂𝒄𝒌𝒆𝒕)
𝝋𝒚 (1/m) 0.000998 0.000808 0.000808 0.000812
𝝋𝒖 (1/m) 0.035870 0.035630 0.035630 0.033790
𝑴𝒚 (kN-m) 119890.32 117427.8484 117423.0510 117100.6825
𝑴𝒖 (kN-m) 161598.79 161455.9109 161511.7650 173556.4952
𝑴𝒊 > 𝑴𝒚(𝒑𝒓𝒆−𝒋𝒂𝒄𝒌𝒆𝒕)
𝝋𝒚 (1/m) 0.002676 0.000808 0.000808 0.000812
𝝋𝒖 (1/m) 0.037577 0.035630 0.035630 0.033790
𝑴𝒚 (kN-m) 124966.46 117427.8484 117423.0510 117100.6825
𝑴𝒖 (kN-m) 161650.75 161455.9109 161511.7650 173556.4952
75
Perbandingan juga dilakukan untuk model kurva hubungan momen-kurvatur
bilinier seperti pada gambar di bawah ini:
Dari kedua gambar di atas dapat dilihat bahwa perbedaan kurva hubungan momen-
kurvatur bilinier antara model analisis dengan initial load (case-1) dengan model
analisis tanpa initial load (case-2, case-3, dan case-4) menunjukkan perbedaan
yang kecil yaitu ≤ 4%, sehingga dapat disimpulkan bahwa analisis dengan
76
memperhitungkan kondisi initial load tidak terlalu mempengaruhi kinerja struktur
secara keseluruhan. Pembuktian lebih lanjut akan disajikan dalam bentuk
perbandingan profil tegangan-regangan ultimit ke empat case tersebut yaitu sebagai
berikut:
(a)
(b)
Gambar IV.30 Perbandingan profil tegangan pada kurvatur ultimit: (a) tegangan
beton, (b) tegangan baja tulangan
77
Dari kedua gambar di atas, dapat dilihat bahwa perbandingan profil regangan dan
profil tegangan untuk keempat case yang telah dicoba juga membuktikan bahwa
perbedaan yang terjadi juga tidak signifikan, dan membuktikan pernyataan
sebelumnya bahwa kinerja struktur secara kesuluruhan tidak akan jauh berbeda.
Berikut disajikan ilustrasi regangan yang terjadi pada kondisi ultimit dengan
mengaplikasikan besaran slip coefficient dengan nilai koefisien sebesar 0; 0,05; 0,1;
0,5; 0,7; dan 0,9 yaitu sebagai berikut:
Gambar IV.31 Profil regangan pada kurvatur ultimit dengan asumsi slip
Pada gambar di atas dapat dilihat bahwa profil regangan yang terjadi untuk setiap
nilai koefisien slip akan mereduksi nilai regangan, dimana kekuatan penampang
dengan perkuatan jacketing akan tereduksi maksimum jika koefisien yang
78
digunakan adalah nol (tidak ada ikatan pada bidang kontak) sehingga menyebabkan
kapasitas dari penampang akan menjadi seperti kapasitas dari penampang eksisting.
Pada Gambar IV.31 juga dapat dilihat bahwa terjadi perubahan posisi garis netral
saat kondisi untuk setiap besaran nilai koefisien slip (μ) dibandingkan dengan
kondisi tanpa terjadinya slip.
IV.5 Rangkuman
Dalam bab ini telah dipaparkan mengenai penyusunan paket program komputer
analisis hubungan momen-kurvatur (𝑀 − 𝜑) sesuai dengan formulasi yang telah
dijelaskan pada bab sebelumnya. Konsep dasar mengenai pembagian program
menjadi satu program utama dan beberapa sub-program juga telah dijelaskan.
Pembagian program atas empat blok, yaitu blok pembacaan data, blok pemrosesan
data, blok solusi dan blok keluaran data juga telah dipaparkan. Detail dari bahasa
program Matlab untuk analisis non-linier penampang dengan perkuatan jacketing
disajikan pada lampiran tesis ini.
79
Dari hasil perbandingan yang telah dilakukan pada penampang tanpa perkuatan,
diperoleh bahwa pemgrograman yang telah disusun memiliki hasil yang cukup
akurat atau nilai perbedaan yang relatif kecil. Selanjutnya data keluaran program
yang telah disusun berupa momen-kurvatur (𝑀 − 𝜑) akan dijadikan sebagai input
dalam analisis pushover pada bab selanjutnya yang proses pemodelan dan
analisisnya dilakukan dengan bantuan MIDAS Civil.
80
BAB V Studi Kasus
Perpindahan Pilar
Berdasarkan hasil studi yang dilakukan oleh Pusjatan dan LAPI ITB pada tahun
2016 diperoleh data sebagai berikut:
Tabel V.1 Hasil studi Pusjatan tahun 2016 (Zarkasi dkk., 2018)
81
Tabel V.2 Hasil studi LAPI ITB tahun 2016 (Zarkasi dkk., 2018)
Berdasarkan tabel di atas dapat diketahui bahwa perpindahan yang dialami pilar P0,
P1, dan P2 relatif besar yaitu 0,153 m pada arah longitudinal untuk P0, 0,264 m
pada arah longitudinal untuk P1 dan 0,525 m pada arah longitudinal untuk P2.
82
Ilustrasi deformasi pada pilar tersebut digambarkan pada gambar di bawah ini:
Gambar V.2 Ilustrasi pola retak yang terjadi pada pilar (LAPI ITB, 2017b)
83
Dokumentasi Kerusakan
Berikut disajikan beberapa foto dokumentasi terkait kerusakan yang terjadi pada
elemen struktur jembatan yaitu sebagai berikut:
84
No. Jenis Penanganan Kategori Penanganan
5 Connection Beam Struktur
6 Strutting Baja Struktur
7 Ground Anchor P0 Geoteknik
8 Ground Anchor P1 Geoteknik
9 Jacketing di P0 Struktur
10 Jacketing di P1 Struktur
11 Jacketing di P2 Struktur
12 Jacketing di P5 Struktur
13 Pemasangan FRP di P2 Struktur
14 Pemasangan FRP di P3 Struktur
15 Pemasangan FRP di P4 Struktur
16 Drainase Air
17 Profil Jalan Jalan
Perkuatan Geoteknik
Untuk perkuatan geoteknik akan disajikan secara umum/tidak dibahas secara
mendetail. Pada tabel Tabel V.4 di atas, daftar pekerjaan perkuatan untuk kategori
geoteknik difokuskan pada upaya penanganan tanah clay shale sehingga tidak
terjadi lagi pergeseran pada pondasi jembatan, adapun hasil yang diperoleh dari
upaya perkuatan geoteknik (LAPI ITB, 2017a) adalah sebagai berikut:
• Telah dilakukan analisis stabilitas lereng Jembatan Cisomang dengan
perhitungan balik yang menghasilkan SF = 1,0, dan dilakukan rangkaian
perkuatan sehingga mencapai SF = 1,44.
• Urutan analisis disesuaikan dengan pelaksanaan pekerjaan di lapangan, dimulai
dengan pemasangan strutting, dilanjutkan dengan cutting/unloading, kemudian
perkuatan pondasi bor di P2 dan antara P1-P2, pemasangan connection beam
dan terakhir adalah konstruksi ground anchor di P0, P1 dan vertikal di
connection beam.
• Angka keamanan tiap-tiap analisis pada kondisi drained SF = 1,43 – 1,55,
sedangkan pada kondisi undrained SF = 1,52 – 1,66.
• Tambahan perkuatan Ground Anchor di P0 dan P1 untuk mengurangi
pergerakan P1 dan sekaligus menaikkan SF drained.
• Hasil analisis stress-deformasi menunjukkan bahwa gaya-gaya dalam pada
beam dan pondasi bor tidak overstress dan memenuhi desain kriteria perkuatan.
85
Perkuatan Struktur
Perkuatan struktur yang dilakukan terhadap kerusakan pada Jembatan Cisomang
dibagi menjadi dua bagian yaitu perkuatan jangka pendek (sementara) dan jangka
panjang (permanen).
Gambar V.5 Grouting pada pilar P0, P1, P2, dan P5 (LAPI ITB, 2017b)
86
3. FRP (Fiber Reinforced Polymer) yang digunakan pada Jembatan Cisomang
adalah tipe High Strength Carbon Fibre dengan spesifikasi: Tebal 0,166 mm;
Ultimate Tensile Strength 4600 MPa; Ultimate Tensile Strain 4%; Fibre
Modulus 340 GPa; dan Fibre Density 2,10 g/cm3. Setiap pelapisan lembaran
FRP didahului dengan primer coating dan ditutupi dengan impregnation primer
coating. Pada Jembatan Cisomang ini pemasangan FRP dilakukan pada arah
horizontal menggunakan tiga lapis FRP, sedangkan pada arah vertikal
menggunakan empat lapis (Gambar V.7 & Gambar V.8).
87
V.2.2.2 Perkuatan Permanen
Setelah pekerjaan perkuatan geoteknik dan perkuatan sementara pada struktur
jembatan selesai, hal selanjutnya yang dilakukan adalah perkuatan elemen struktur
pilar jembatan yang mengalami deformasi. Perkuatan pilar jembatan dilakukan
dengan metode jacketing beton pada pilar P0, P1, P2, dan P5 dengan mutu 30 MPa,
dan perkuatan dengan metode jacketing baja setebal 20 mm yang diaplikasikan
pada pilar P2 bagian atas untuk menambah kekuatan penampang dalam memikul
beban gempa yang terjadi. Jacketing beton dilakukan untuk memperkuat keempat
pilar yang telah mengalami deformasi sehingga dapat memenuhi ketentuan yang
diatur dalam standard yang berlaku pada saat sekarang. Berikut ditabulasikan
rangkuman perkuatan jacketing yang diaplikasikan pada keempat pilar tersebut
yaitu sebagai berikut:
Berikut disajikan rincian gambar perkuatan jacketing pada keempat pilar tersebut:
1. Pilar P0
88
Gambar V.10 Detail penulangan jacketing beton P0
2. Pilar P1
89
3. Pilar P2
90
Gambar V.15 Detail penulangan jacketing beton P2
4. Pilar P5
91
V.3 Pemodelan Struktur Jembatan
Sistem Struktur
Jembatan Cisomang merupakan jembatan yang memiliki panjang 252,127 meter
dan lebar 2 × 12,60 meter dengan konfigurasi tujuh bentang yang ditopang oleh
dua abutment (A1 dan A2) dan enam buah pilar (P0, P1, P2, P3, P4, dan P5).
Struktur atas jembatan merupakan balok I-Prategang dengan tipe simple beam pada
bentang A1-P0, P0-P1, P4-P5, dan P5-A2 serta bentang P1-P2-P3-P4 merupakan
tipe continuous integral (Imran dkk., 2005). Pilar jembatan merupakan beton
bertulang dengan ketinggian tertinggi mencapai 46,451 meter. Berikut disajikan
beberapa gambar jembatan Cisomang yaitu sebagai berikut:
92
Data Teknis Jembatan
Data teknis jembatan Cisomang diambil dari beberapa dokumen yaitu data as-built
drawing, data laporan analisis struktur perkuatan jembatan yang disusun oleh LAPI
ITB (LAPI ITB, 2017b), data as-built drawing jembatan, dan data gambar
perkuatan jembatan.
Properti Material
Pada jembatan Cisomang properti material yang digunakan sebagai input di dalam
pemodelan dan analisis struktur jembatan adalah sebagai berikut:
Material Properti
Beton (cast-in-place)
Bore Pile 𝑓𝑐′ = 30 MPa
Pilecap 𝑓𝑐′ = 30 MPa
Pier dan pierhead 𝑓𝑐′ = 30 MPa
Prestressed I-Girder 𝑓𝑐′ = 41,50 MPa
Balok Diafragma 𝑓𝑐′ = 30 MPa
Pelat dek/lantai 𝑓𝑐′ = 30 MPa
Precast plank 𝑓𝑐′ = 30 MPa
Precast parapet 𝑓𝑐′ = 30 MPa
Abutmen 𝑓𝑐′ = 30 MPa
Pelat injak 𝑓𝑐′ = 30 MPa
Prestress Strand
Low Relaxation 2.5% at 70% GUTS
Kuat tarik (tensile strength) 1860 MPa
Kuat leleh (yield strength) 1670 MPa
Modulu elastisitas 195,000 MPa
Baja Tulangan
Kuat leleh (yield strength) D < 13 mm, BJTD24 (𝑓𝑦 = 240MPa)
D ≥ 13 mm, BJTD40 (𝑓𝑦 = 420 MPa)
Modulus elastisitas 200,000 MPa
93
Tabel V.7 Data tulangan longitudinal pilar
94
Analisis Pembebanan
Beban yang ditinjau dalam desain jembatan terbagi menjadi dua yaitu beban
permanen dan beban transien. Beban permanen merupakan beban yang secara
permanen bekerja pada struktur jembatan, sedangkan beban transien adalah beban
yang terikat pada waktu. Beban permanen dan transien, beserta faktor bebannya
yang ditinjau pada jembatan ini dijabarkan pada subbab selanjutnya.
Pengaruh beban gempa (EQ) pada jembatan direncanakan sesuai dengan ketentuan
dalam peraturan SNI 2833:2016. Beban gempa yang diaplikasikan pada struktur
merupakan beban gempa arah horizontal dengan periode ulang gempa sebesar 1000
tahun (7% dalam 75 tahun). Prosedur spesifikasi situs berdasarkan korelasi data N-
SPT untuk pembuatan respon spektra dilakukan sampai pada kedalaman 30 meter.
95
Berikut merupakan data N-SPT pada pilar P2 (data nilai N-SPT terkecil) beserta
perhitungan untuk menentukan kelas situs jembatan yaitu sebagai berikut:
Pier P2
𝒕𝒊 ̅
𝒅𝒊 𝑵𝒊 𝒕𝒊 ⁄𝑵 𝑵
𝒊
1.5 17 1.5 0.0882
3 22 1.5 0.0682
4.52 17 1.52 0.0894
6 25 1.48 0.0592
7.54 22 1.54 0.0700
9 28 1.46 0.0521
10.52 26 1.52 0.0585
12 35 1.48 0.0423
13.53 41 1.53 0.0373
15 32 1.47 0.0459
16.51 50 1.51 0.0302 28.18077
18 50 1.49 0.0298
19.51 17 1.51 0.0888
21 29 1.49 0.0514
22.48 31 1.48 0.0477
24 39 1.52 0.0390
25.47 38 1.47 0.0387
27 50 1.53 0.0306
28.5 33 1.5 0.0455
30 29 1.5 0.0517
30 1.064556
Berdasarkan perhitungan pada tabel di atas, maka kelas situs pada lokasi jembatan
termasuk dalam kelas situs SD atau tanah sedang. Selanjutnya perhitungan respon
spektra dilakukan dengan nilai PGA sebesar 0,448g. Berikut perhitungan respon
spektra yang dipakai dalam analisis kinerja jembatan yaitu sebagai berikut:
96
Parameter Respon Spektra Notasi Deskripsi
Faktor amplifikasi periode 1 detik Fv 1,5000
Koefisien PGA As 0,4713
Spektra desain pada periode 0,2 detik SDS 1,2240
Spektra desain pada periode 1 detik SD1 0,7500
Parameter Periode T0 0,1225
Ts 0,6127
Dari parameter – parameter respon spektra di atas, maka kurva respon spektra
desain adalah sebagai berikut:
1.2
1
Csm, (g)
0.8
0.6
0.4
0.2
0
0 2 4 6 8 10 12
Periode (detik)
Parameter lain yang perlu ditentukan terkait dengan beban gempa adalah sebagai
berikut:
- Klasifikasi operasional jembatan : Jembatan Lainnya
- Kategori kinerja seismik : Zona Gempa 4 (SD1 > 0,5)
- Faktor beban hidup kondisi gempa : 0 (jembatan lainnya)
Catatan:
Penentuan klasifikasi operasional jembatan didasarkan pada asumsi bahwa jembatan masih dapat
dilalui kendaraan darurat dengan lalu lintas yang terbatas setelah mengalami gempa rencana dan
adanya rute alternatif di sekitar lokasi jembatan.
97
Penampang Inersia Efektif
Penampang efektif elemen struktur jembatan yang digunakan dalam pemodelan dan
analisis menggunakan ketentuan yang diatur dalam FEMA-273 yaitu sebagai
berikut:
Kombinasi Pembebanan
Berdasarkan kriteria pembebanan yang telah dijelaskan pada subbab V.3.3, maka
kombinasi pembebanan yang digunakan pada struktur jembatan sesuai dengan
peraturan SNI 1725:2016 yaitu sebagai berikut:
Kombinasi
Deskripsi
Pembebanan
ULS-1 1,30DL + 2,00SiDL + 1,80D
ULS-1 ± REM 1,30DL + 2,00SiDL + 1.80D ± 1,80 REM
SLS-1 1.00DL + 1.00SiDL + 1,00D
SLS-1 ± REM 1.00DL + 1.00SiDL + 1,00D ± 1,00 REM
ELS-1a 1,30DL + 2,00SiDL + 1,80D + (EQx + 0.30EQy)
ELS-1b 1,30DL + 2,00SiDL + 1,80D + (-EQx + 0.30EQy)
ELS-1c 1,30DL + 2,00SiDL + 1,80D + (EQx - 0.30EQy)
ELS-1d 1,30DL + 2,00SiDL + 1,80D + (-EQx - 0.30EQy)
ELS-2a 1,30DL + 2,00SiDL + 1,80D + (0,3EQx + EQy)
ELS-2b 1,30DL + 2,00SiDL + 1,80D + (-0,3EQx + EQy)
ELS-2c 1,30DL + 2,00SiDL + 1,80D + (0,3EQx - EQy)
ELS-2d 1,30DL + 2,00SiDL + 1,80D + (-0,3EQx - EQy)
98
V.4 Analisis dan Pembahasan
Pada subbab ini akan dibahas mengenai evaluasi kinerja struktur jembatan, dimana
elemen struktur pilar yang mengalami kerusakan pada struktur jembatan yaitu telah
diperkuat dengan jacketing beton. Tahapan dalam analisis meliputi perilaku
dinamik struktur, penentuan kondisi eksisting struktur, pemodelan sendi plastis
elemen struktur, dan kinerja struktur jembatan menggunakan metodel analisis
pushover.
Analisis linier dan non-linier struktur jembatan dilakukan dengan bantuan software
Midas Civil 2019 (trial license). Struktur jembatan yang dimodelkan hanya pada
sebagian pilar yaitu P2, P3, dan P4, dimana ketiga pilar tersebut merupakan sistem
struktur dengan bentang menerus. Berikut merupakan ilustrasi tampilan 3D dari
pemodelan struktur jembatan yang telah dilakukan yaitu sebagai berikut:
99
Berikut adalah rangkuman dari 3 (tiga) pola getar fundamental dari model struktur
jembatan ini:
(a)
(b)
(c)
Gambar V.22 Pola getar struktur jembatan: (a) translasi-x, (b) translasi-y, dan (c)
rotasi-z
100
Penentuan Kondisi Eksisting Struktur
Penentuan kondisi eksisting struktur perlu dilakukan untuk mengetahui kondisi
yang terjadi pada elemen struktur pilar yang akan dipakai sebagai titik initial load
dalam analisis kurva hubungan momen-kurvatur penampang pilar dengan
perkuatan jacketing beton.
Kondisi eksisting yang akan digunakan sebagai titik initial load direpresentasikan
sebagai initial moment (𝑀𝑖 ) yang nilainya diperoleh dengan melakukan analisis
non-linier statik pada struktur jembatan akibat oleh beban gravitasi dan perpindahan
pilar jembatan. Momen pada masing-masing pier jembatan merupakan momen
inisial yang akan digunakan untuk penentuan kondisi eksisting struktur jembatan
dan titik inisial pada analisis non-linier penampang dengan perkuatan jacketing.
(a)
(b)
Gambar V.23 Momen inisial pada pilar jembatan: (a) arah major (transversal
jembatan), (b) arah minor (longitudinal jembatan)
101
Tabel V.13 Kondisi eksisting pada elemen pilar jembatan
Result Inelastic Hinge - Rz
Hinge Inelastic
Type Elem Load Time/Step Deform Force D/D1 D/D2 Status P1 P2 P3 D1 D2 D3
Location Hinge Prop.
Lumped 927 I P2-Hinges NL-Static(all) 10 0.002265 54837.112 2.037 0 1st Yield 54633 - - 0.001112 - -
Lumped 928 I P2-Hinges NL-Static(all) 10 0.002437 54867.536 2.191 0 1st Yield 54633 - - 0.001112 - -
Lumped 929 I P3-Hinges NL-Static(all) 10 -0.0005699 -26292.548 0.5143 0 Elastic 51120 - - -0.001108 - -
Lumped 930 I P3-Hinges NL-Static(all) 10 -0.0005453 -25157.922 0.4921 0 Elastic 51120 - - -0.001108 - -
Lumped 931 I P4-Hinges NL-Static(all) 10 0.0003268 14791.922 0.294 0 Elastic 50306 - - 0.001111 - -
Lumped 932 I P4-Hinges NL-Static(all) 10 0.0003551 16072.922 0.3195 0 Elastic 50306 - - 0.001111 - -
Lumped 927 J P2-Hinges NL-Static(all) 10 -0.003354 -55029.844 3.016 0 1st Yield 54633 - - -0.001112 - -
Lumped 928 J P2-Hinges NL-Static(all) 10 -0.003364 -55031.728 3.026 0 1st Yield 54633 - - -0.001112 - -
Lumped 929 J P3-Hinges NL-Static(all) 10 0.000616 28420.184 0.556 0 Elastic 51120 - - 0.001108 - -
Lumped 930 J P3-Hinges NL-Static(all) 10 0.000603 27822.432 0.5443 0 Elastic 51120 - - 0.001108 - -
Lumped 931 J P4-Hinges NL-Static(all) 10 -0.000363 -16430.912 0.3266 0 Elastic 50306 - - -0.001111 - -
Lumped 932 J P4-Hinges NL-Static(all) 10 -0.0003779 -17105.84 0.34 0 Elastic 50306 - - -0.001111 - -
Result Inelastic Hinge - Ry
Inelastic
Hinge
Type Elem Hinge Load Time/Step Deform Force D/D1 D/D2 Status P1 P2 P3 D1 D2 D3
Location
Prop.
Lumped 927 I P2-Hinges NL-Static(all) 10 0.007399 45571.4 5.446 0 1st Yield 44667 - - 0.001359 - -
Lumped 928 I P2-Hinges NL-Static(all) 10 0.007338 45562.336 5.402 0 1st Yield 44667 - - 0.001359 - -
Lumped 929 I P3-Hinges NL-Static(all) 6 -0.0004613 -14535.824 0.3387 0 Elastic 42912 - - -0.001362 - -
Lumped 930 I P3-Hinges NL-Static(all) 6 -0.0004775 -15044.483 0.3506 0 Elastic 42912 - - -0.001362 - -
Lumped 931 I P4-Hinges NL-Static(all) 6 -0.0006225 -20422.902 0.4763 0 Elastic 42877 - - -0.001307 - -
Lumped 932 I P4-Hinges NL-Static(all) 6 -0.0006231 -20444.54 0.4768 0 Elastic 42877 - - -0.001307 - -
Lumped 927 J P2-Hinges NL-Static(all) 10 -0.03335 -49456.936 24.55 0 1st Yield 44667 - - -0.001359 - -
Lumped 928 J P2-Hinges NL-Static(all) 10 -0.03336 -49457.78 24.55 0 1st Yield 44667 - - -0.001359 - -
Lumped 929 J P3-Hinges NL-Static(all) 10 0.0008596 27086.706 0.6312 0 Elastic 42912 - - 0.001362 - -
Lumped 930 J P3-Hinges NL-Static(all) 10 0.0008785 27680.086 0.645 0 Elastic 42912 - - 0.001362 - -
Lumped 931 J P4-Hinges NL-Static(all) 10 0.001281 42042.504 0.9805 0 Elastic 42877 - - 0.001307 - -
Lumped 932 J P4-Hinges NL-Static(all) 10 0.001282 42049.112 0.9807 0 Elastic 42877 - - 0.001307 - -
Dari hasil analisis non-linier statik di atas dapat diketahui bahwa pier jembatan P2
sudah mengalami kelelehan (𝑀𝑖 > 𝑀𝑦−𝑙𝑜𝑛𝑔 ), berikut merupakan tabulasi
rangkuman kondisi inisial Pilar P2 yang telah mengalami kelelehan:
Nilai momen dan kurvatur inisial pada Tabel V.14 di atas tersebut akan dipakai
sebagai titik initial load pada analisis kurva hubungan momen-kurvatur penampang
pilar P2 yang diperkuat dengan metode jacketing.
102
dilakukan sebelum aplikasi jacketing. Efek perkuatan sementara pada pilar P2
menggunakan metode FRP Jacket tidak akan diperhitungkan karena pada
penampang bukan lingkaran, efek kekangan harus diasumsikan untuk diabaikan
jika rasio dimensi penampag (𝑏⁄ℎ) ≥ 2 dan dimensi penampang (𝑏 𝑜𝑟 ℎ) ≥ 900 mm
(ACI Committee 440.2R-08, 2008, bag. 12.3.2).
Pengecekan terhadap faktor interface slip pada analisis kurva hubungan momen-
kurvatur dengan properti penampang perkuatan yaitu sebagai berikut:
- Dimensi (B×H) : 3500 mm × 4000 mm
- d’ : 82 mm
Dari kedua kombinasi di atas, berikut merupakan besarnya 𝑉𝑢 yang diperoleh dari
hasil analisis struktur pada software Midas Civil:
Tabel V.16 Pengecekan interface slip pada penampang dengan perkuatan jacketing:
arah major dan minor penampang
Arah Major Penampang Arah Minor Penampang
Parameter Nilai Satuan Ref Parameter Nilai Satuan Ref
bv 4000 mm Retrofit Drawing bv 3500 mm Retrofit Drawing
d 3918 mm d 3418 mm
φ 0.75 - ACI-318-14, 5.3.1 φ 0.75 - ACI-318-14, 5.3.1
Db,f 13-300 mm Retrofit Drawing Db,f 13-300 mm Retrofit Drawing
n-Db,f 16 buah Retrofit Drawing n-Db,f 16 buah Retrofit Drawing
Shear Connector Check Shear Connector Check
Avf 2123.72 mm2 - Avf 2123.72 mm2 -
fc' 30 MPa DED, SNI 2052:2017 fc' 30 MPa DED, SNI 2052:2017
fy 420 MPa DED, SNI 2052:2017 fy 420 MPa DED, SNI 2052:2017
ρv 0.0020226 - ρv 0.0020226 -
(a) Av,min 848.97 mm2 ACI-318-14, 16.4.6.1 (a) Av,min 848.97 mm2 ACI-318-14, 16.4.6.1
2 2
(b) Av,min 875.00 mm ACI-318-14, 16.4.6.1 (b) Av,min 875.00 mm ACI-318-14, 16.4.6.1
2 2
Av,min : greater of (a) & (b) 875 mm ACI-318-14, 16.4.6.1 Av,min : greater of (a) & (b) 875 mm ACI-318-14, 16.4.6.1
Check: Avf > Av,min OK Check: Avf > Av,min OK
Interface Slip Check Interface Slip Check
φ3,5bvd 41139.00 kN ACI-318-14, 16.4.4.2 φ3,5bvd 31402.88 kN ACI-318-14, 16.4.4.2
Check: Vu ≤ φ3,5bvd Yes Vnh : use Tabel 16.4.4.2 Check: Vu ≤ φ3,5bvd Yes Vnh : use Tabel 16.4.4.2
Vnh = 0,55bvd 8619.6 kN ACI-318-14, 16.4.4.2 Vnh = 0,55bvd 6579.65 kN ACI-318-14, 16.4.4.2
Cek, φVnh > Vu : OK - No Slip Cek, φVnh > Vu : OK - No Slip
103
Hasil perhitungan pada Tabel V.16 di atas menunjukkan bahwa kekuatan geser
horizontal nominal (𝑉𝑛ℎ ) penampang pilar P2 dengan perkuatan jacketing masih
melebihi gaya geser terfaktor yang terjadi pada penampang (𝑉𝑢 ), berdasarkan hal
tersebut maka interface slip diasumsikan tidak terjadi. Namun jika pada persamaan
III.29 tidak terpenuhi, interface slip terjadi dan koefisien slip dapat menggunakan
nilai 0,9 (Campione dkk., 2014; Vandoros dan Dritsos, 2008; Eduardo N. B. S.
Julio, 2005). Berikut merupakan ilustrasi hasil pemrograman kurva hubungan
momen-kurvatur pada pilar P2 bagian bawah dengan perkuatan jacketing beton:
(a)
(b)
Gambar V.24 Kurva hubungan momen-kurvatur pilar P2 bawah: (a) arah major
(transversal jembatan), (b) arah minor (longitudinal jembatan)
104
Analisis Pushover
Evaluasi kinerja struktur jembatan membutuhkan metode analisis non-linier untuk
memahami perilaku struktur jembatan. Analisis non-linier yang dilakukan pada
penelitian ini menggunakan metode Non-linear Static Pushover Analysis. Analisis
pushover dilakukan dengan tujuan sebagai berikut:
- Memperkirakan kondisi struktur jembatan pada saat terjadi gempa besar masih
dalam kinerja yang dipersyaratkan, yaitu tidak mengalami keruntuhan dengan
tingkat kerusakan yang sesuai dengan kriteria jembatan. Dalam hal jembatan
ini, kriteria yang ditentukan adalah Jembatan Lainnya, yang mensyaratkan
ketika terjadi gempa rencana, jembatan masih dapat dilalui kendaraan darurat
dengan lalu lintas yang terbatas setelah mengalami gempa rencana;
- Memastikan urutan terjadinya sendi plastis sesuai dengan kriteria yang
dipersyaratkan, yaitu sendi plastis hanya boleh terjadi pada pilar jembatan,
baik di ujung bawah atau di ujung atas.
Jacketing baja
Eksisting
(tanpa perkuaatan)
Jacketing beton
Gambar V.25 Pemodelan sendi plastis struktur jembatan pada Midas Civil
105
Selanjutnya dengan menggunakan program analisis non-linier penampang dengan
perkuatan jacketing beton yang telah disusun, properti inelastik dari semua pilar
jembatan ditabulasikan pada tabel di bawah ini, yaitu sebagai berikut:
Catatan:
- CJ : penampang dengan perkuatan jacketing beton
- SJ : penampang dengan perkuatan jacketing baja
- Ex : penampang eksisting (tanpa perkuatan)
106
Gambar V.27 Momen-rotasi pilar P2 dengan perkuatan jacketing arah minor
(longitudinal jembatan)
Control Node
107
Pola beban yang digunakan pada analisis ini menggunakan static nodal load di
kedua arah orthogonal struktur jembatan (lihat subbab II.4.3.2). Berikut ilustrasi
pola beban lateral untuk arah longitudinal pada analisis pushover jembatan:
(a)
(b)
Gambar V.29 Pola beban lateral: (a) arah longitudinal, (b) arah transversal
Sesuai dengan ilustrasi pada Gambar I.4, evaluasi kinerja struktur jembatan dengan
analisis pushover terbagi menjadi dua bagian yaitu kinerja jembatan eksisting dan
kinerja jembatan dengan perkuatan pada pilar P2. Analisis pushover dilakukan
dengan bantuan software Midas Civil yang hasilnya disajikan pada bagian
selanjutnya laporan penelitian ini.
108
Kinerja Jembatan Eksisting
Evaluasi kinerja jembatan eksisting terbagi menjadi dua kondisi yaitu kondisi pada
saat pilar jembatan sebelum dan sesudah mengalami beban perpindahan. Berikut
level kinerja jembatan eksisting dari hasil analisis pushover yaitu sebagai berikut:
(a)
(b)
109
(a)
(b)
Pada Gambar V.30 dan Gambar V.31 dapat dilihat bahwa beban perpindahan
menyebabkan penurunan kapasitas jembatan eksisting dalam memikul gaya gempa
yaitu dari 12603 kN menjadi 7948 kN, hal tersebut dikarenakan efek beban
perpindahan menyebabkan struktur jembatan menjadi semakin fleksibel.
110
Kinerja Jembatan dengan Perkuatan
Evaluasi kinerja jembatan yang telah diperkuat dengan jacketing beton pada pilar
P2 dilakukan dengan input properti inelastik elemen perkuatan sesuai dengan
perhitungan yang dilakukan pada subbab V.4.3 yaitu sebagai berikut:
(a)
(b)
Gambar V.32 Level kinerja jembatan dengan perkuatan di pilar P2: (a) arah
longitudinal, (b) arah transversal
111
Selanjutnya dilakukan pengecekan level kinerja elemen perkuatan pilar P2 bagian
bawah pada saat titik kinerja yaitu sebagai berikut:
9
8 Backbone Curve
Momen (kN-m)
7 IO
6 LS
5
CP
4
PP
3
2
1
0
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14
Rotasi (rad)
Berikut ditabulasikan level kinerja jembatan dengan perkuatan jacketing pada pilar
P2 sesuai dengan NCHRP Synthesis 440 (2013) yaitu sebagai berikut:
Berikut disajikan ilustrasi mekanisme terjadinya sendi plastis pada jembatan yaitu
sebagai berikut:
(a)
112
(b)
Gambar V.34 Status sendi plastis Push-X: (a) saat PP, (b) saat akhir pushover
Pada Gambar V.34 terlihat bahwa mekanisme terjadinya sendi plastis hanya terjadi
pada elemen pilar jembatan, sedangkan pada elemen struktur atas jembatan yaitu
pierhead dan PCI-Girder masih dalam kondisi elastik (tidak mengalami
plastifikasi). Hal lainnya yang dapat dilihat adalah pada elemen struktur pilar P2
yaitu segmen pilar bagian tengah yang tidak diperkuat juga terjadi sendi plastis.
0.14
0.12
0.10
Sa
0.08 TJ-2:Grav+Disp+EQ
J1-1:Grav+EQ
0.06
J0-1:Grav+EQ
0.04 J0-2:Grav+EQ
0.02
0.00
0.00 0.20 0.40 0.60 0.80 1.00 1.20 1.40 1.60
Sd
113
Keterangan:
- TJ : Existing, tanpa jacketing
- J0 : Jacketing, analisis penampang dengan pendekatan monolit
- J1 : Jacketing, analisis penampang dengan kondisi inisial
Perpindahan Rasio
Analisis Pushover Level Kinerja Jembatan
(m) (Δ/H)
TJ-1:Grav+EQ 0,4606 0,99% Fully Operational
TJ-2:Grav+DISP+EQ 0,6983 1,49% Operational
J1-1:Grav+EQ 0,4675 1,00% Operational
J0-1:Grav+EQ 0,4702 1,01% Operational
J0-2:Grav+EQ 0,4702 1,01% Operational
Dari Gambar V.35 dapat dilihat dengan jelas bahwa aplikasi perkuatan jacketing
pada pilar jembatan P2 dapat meningkatkan kapasitas jembatan ± 15% (J1-1 vs TJ-
1) dan ± 46% (J1-1 vs TJ-2). Perbandingan kurva kapasitas jembatan dengan
perkuatan jacketing pada pilar P2 pada saat PP untuk model sendi plastis dengan
pendekatan yang memperhitungkan kondisi initial load (J1-1) dan pendekatan
monolit (J0-1 & J0-2) menunjukan perbedaan kapasitas terhadap beban gempa
sebesar ≈ 2,0%, sedangkan level kinerja jembatan yang dihasilkan dari hasil analisis
pushover menunjukkan hasil yang sama pada saat PP yaitu operational. Hal
tersebut dikarenakan, beberapa hal yaitu sebagai berikut:
- Kedua pendekatan tersebut memiliki daktilitas kurvatur yang mendekati,
walaupun kapasitas dari penampang memiliki perbedaan.
- Level kinerja jembatan ditentukan dari besarnya rasio perpindahan yang
terjadi pada saat titik kinerja.
- Adanya kontribusi dari pilar jembatan lainnya yaitu pilar P3 dan P4,
berdasarkan perhitungan pada subbab V.4.2, kondisi eksistingnya masih
dalam keadaan elastik.
114
BAB VI Kesimpulan
VI.1 Kesimpulan
Pada penelitian ini telah ditunjukan beberapa hasil yang diperoleh dari analisis
perkuatan pilar jembatan dengan metode jacketing yang memperhitungkan
parameter initial load dan interface slip. Analisis non-linier penampang dengan
perkuatan jacketing dilakukan dengan mengembangkan program komputer
menggunakan bahasa program MATLAB untuk memperoleh kurva hubungan
momen-kurvatur dengan pendekatan fiber section, dimana model Mander dkk.
(1988) diadopsi sebagai model untuk material beton confined/unconfined dan
model Priestley dkk. (1996) untuk material baja tulangan.
Penentuan titik initial pada parameter initial load dalam perhitungan analisis non-
linier penampang dengan perkuatan jacketing dilakukan dengan analisis non-linier
statik, dimana besaran initial load merupakan initial moment pada elemen pilar
jembatan eksisting. Parameter initial load dalam analisis non-linier penampang
beton dengan perkuatan jacketing dilakukan dengan strategi penambahan nilai
regangan, yaitu pada bagian penampang eksisting, nilai regangan dari setiap delta
kurvatur ditambahkan dengan nilai regangan initial, sedangkan nilai regangan pada
bagian penampang jacket ditambahkan dengan nol. Selanjutnya, parameter
interface slip dalam analisis non-linier penampang beton dengan perkuatan
jacketing dihitung menggunakan cara sederhana yaitu dengan cara mengalikan nilai
regangan pada penampang jacket dengan koefisien slip.
115
pemrograman yang telah disusun pada penampang dengan perkuatan jacketing,
dihitung dengan asumsi bahwa kekakuan penampang eksisting pada saat aplikasi
jacketing memiliki kekakuan yang sama dengan kekakuan awalnya, walaupun telah
terjadi leleh pada tulangan longitudinal. Hal tersebut dikarenakan pada saat sebelum
aplikasi jacket diterapkan, kerusakan yang terjadi pada penampang eksisting (crack
atau spalled concrete) telah diperbaiki dengan grouting, sehingga kekakuan
penampang eksisting diasumsikan memiliki nilai kekakuan yang tetap.
Berdasarkan rangkuman tersebut di atas dan hasil analisis serta pembahasan yang
sudah dipaparkan pada bab sebelumnya, maka dapat disimpulkan sebagai berikut:
1. Perbandingan hasil analisis non-linier penampang yang diperkuat jacketing
memperhitungkan kondisi initial load dengan pendekatan monolit menunjukan
perbedaan kekuatan ultimit sebesar ±7% atau dikatakan bahwa efek initial load
tidak berpengaruh signifikan pada kapasitas penampang. Rekomendasi yang
aman dan praktis untuk aplikasi di lapangan dalam hal pemodelan hubungan
tegangan-regangan pada material jacket adalah dengan memodelkannya sebagai
material beton unconfined.
2. Efek interface slip pada kapasitas penampang berpengaruh signifikan dengan
nilai koefisien slip < 0,5, sehingga dapat diartikan bahwa dengan menggunakan
salah satu metode kekasaran permukaan (interface treatment), kapasitas
penampang sudah memadai dan penggunaan shear connector dapat dikurangi.
3. Perbandingan hasil analisis pushover pada penampang yang diperkuat jacketing
dengan input model sendi plastis memperhitungkan kondisi initial load dan
pendekatan monolit menunjukan perbedaan kapasitas pada saat PP sebesar ≈
2,0% untuk pendekatan pemodelan hubungan tegangan-regangan material
jacket sebagai beton confined (J1-1 vs J0-2).
4. Level kinerja jembatan jika input properti sendi plastis penampang perkuatan
memperhitungkan initial load dibandingkan dengan hasil analisis
menggunakan input dengan pendekatan monolit (case-4), sesuai dengan
NCHRP Synthesis 440 (2013) menunjukkan hasil yang sama yaitu untuk
kinerja struktur (global) adalah Operational dan kinerja elemen perkuatan
(lokal) adalah Immediate Occupancy-IO.
116
VI.2 Saran
Saran yang dapat diberikan untuk perbaikan dan pengembangan studi selanjutnya
antara lain adalah:
1. Studi eksperimental dapat dilakukan dalam rangka verifikasi lebih lanjut hasil
kurva hubungan momen-kurvatur yang telah diperoleh dari program analisis
non-linier penampang dengan perkuatan jacketing yang telah disusun.
2. Penelitian ini juga dapat dikembangkan lebih lanjut untuk mengetahui perilaku
struktur jembatan jika perkuatan jacketing diaplikasikan pada kondisi kinerja
elemen mendekati IO dan asumsi kekakuan penampang sebelum aplikasi
jacketing tidak sama.
3. Evaluasi kinerja struktur jembatan dengan perkuatan jacketing dapat juga
dibandingkan dengan metode Non-linier Time History Analysis pada software
yang memiliki fitur birth and date time untuk aplikasi jacketing, sehingga
kinerja struktur dapat tergambar lebih baik.
117
DAFTAR PUSTAKA
ACI Committee 318 (2014): Building Code Requirements for Structural Concrete
(ACI 318M-14), 519. https://doi.org/10.1016/0262-5075(85)90032-6
ACI Committee 440, dan American Concrete Institute (2008): Guide for the design
and construction of externally bonded FRP systems for strengthening
concrete structures, American Concrete Institute, Farmington Hills, Mich.
ACI Committee 562 (2016): ACI 562M-16 Code Requirements for Assessment,
Repair, and Rehabilitation of Existing Concrete Structures (ACI 562M-16)
and Comme, American Concrete Institute.
Alhadid, M. M. A., dan Youssef, M. A. (2017): Analysis of reinforced concrete
beams strengthened using concrete jackets, Engineering Structures, 132,
172–187. https://doi.org/10.1016/j.engstruct.2016.11.014
ATC-40 (1996): Seismic Evaluation and retrofit of concrete buildings, Applied
Technology council, California, 1 and 2(November 1996), 1996–1996.
https://doi.org/10.1193/1.1586093
Aviram, A., Mackie, K. R., dan Stojadinović, B. (2008): Guidelines for Nonlinear
Analysis of Bridge Structures in California, Pacific Earthquake Engineering
Research Center, book.
Badan Standarisasi Nasional (2016a): SNI 1725-2016: Standar Pembebanan Untuk
Jembatan.
Badan Standarisasi Nasional (2016b): SNI 2833:2016: Perencanaan Jembatan
terhadap Beban Gempa.
Badan Standarisasi Nasional (2017): SNI 2052-2017: Baja Tulangan Beton.
Caltrans, S. D. C. (2013): Caltrans seismic design criteria version 1.7.
Campione, G., Fossetti, M., Giacchino, C., dan Minafò, G. (2014): RC columns
externally strengthened with RC jackets, Materials and
Structures/Materiaux et Constructions, 47(10), 1715–1728.
https://doi.org/10.1617/s11527-013-0146-x
Chai, Y. H., Priestley, M. J. N., dan Seible, F. (1991): Flexural Retrofit of Circular
Reinforced Concrete Bridge Columns by Steel Jacketing. COLRET - A
Computer Program for Strength and Ductility Calculation. Preliminary
Report.
Chen, W., dan Duan, L. (2014): Bridge Engineering in Indonesia, 953–953 dalam
Handbook of International Bridge Engineering.
Chopra, A. K., dan Goel, R. K. (2002): A modal pushover analysis procedure for
estimating seismic demands for buildings, Earthquake Engineering and
Structural Dynamics, 31(3), 561–582. https://doi.org/10.1002/eqe.144
Dritsos, S. E. (2007): Seismic Strengthening of Columns by Adding New Concrete,
Bulletin of The New Zealand Society for Earthquake Engineering, 40, 20.
Eduardo N. B. S. Julio, F. A. B. B., and Vitor D. Silva (2005): Reinforced Concrete
Jacketing - Interface Influence on Monotonic Loading Response, Structural
Journal, 102(2). https://doi.org/10.14359/14276
Eduardo N.B.S. Júlio, Branco, F. A. B., dan Vítor D. Silva (2004): Concrete-to-
concrete bond strength- Influence of the roughness of the substrate surface,
Construction and Building Materials, 18, 675–681.
https://doi.org/10.1016/j.conbuildmat.2004.04.023
119
Ersoy, U., Tankut, A. T., dan Suleiman, R. (1993): Behavior of jacketed columns,
ACI Structural Journal, 90(3), 288–293.
FEMA 451B (2006): NEHRP Recommended Provisions for New Building and
Other Structures: Training and Instructional Materials.
FEMA-273 (1997): NEHRP Guidelines for The Seismic Rehabilitation of
Buildings.
FEMA-356 (2000): Prestandard and Commentary for the Seismic Rehabilitation of
Buildings.
FEMA-440 (2005): Improvement of Nonlinear Static Seismic Analysis Procedures.
Floren, A., dan Mohammadi, J. (2001): Performance-based design approach in
seismic analysis of bridges, Journal of Bridge Engineering, 6(February),
37–45.
Goodnight, J. C., Kowalsky, M. J., dan Nau, J. M. (2016): Modified Plastic-Hinge
Method for Circular RC Bridge Columns, Journal of Structural
Engineering, 142(11), 04016103–04016103.
https://doi.org/10.1061/(ASCE)ST.1943-541X.0001570
Hachem, M. M., Mahin, S. A., dan Moehle, J. P. (2003): Performance of Circular
Reinforced Concrete Bridge Columns under Bidirectional Earthquake
Loading.
Imran, I., Budiono, B., Adhi, K., Rusdiman, dan Aryanto, A. (2005): Sistem
Jembatan Girder Menerus Studi Kasus Pada Perencanaan Jembatan
Cisomang, Seminar Nasional Rekayasa Material dan Konstruksi Beton
2005, Jurusan Teknik Sipil Institut Teknologi Nasional Bandung bekerja
sama dengan Departemen Teknik Sipil ITB dan PT. Indocement Tunggal
Prakasa, Tbk.
Imran, I., dan Zulkifli, E. (2014): Perencanaan Dasar Struktur Beton Bertulang,
Bandung: Penerbit ITB.
Jasa Marga, P. (2017): Laporan Kemajuan Penanganan Jembatan Cisomang:
Pembahasan dengan Tim KKJTJ.
JSCE (1999): Guidlines for Retrofit of Concrete Structures, 1–61.
Lampropoulos, A. P., dan Dritsos, S. E. (2011): Modeling of RC columns
strengthened with RC jackets, Earthquake Engineering and Structural
Dynamics, 40(15), 1689–1705. https://doi.org/10.1002/eqe.1109
Lampropoulos, Andreas P., Tsioulou, O. T., dan Dritsos, S. E. (2012): Monolithic
Coefficient Values for Design when Seismically Strengthening RC
Columns with Jackets, Journal of Earthquake Engineering, 16(7), 1023–
1042. https://doi.org/10.1080/13632469.2012.689120
LAPI ITB, P. (2017a): Laporan Analisis Geoteknik Perkuatan Jembatan Cisomang
Ruas Jalan Tol Purbaleunyi.
LAPI ITB, P. (2017b): Laporan Analisis Struktur Permeriksaan Jembatan
Cisomang Ruas Jalan Tol Purbaleunyi.
Mander, J. B., Priestley, M. J. N., dan Park, R. (1988): Theoretical Stress‐Strain
Model for Confined Concrete, Journal of Structural Engineering, 114(8),
1804–1826. https://doi.org/10.1061/(ASCE)0733-9445(1988)114:8(1804)
Midas IT (2012): Analysis for Civil Structures.
Minafò, G. (2015): A practical approach for the strength evaluation of RC columns
reinforced with RC jackets, Engineering Structures, 85, 162–169.
https://doi.org/10.1016/j.engstruct.2014.12.025
120
NCHRP Synthesis 440 (2013): Performance-Based Seismic Bridge Design,
Transportation Research Board, Washington, D.C., 138.
https://doi.org/10.17226/22632
Ong, K. C. G., Kog, Y. C., Yu, C. H., dan Sreekanth, A. P. V. (2004): Jacketing of
reinforced concrete columns subjected to axial load, Magazine of Concrete
Research, 56(2), 89–98. https://doi.org/10.1680/macr.56.2.89.36292
Park, R., dan Paulay, T. (1975): Reinforced Concrete Structures, 19, 769.
https://doi.org/10.1002/9780470172834
Penelis, G. G., dan Kappos, A. J. (1997): Earthquake-Resistant Concrete
Structures, 572.
Priestley, M. J. N., Seible, F., dan Calvi, G. M. (1996): Seismic Design and Retrofit
of Bridges: Priestley/Seismic Design and Retrofit of Bridges, John Wiley &
Sons, Inc., Hoboken, NJ, USA. https://doi.org/10.1002/9780470172858
Richart, F., Brandtzaeg, A., dan Brown, R. L. (1928): A Study of the Failure of
Concrete under Combined Compressive Stresses, University of Illinois
Bulletin, 26, Bullet(12), 1–104.
Thermou, G. E., Papanikolaou, V. K., dan Kappos, A. J. (2014a): Flexural
behaviour of reinforced concrete jacketed columns under reversed cyclic
loading, Engineering Structures, 76, 270–282.
https://doi.org/10.1016/j.engstruct.2014.07.013
Thermou, G. E., Papanikolaou, V. K., dan Kappos, A. J. (2014b): Monolithicity
factors for the design of R/C columns strengthened with R/C jackets,
Proceedings of 2nd European conference on earthquake engineering and
seismology, Istanbul, paper.
Tsioulou, O. T., dan Dritsos, S. E. (2011): A theoretical model to predict interface
slip due to bending, Materials and Structures/Materiaux et Constructions,
44(4), 825–843. https://doi.org/10.1617/s11527-010-9669-6
Vandoros, K. G., dan Dritsos, S. E. (2008): Concrete jacket construction detail
effectiveness when strengthening RC columns, Construction and Building
Materials, 22(3), 264–276.
https://doi.org/10.1016/j.conbuildmat.2006.08.019
Wai-Fah, C., dan Lian, D. (2003): Bridge Engineering Seismic Design (C. Wai-Fah
dan D. Lian, Ed.).
Zarkasi, I., Irpanni, H., dan Arifien, H. (2018): Penanganan Jembatan Cisomang
Ruas Tol Cikampek-Padalarang: Pembelajaran Penanganan Jembatan
Akibat Pergerakan Tanah Clay Shale, HPJI, 4(1), 25–36.
121
LAMPIRAN
123
Lampiran A Diagram Alir Pemrograman
Section
Discretization
ctol = tc + dt +Db/2
for i = 1 to nulx or nclx
Asbx = nlx*Asb
for j = 1 to nuly or ncly Asby = nly*Asb
m=1
UnconfinedArea = (ymax-ymin)*(xmax-xmin)/nulx/nuly
ConfinedArea = (ymax-ymin)*(xmax-xmin)/nclx/ncly
for i = 1 to nx or ny
LRPx = ctol+(j-1)*((B-2*ctol)/(nlx(i,1)-1)),
m=m+1
xc(j,i) = ((xmax-xmin)/2/nclx+(i-1)*(xmax-xmin)/nclx)+xmin
yc(j,i) = ((ymax-ymin)/2/ncly+(j-1)*(ymax-ymin)/ncly)+ymin LRPy = ctol+(j-1)*((H-2*ctol)/(nly(i,1)-1)),
m=m+1
Return
125
A.2. Model Material
Concrete Stress
(Mander et al, 1988)
εc
Ast = totalbar*0.25*pi*Db^2
Asp = 0.25*pi*dt^2
Rectangular Circular
Asx = ncx*Asp
Asy = ncy ds = H-2*tc-dt
Ac = bc*dc
ρs = 4*Asp/(ds*s)
ρcc = Ast/Ac
ρx = Asx/(s*dc)
ρy = Asy/(s*bc) Ac = 0.25*pi*(ds^2)
ρ s = ρx + ρ y
ke = (1-sc/(2*ds))/(1-ρcc) ke = ((1-sc/(2*ds))^2/(1-ρcc)
flxe = ke*flx/fco
flye = ke*fly/fco
a = 196.5*flxe^2+29.1*flxe-4
b = -69.5*flxe^2+8.9*flxe+2.2
c = -6.83*flxe^2+6.38*flxe+1
d = -1.5*flxe^2-0.55*flxe+0.3
fle = 0.5*ke*ρs*fy
flxe < flye & flxe <= 0.15 flxe<flye & flxe > 0.15 flye = flxe
fcc =fle*fco
εcc = εco*(1+5*(fcc/fco-1))
Esec = fcc/εcc
r = Ec/(Ec-Esec)
εcu_ma = 0.004+1.4*ρs*fyh*εsu/fcc
for εc = 0 to εcu_ma
x = (1/εcc)*εcu_ma
fc = fcc*x*r./(r-1+x.^r)
Return
126
A.2.2. Material Baja Tulangan
Steel Stress
(Priestley et al, 1990)
for εs = 0 to εsu
εy = fy/Es
fs = εs*Es fs = fy fs = fsu-(fsu-fy)*{(esu-es)/(esu-esh)}2
Return
Strain Calculation
yc,
Arm,
φ, ei
No
ε = (yc-arm)*φ ε ={(yc-arm)*φ}+ei
Return
127
A.4. Perhitungan Gaya
Sum of Force
φ
yc
F=0
for i = 1 to ConcreteLayerCount
fc.unconfined = 0 fc.unconfined = 0
fc.confined = 0 fc.confined = 0
Fc.confined(i) = Layer(i).ConfinedArea*fc.confined
F = F + Fc.unconfined(i) + Fc.confined(i)
for i = 1 to RebarLayerCount
fs = 0
Fs(i) = layer(i).ReinforcementArea*fs
F = F + Fs(i)
Return
128
A.5. Solusi Persamaan Keseimbangan dan Perhitungan Momen
Moment
Calculation
for i = 0 to φCount
yc1 = 0
yc2 = d/2
iter = 0,
tol = 1.0E-8
while (1)
yc_r = (yc1+yc2)/2
iter = iter + 1
No
yc2 = yc_r yc1 = yc_r
error = (ycr-yc1)/ycr*100
Yes
Record
Return
129
Lampiran B Program Matlab
131
LRP_Jacketing;
%
% Call Section Meshing
[Auij,Acij,MULXj,MULYj,MCLXj,MCLYj,MLRXj,MLRYj] = section_hollowP2JJ();
%
% Call Mander
ManderJacket;
%
% Call Steel Function
[esj,fsj] = steel_priestley(esh_j,esu_j,fy_j,fsu_j,Es_j,dels);
%
% Call Moment Curvature Calculation with Jacketing
mc_hollowjac_script;
%
% Call PMM Interaction Jacketing
pm_interaction_strain_jac;
Input Data
132
tw = 400; % hollow thickness (mm)
Ho = H-2*tw; % hollow height (mm)
Bo = B-2*tw; % hollow width (mm)
tc = 50; % clear cover (mm)
Lc = 42810; % member length (mm)
bending = 'double'; % single or double curvature
%
%--------------------------Reinforcement Details--------------------------%
Db = 22; % longitudinal bar diameter (mm)
dt = 16; % transverse/confining bar diameter (mm)
s = 100; % vertical spacing of hoops (mm)
sc = s-dt; % clear vertical spacing between hoop bars (mm)
ncx = 13; % total # of leg confinement parallel in x-dir
ncy = 12; % total # of leg confinement parallel in y-dir
nlx = [11; 2; 9; 2; 4; 4; 4; 4; 4; 4; 4; 4; 4; 4; 4; 4; 4; 4; 4; 4; 2;...
9; 2; 11]; % # of bars in each layer x-dir
nly = [20; 2; 16; 4; 4; 4; 4; 4; 4; 4; 4; 4; 16; 2; 20]; % # of bars in each
layer y-dir
%
%-------Clear transverse spacing between adjacent longitudinal bars-------%
wx_in = [235.3532 274.5 274.5 274.5 274.5 274.5 274.5 274.5 67.0228]; % inner
clear x-dir (one side)
wx_out = [90.8 235.456 274.5 274.5 274.5 274.5 274.5 274.5 274.5 72.1713...
86.3343]; % outer clear x-dir (one side)
wy_in = [202.798 289.1838 286.75 286.75 286.75 286.75 286.75 286.75 286.75...
202.7677]; % inner clear y-dir (one side)
wy_out = [245.9981 202.8018 289.1843 286.75 286.75 286.75 286.75 286.75...
286.75 286.75 202.7673 245.9981]; % outer y-dir (one side)
%
%-------------------Longitudinal Reinforcement Position-------------------%
LRP = [[226.2 77 Db]; [339 77 Db]; [437.0955 77 Db]; [596.456 77 Db];...
[733.5955 77 Db]; [892.956 77 Db]; [1030.0955 77 Db]; [1189.456 77 Db];...
[1326.5955 77 Db]; [1485.956 77 Db]; [1623.0955 77 Db]; [1782.456 77 Db];...
[1919.5955 77 Db]; [2078.956 77 Db]; [2216.0955 77 Db]; [2375.456 77 Db];...
[2512.5955 77 Db]; [2671.956 77 Db]; [2766.1273 77 Db]; [2874.4616 77 Db];...
[77 229.4841 Db]; [3023 229.4841 Db]; [437.0955 323 Db]; [596.456 323 Db];...
[733.5955 323 Db]; [892.956 323 Db]; [1030.0955 323 Db]; [1189.456 323 Db];...
[1326.5955 323 Db]; [1485.956 323 Db]; [1623.0955 323 Db]; [1782.456 323
Db];...
[1919.5955 323 Db]; [2078.956 323 Db]; [2216.0955 323 Db]; [2375.456 323
Db];...
[2512.5955 323 Db]; [2671.956 323 Db]; [77 563.8 Db]; [323 563.8 Db];...
[2777 563.8 Db]; [3023 563.8 Db]; [77 874.9843 Db]; [323 874.9843 Db];...
[2777 874.9843 Db]; [3023 874.9843 Db]; [77 1183.7343 Db]; [323 1183.7343
Db];...
[2777 1183.7343 Db]; [3023 1183.7343 Db]; [77 1492.4843 Db]; [323 1492.4843
Db];...
[2777 1492.4843 Db]; [3023 1492.4843 Db]; [77 1801.2343 Db]; [323 1801.2343
Db];...
[2777 1801.2343 Db]; [3023 1801.2343 Db]; [77 2109.9843 Db]; [323 2109.9843
Db];...
[2777 2109.9843 Db]; [3023 2109.9843 Db]; [77 2418.7343 Db]; [323 2418.7343
Db];...
133
[2777 2418.7343 Db]; [3023 2418.7343 Db]; [77 2727.4843 Db]; [323 2727.4843
Db];...
[2777 2727.4843 Db]; [3023 2727.4843 Db]; [77 3036.2343 Db]; [323 3036.2343
Db];...
[2777 3036.2343 Db]; [3023 3036.2343 Db]; [437.0955 3277 Db]; [596.456 3277
Db];...
[733.5955 3277 Db]; [892.956 3277 Db]; [1030.0955 3277 Db]; [1189.456 3277
Db];...
[1326.5955 3277 Db]; [1485.956 3277 Db]; [1623.0955 3277 Db]; [1782.456 3277
Db];...
[1919.5955 3277 Db]; [2078.956 3277 Db]; [2216.0955 3277 Db]; [2375.456 3277
Db];...
[2512.5955 3277 Db]; [2671.956 3277 Db]; [77 3370.5119 Db]; [3023 3370.5119
Db];...
[226.2 3523 Db]; [339 3523 Db]; [437.0955 3523 Db]; [596.456 3523 Db];...
[733.5955 3523 Db]; [892.956 3523 Db]; [1030.0955 3523 Db]; [1189.456 3523
Db];...
[1326.5955 3523 Db]; [1485.956 3523 Db]; [1623.0955 3523 Db]; [1782.456 3523
Db];...
[1919.5955 3523 Db]; [2078.956 3523 Db]; [2216.0955 3523 Db]; [2375.456 3523
Db];...
[2512.5955 3523 Db]; [2671.956 3523 Db]; [2766.1273 3523 Db]; [2874.4616 3523
Db]];
%
dels = 1e-5; % delta strain for material (depending on the number of
decimals of fy/Es)
%
%---------------------------------Loading---------------------------------%
P = 18152000; % external axial load (N)
%
%-------------------------------End of input------------------------------%
Section Meshing
134
[Ucoord1, Aui1] = sectionmesh_fun(xmin1,ymin1,xmax1,ymax1,nulx1,nuly1);
%---cover_2
xmin2 = tc+dt/2;
ymin2 = 0;
xmax2 = tw-tc-dt/2;
ymax2 = tc+dt/2;
nulx2 = 10; % # of unconfined layers in x-dir
nuly2 = 2; % # of unconfined layers in y-dir
[Ucoord2, Aui2] = sectionmesh_fun(xmin2,ymin2,xmax2,ymax2,nulx2,nuly2);
%---cover_3
xmin3 = tw-tc-dt/2;
ymin3 = 0;
xmax3 = tw;
ymax3 = tc+dt/2;
nulx3 = 2; % # of unconfined layers in x-dir
nuly3 = 2; % # of unconfined layers in y-dir
[Ucoord3, Aui3] = sectionmesh_fun(xmin3,ymin3,xmax3,ymax3,nulx3,nuly3);
%---cover_4
xmin4 = tw;
ymin4 = 0;
xmax4 = Bo+tw;
ymax4 = tc+dt/2;
nulx4 = 80; % # of unconfined layers in x-dir
nuly4 = 2; % # of unconfined layers in y-dir
[Ucoord4, Aui4] = sectionmesh_fun(xmin4,ymin4,xmax4,ymax4,nulx4,nuly4);
%---cover_5
xmin5 = Bo+tw;
ymin5 = 0;
xmax5 = Bo+tw+tc+dt/2;
ymax5 = tc+dt/2;
nulx5 = 2; % # of unconfined layers in x-dir
nuly5 = 2; % # of unconfined layers in y-dir
[Ucoord5, Aui5] = sectionmesh_fun(xmin5,ymin5,xmax5,ymax5,nulx5,nuly5);
%---cover_6
xmin6 = Bo+tw+tc+dt/2;
ymin6 = 0;
xmax6 = B-tc-dt/2;
ymax6 = tc+dt/2;
nulx6 = 10; % # of unconfined layers in x-dir
nuly6 = 2; % # of unconfined layers in y-dir
[Ucoord6, Aui6] = sectionmesh_fun(xmin6,ymin6,xmax6,ymax6,nulx6,nuly6);
%---cover_7
xmin7 = B-tc-dt/2;
ymin7 = 0;
xmax7 = B;
ymax7 = tc+dt/2;
nulx7 = 2; % # of unconfined layers in x-dir
nuly7 = 2; % # of unconfined layers in y-dir
[Ucoord7, Aui7] = sectionmesh_fun(xmin7,ymin7,xmax7,ymax7,nulx7,nuly7);
%---cover_8
xmin8 = 0;
ymin8 = tc+dt/2;
xmax8 = tc+dt/2;
135
ymax8 = tw-tc-dt/2;
nulx8 = 2; % # of unconfined layers in x-dir
nuly8 = 10; % # of unconfined layers in y-dir
[Ucoord8, Aui8] = sectionmesh_fun(xmin8,ymin8,xmax8,ymax8,nulx8,nuly8);
%---cover_9
xmin9 = B-tc-dt/2;
ymin9 = tc+dt/2;
xmax9 = B;
ymax9 = tw-tc-dt/2;
nulx9 = 2; % # of unconfined layers in x-dir
nuly9 = 10; % # of unconfined layers in y-dir
[Ucoord9, Aui9] = sectionmesh_fun(xmin9,ymin9,xmax9,ymax9,nulx9,nuly9);
%---cover_10
xmin10 = 0;
ymin10 = tw-tc-dt/2;
xmax10 = tc+dt/2;
ymax10 = tw;
nulx10 = 2; % # of unconfined layers in x-dir
nuly10 = 2; % # of unconfined layers in y-dir
[Ucoord10, Aui10] = sectionmesh_fun(xmin10,ymin10,xmax10,ymax10,nulx10,nuly10);
%---cover_11
xmin11 = B-tc-dt/2;
ymin11 = tw-tc-dt/2;
xmax11 = B;
ymax11 = tw;
nulx11 = 2; % # of unconfined layers in x-dir
nuly11 = 2; % # of unconfined layers in y-dir
[Ucoord11, Aui11] = sectionmesh_fun(xmin11,ymin11,xmax11,ymax11,nulx11,nuly11);
%---cover_12
xmin12 = 0;
ymin12 = tw;
xmax12 = tc+dt/2;
ymax12 = H-tw;
nulx12 = 2; % # of unconfined layers in x-dir
nuly12 = 100; % # of unconfined layers in y-dir
[Ucoord12, Aui12] = sectionmesh_fun(xmin12,ymin12,xmax12,ymax12,nulx12,nuly12);
%---cover_13
xmin13 = B-tc-dt/2;
ymin13 = tw;
xmax13 = B;
ymax13 = H-tw;
nulx13 = 2; % # of unconfined layers in x-dir
nuly13 = 100; % # of unconfined layers in y-dir
[Ucoord13, Aui13] = sectionmesh_fun(xmin13,ymin13,xmax13,ymax13,nulx13,nuly13);
%---cover_14
xmin14 = 0;
ymin14 = H-tw;
xmax14 = tc+dt/2;
ymax14 = Ho+tw+tc+dt/2;
nulx14 = 2; % # of unconfined layers in x-dir
nuly14 = 2; % # of unconfined layers in y-dir
[Ucoord14, Aui14] = sectionmesh_fun(xmin14,ymin14,xmax14,ymax14,nulx14,nuly14);
%---cover_15
136
xmin15 = B-tc-dt/2;
ymin15 = H-tw;
xmax15 = B;
ymax15 = Ho+tw+tc+dt/2;
nulx15 = 2; % # of unconfined layers in x-dir
nuly15 = 2; % # of unconfined layers in y-dir
[Ucoord15, Aui15] = sectionmesh_fun(xmin15,ymin15,xmax15,ymax15,nulx15,nuly15);
%---cover_16
xmin16 = 0;
ymin16 = Ho+tw+tc+dt/2;
xmax16 = tc+dt/2;
ymax16 = H-tc-dt/2;
nulx16 = 2; % # of unconfined layers in x-dir
nuly16 = 10; % # of unconfined layers in y-dir
[Ucoord16, Aui16] = sectionmesh_fun(xmin16,ymin16,xmax16,ymax16,nulx16,nuly16);
%---cover_17
xmin17 = B-tc-dt/2;
ymin17 = Ho+tw+tc+dt/2;
xmax17 = B;
ymax17 = H-tc-dt/2;
nulx17 = 2; % # of unconfined layers in x-dir
nuly17 = 10; % # of unconfined layers in y-dir
[Ucoord17, Aui17] = sectionmesh_fun(xmin17,ymin17,xmax17,ymax17,nulx17,nuly17);
%---cover_18
xmin18 = 0;
ymin18 = H-tc-dt/2;
xmax18 = tc+dt/2;
ymax18 = H;
nulx18 = 2; % # of unconfined layers in x-dir
nuly18 = 2; % # of unconfined layers in y-dir
[Ucoord18, Aui18] = sectionmesh_fun(xmin18,ymin18,xmax18,ymax18,nulx18,nuly18);
%---cover_19
xmin19 = tc+dt/2;
ymin19 = H-tc-dt/2;
xmax19 = tw-tc-dt/2;
ymax19 = H;
nulx19 = 10; % # of unconfined layers in x-dir
nuly19 = 2; % # of unconfined layers in y-dir
[Ucoord19, Aui19] = sectionmesh_fun(xmin19,ymin19,xmax19,ymax19,nulx19,nuly19);
%---cover_20
xmin20 = tw-tc-dt/2;
ymin20 = H-tc-dt/2;
xmax20 = tw;
ymax20 = H;
nulx20 = 2; % # of unconfined layers in x-dir
nuly20 = 2; % # of unconfined layers in y-dir
[Ucoord20, Aui20] = sectionmesh_fun(xmin20,ymin20,xmax20,ymax20,nulx20,nuly20);
%---cover_21
xmin21 = tw;
ymin21 = H-tc-dt/2;
xmax21 = Bo+tw;
ymax21 = H;
nulx21 = 80; % # of unconfined layers in x-dir
137
nuly21 = 2; % # of unconfined layers in y-dir
[Ucoord21, Aui21] = sectionmesh_fun(xmin21,ymin21,xmax21,ymax21,nulx21,nuly21);
%---cover_22
xmin22 = Bo+tw;
ymin22 = H-tc-dt/2;
xmax22 = Bo+tw+tc+dt/2;
ymax22 = H;
nulx22 = 2; % # of unconfined layers in x-dir
nuly22 = 2; % # of unconfined layers in y-dir
[Ucoord22, Aui22] = sectionmesh_fun(xmin22,ymin22,xmax22,ymax22,nulx22,nuly22);
%---cover_23
xmin23 = Bo+tw+tc+dt/2;
ymin23 = H-tc-dt/2;
xmax23 = B-tc-dt/2;
ymax23 = H;
nulx23 = 10; % # of unconfined layers in x-dir
nuly23 = 2; % # of unconfined layers in y-dir
[Ucoord23, Aui23] = sectionmesh_fun(xmin23,ymin23,xmax23,ymax23,nulx23,nuly23);
%---cover_24
xmin24 = B-tc-dt/2;
ymin24 = H-tc-dt/2;
xmax24 = B;
ymax24 = H;
nulx24 = 2; % # of unconfined layers in x-dir
nuly24 = 2; % # of unconfined layers in y-dir
[Ucoord24, Aui24] = sectionmesh_fun(xmin24,ymin24,xmax24,ymax24,nulx24,nuly24);
%---cover_25
xmin25 = tw-tc-dt/2;
ymin25 = tw-tc-dt/2;
xmax25 = tw;
ymax25 = tw;
nulx25 = 2; % # of unconfined layers in x-dir
nuly25 = 2; % # of unconfined layers in y-dir
[Ucoord25, Aui25] = sectionmesh_fun(xmin25,ymin25,xmax25,ymax25,nulx25,nuly25);
%---cover_26
xmin26 = tw;
ymin26 = tw-tc-dt/2;
xmax26 = Bo+tw;
ymax26 = tw;
nulx26 = 80; % # of unconfined layers in x-dir
nuly26 = 2; % # of unconfined layers in y-dir
[Ucoord26, Aui26] = sectionmesh_fun(xmin26,ymin26,xmax26,ymax26,nulx26,nuly26);
%---cover_27
xmin27 = Bo+tw;
ymin27 = tw-tc-dt/2;
xmax27 = Bo+tw+tc+dt/2;
ymax27 = tw;
nulx27 = 2; % # of unconfined layers in x-dir
nuly27 = 2; % # of unconfined layers in y-dir
[Ucoord27, Aui27] = sectionmesh_fun(xmin27,ymin27,xmax27,ymax27,nulx27,nuly27);
%---cover_28
xmin28 = tw-tc-dt/2;
ymin28 = tw;
138
xmax28 = tw;
ymax28 = H-tw;
nulx28 = 2; % # of unconfined layers in x-dir
nuly28 = 100; % # of unconfined layers in y-dir
[Ucoord28, Aui28] = sectionmesh_fun(xmin28,ymin28,xmax28,ymax28,nulx28,nuly28);
%---cover_29
xmin29 = Bo+tw;
ymin29 = tw;
xmax29 = Bo+tw+tc+dt/2;
ymax29 = H-tw;
nulx29 = 2; % # of unconfined layers in x-dir
nuly29 = 100; % # of unconfined layers in y-dir
[Ucoord29, Aui29] = sectionmesh_fun(xmin29,ymin29,xmax29,ymax29,nulx29,nuly29);
%---cover_30
xmin30 = tw-tc-dt/2;
ymin30 = H-tw;
xmax30 = tw;
ymax30 = Ho+tw+tc+dt/2;
nulx30 = 2; % # of unconfined layers in x-dir
nuly30 = 2; % # of unconfined layers in y-dir
[Ucoord30, Aui30] = sectionmesh_fun(xmin30,ymin30,xmax30,ymax30,nulx30,nuly30);
%---cover_31
xmin31 = tw;
ymin31 = H-tw;
xmax31 = Bo+tw;
ymax31 = Ho+tw+tc+dt/2;
nulx31 = 80; % # of unconfined layers in x-dir
nuly31 = 2; % # of unconfined layers in y-dir
[Ucoord31, Aui31] = sectionmesh_fun(xmin31,ymin31,xmax31,ymax31,nulx31,nuly31);
%---cover_32
xmin32 = Bo+tw;
ymin32 = Ho+tw;
xmax32 = Bo+tw+tc+dt/2;
ymax32 = Ho+tw+tc+dt/2;
nulx32 = 2; % # of unconfined layers in x-dir
nuly32 = 2; % # of unconfined layers in y-dir
[Ucoord32, Aui32] = sectionmesh_fun(xmin32,ymin32,xmax32,ymax32,nulx32,nuly32);
%
Ucoord = [Ucoord1; Ucoord2; Ucoord3; Ucoord4; Ucoord5; Ucoord6; Ucoord7;...
Ucoord8; Ucoord9; Ucoord10; Ucoord11; Ucoord12; Ucoord13; Ucoord14;...
Ucoord15; Ucoord16; Ucoord17; Ucoord18; Ucoord19; Ucoord20; Ucoord21;...
Ucoord22; Ucoord23; Ucoord24; Ucoord25; Ucoord26; Ucoord27; Ucoord28;...
Ucoord29; Ucoord30; Ucoord31; Ucoord32];
Aui = [Aui1; Aui2; Aui3; Aui4; Aui5; Aui6; Aui7; Aui8; Aui9; Aui10;...
Aui11; Aui12; Aui13; Aui14; Aui15; Aui16; Aui17; Aui18; Aui19;...
Aui20; Aui21; Aui22; Aui23; Aui24; Aui25; Aui26; Aui27; Aui28;...
Aui29; Aui30; Aui31; Aui32];
[MULX,MULY] = mcl(Ucoord,Aui);
%
% Seperate 2 covers
[incovX,incovY] = mcl([Ucoord1; Ucoord2; Ucoord3; Ucoord4; Ucoord5;...
Ucoord6; Ucoord7; Ucoord8; Ucoord9; Ucoord10; Ucoord11; Ucoord12;...
Ucoord13; Ucoord14; Ucoord15; Ucoord16; Ucoord17; Ucoord18; Ucoord19;...
139
Ucoord20; Ucoord21; Ucoord22; Ucoord23; Ucoord24],[Aui1; Aui2; Aui3;...
Aui4; Aui5; Aui6; Aui7; Aui8; Aui9; Aui10; Aui11; Aui12; Aui13; Aui14;...
Aui15; Aui16; Aui17; Aui18; Aui19; Aui20; Aui21; Aui22; Aui23; Aui24]);
[excovX,excovY] = mcl([Ucoord25; Ucoord26; Ucoord27; Ucoord28;Ucoord29;...
Ucoord30; Ucoord31; Ucoord32],[Aui25; Aui26; Aui27; Aui28; Aui29;...
Aui30; Aui31; Aui32]);
assignin('base','incovX',incovX);
assignin('base','incovY',incovY);
assignin('base','excovX',excovX);
assignin('base','excovY',excovY);
%
%---Confined Layers---
%---core_1
xmin33 = tc+dt/2;
ymin33 = tc+dt/2;
xmax33 = tw-tc-dt/2;
ymax33 = tw-tc-dt/2;
dc1 = ymax33-ymin33; % core dimension to centerlines of perimeter hoop in y
bc1 = xmax33-xmin33; % core dimension to centerlines of perimeter hoop in x
nclx1 = nulx2; % # of core layers in x-dir
ncly1 = nuly8; % # of core layers in x-dir
[Ccoord1, Aci1] = sectionmesh_fun(xmin33,ymin33,xmax33,ymax33,nclx1,ncly1);
%---core_2
xmin34 = tw-tc-dt/2;
ymin34 = tc+dt/2;
xmax34 = tw;
ymax34 = tw-tc-dt/2;
dc2 = ymax34-ymin34; % core dimension to centerlines of perimeter hoop in
y
bc2 = xmax34-xmin34; % core dimension to centerlines of perimeter hoop in
x
nclx2 = nulx3; % # of core layers in x-dir
ncly2 = ncly1; % # of core layers in x-dir
[Ccoord2, Aci2] = sectionmesh_fun(xmin34,ymin34,xmax34,ymax34,nclx2,ncly2);
%---core_3
xmin35 = tw;
ymin35 = tc+dt/2;
xmax35 = Bo+tw;
ymax35 = tw-tc-dt/2;
dc3 = ymax35-ymin35; % core dimension to centerlines of perimeter hoop in
y
bc3 = xmax35-xmin35; % core dimension to centerlines of perimeter hoop in
x
nclx3 = nulx4; % # of core layers in x-dir
ncly3 = ncly2; % # of core layers in x-dir
[Ccoord3, Aci3] = sectionmesh_fun(xmin35,ymin35,xmax35,ymax35,nclx3,ncly3);
%---core_4
xmin36 = Bo+tw;
ymin36 = tc+dt/2;
xmax36 = Bo+tw+tc+dt/2;
ymax36 = tw-tc-dt/2;
dc4 = ymax36-ymin36; % core dimension to centerlines of perimeter hoop in
y
140
bc4 = xmax36-xmin36; % core dimension to centerlines of perimeter hoop in
x
nclx4 = nulx5; % # of core layers in x-dir
ncly4 = ncly3; % # of core layers in x-dir
[Ccoord4, Aci4] = sectionmesh_fun(xmin36,ymin36,xmax36,ymax36,nclx4,ncly4);
%---core_5
xmin37 = Bo+tw+tc+dt/2;
ymin37 = tc+dt/2;
xmax37 = B-tc-dt/2;
ymax37 = tw-tc-dt/2;
dc5 = ymax37-ymin37; % core dimension to centerlines of perimeter hoop in y
bc5 = xmax37-xmin37; % core dimension to centerlines of perimeter hoop in x
nclx5 = nulx6; % # of core layers in x-dir
ncly5 = ncly4; % # of core layers in x-dir
[Ccoord5, Aci5] = sectionmesh_fun(xmin37,ymin37,xmax37,ymax37,nclx5,ncly5);
%---core_6
xmin38 = tc+dt/2;
ymin38 = tw-tc-dt/2;
xmax38 = tw-tc-dt/2;
ymax38 = tw;
dc6 = ymax38-ymin38; % core dimension to centerlines of perimeter hoop in
y
bc6 = xmax38-xmin38; % core dimension to centerlines of perimeter hoop in
x
nclx6 = nclx1; % # of core layers in x-dir
ncly6 = nuly10; % # of core layers in x-dir
[Ccoord6, Aci6] = sectionmesh_fun(xmin38,ymin38,xmax38,ymax38,nclx6,ncly6);
%---core_7
xmin39 = Bo+tw+tc+dt/2;
ymin39 = tw-tc-dt/2;
xmax39 = B-tc-dt/2;
ymax39 = tw;
dc7 = ymax39-ymin39; % core dimension to centerlines of perimeter hoop in
y
bc7 = xmax39-xmin39; % core dimension to centerlines of perimeter hoop in
x
nclx7 = nclx5; % # of core layers in x-dir
ncly7 = nuly27; % # of core layers in x-dir
[Ccoord7, Aci7] = sectionmesh_fun(xmin39,ymin39,xmax39,ymax39,nclx7,ncly7);
%---core_8
xmin40 = tc+dt/2;
ymin40 = tw;
xmax40 = tw-tc-dt/2;
ymax40 = H-tw;
dc8 = ymax40-ymin40; % core dimension to centerlines of perimeter hoop in
y
bc8 = xmax40-xmin40; % core dimension to centerlines of perimeter hoop in
x
nclx8 = nclx6; % # of core layers in x-dir
ncly8 = nuly12; % # of core layers in x-dir
[Ccoord8, Aci8] = sectionmesh_fun(xmin40,ymin40,xmax40,ymax40,nclx8,ncly8);
%---core_9
xmin41 = Bo+tw+tc+dt/2;
141
ymin41 = tw;
xmax41 = B-tc-dt/2;
ymax41 = H-tw;
dc9 = ymax41-ymin41; % core dimension to centerlines of perimeter hoop in y
bc9 = xmax41-xmin41; % core dimension to centerlines of perimeter hoop in x
nclx9 = nclx7; % # of core layers in x-dir
ncly9 = nuly13; % # of core layers in x-dir
[Ccoord9, Aci9] = sectionmesh_fun(xmin41,ymin41,xmax41,ymax41,nclx9,ncly9);
%---core_10
xmin42 = tc+dt/2;
ymin42 = Ho+tw;
xmax42 = tw-tc-dt/2;
ymax42 = Ho+tw+tc+dt/2;
dc10 = ymax42-ymin42; % core dimension to centerlines of perimeter hoop in
y
bc10 = xmax42-xmin42; % core dimension to centerlines of perimeter hoop in
x
nclx10 = nclx8; % # of core layers in x-dir
ncly10 = nuly14; % # of core layers in x-dir
[Ccoord10, Aci10] = sectionmesh_fun(xmin42,ymin42,xmax42,ymax42,nclx10,ncly10);
%---core_11
xmin43 = Bo+tw+tc+dt/2;
ymin43 = H-tw;
xmax43 = B-tc-dt/2;
ymax43 = Ho+tw+tc+dt/2;
dc11 = ymax43-ymin43; % core dimension to centerlines of perimeter hoop in
y
bc11 = xmax43-xmin43; % core dimension to centerlines of perimeter hoop in
x
nclx11 = nclx9; % # of core layers in x-dir
ncly11 = nuly32; % # of core layers in x-dir
[Ccoord11, Aci11] = sectionmesh_fun(xmin43,ymin43,xmax43,ymax43,nclx11,ncly11);
%---core_12
xmin44 = tc+dt/2;
ymin44 = Ho+tw+tc+dt/2;
xmax44 = tw-tc-dt/2;
ymax44 = H-tc-dt/2;
dc12 = ymax44-ymin44; % core dimension to centerlines of perimeter hoop
in y
bc12 = xmax44-xmin44; % core dimension to centerlines of perimeter hoop in
x
nclx12 = nclx10; % # of core layers in x-dir
ncly12 = nuly16; % # of core layers in x-dir
[Ccoord12, Aci12] = sectionmesh_fun(xmin44,ymin44,xmax44,ymax44,nclx12,ncly12);
%---core_13
xmin45 = tw-tc-dt/2;
ymin45 = Ho+tw+tc+dt/2;
xmax45 = tw;
ymax45 = H-tc-dt/2;
dc13 = ymax45-ymin45; % core dimension to centerlines of perimeter hoop in y
bc13 = xmax45-xmin45; % core dimension to centerlines of perimeter hoop in x
nclx13 = nulx30; % # of core layers in x-dir
ncly13 = ncly12; % # of core layers in x-dir
142
[Ccoord13, Aci13] = sectionmesh_fun(xmin45,ymin45,xmax45,ymax45,nclx13,ncly13);
%---core_14
xmin46 = tw;
ymin46 = Ho+tw+tc+dt/2;
xmax46 = Bo+tw;
ymax46 = H-tc-dt/2;
dc14 = ymax46-ymin46; % core dimension to centerlines of perimeter hoop in
y
bc14 = xmax46-xmin46; % core dimension to centerlines of perimeter hoop in
x
nclx14 = nulx31; % # of core layers in x-dir
ncly14 = ncly13; % # of core layers in x-dir
[Ccoord14, Aci14] = sectionmesh_fun(xmin46,ymin46,xmax46,ymax46,nclx14,ncly14);
%---core_15
xmin47 = Bo+tw;
ymin47 = Ho+tw+tc+dt/2;
xmax47 = Bo+tw+tc+dt/2;
ymax47 = H-tc-dt/2;
dc15 = ymax47-ymin47; % core dimension to centerlines of perimeter hoop in
y
bc15 = xmax47-xmin47; % core dimension to centerlines of perimeter hoop in
x
nclx15 = nulx32; % # of core layers in x-dir
ncly15 = ncly14; % # of core layers in x-dir
[Ccoord15, Aci15] = sectionmesh_fun(xmin47,ymin47,xmax47,ymax47,nclx15,ncly15);
%---core_16
xmin48 = Bo+tw+tc+dt/2;
ymin48 = Ho+tw+tc+dt/2;
xmax48 = B-tc-dt/2;
ymax48 = H-tc-dt/2;
dc16 = ymax48-ymin48; % core dimension to centerlines of perimeter hoop in
y
bc16 = xmax48-xmin48; % core dimension to centerlines of perimeter hoop in
x
nclx16 = nclx11; % # of core layers in x-dir
ncly16 = ncly15; % # of core layers in x-dir
[Ccoord16, Aci16] = sectionmesh_fun(xmin48,ymin48,xmax48,ymax48,nclx16,ncly16);
%
Ccoord = [Ccoord1; Ccoord2; Ccoord3; Ccoord4; Ccoord5; Ccoord6; Ccoord7;...
Ccoord8; Ccoord9; Ccoord10; Ccoord11; Ccoord12; Ccoord13; Ccoord14;...
Ccoord15; Ccoord16];
Aci = [Aci1; Aci2; Aci3; Aci4; Aci5; Aci6; Aci7; Aci8; Aci9; Aci10;...
Aci11; Aci12; Aci13; Aci14; Aci15; Aci16];
[MCLX,MCLY] = mcl(Ccoord,Aci);
%
%---REBAR LAYERS---
[MLRX, MLRY] = MLR(LRP,nlx,nly);
%
x = [xmin1 xmax1 xmax1 xmin1 xmin1];
y = [ymin1 ymin1 ymax1 ymax1 ymin1];
figure; plot (x,y);
hold on;
x = [xmin2 xmax2 xmax2 xmin2 xmin2];
143
y = [ymin2 ymin2 ymax2 ymax2 ymin2];
plot(x,y);
hold on;
x = [xmin3 xmax3 xmax3 xmin3 xmin3];
y = [ymin3 ymin3 ymax3 ymax3 ymin3];
plot(x,y);
hold on;
x = [xmin4 xmax4 xmax4 xmin4 xmin4];
y = [ymin4 ymin4 ymax4 ymax4 ymin4];
plot(x,y);
hold on;
x = [xmin5 xmax5 xmax5 xmin5 xmin5];
y = [ymin5 ymin5 ymax5 ymax5 ymin5];
plot(x,y);
hold on;
x = [xmin6 xmax6 xmax6 xmin6 xmin6];
y = [ymin6 ymin6 ymax6 ymax6 ymin6];
plot(x,y);
hold on;
x = [xmin7 xmax7 xmax7 xmin7 xmin7];
y = [ymin7 ymin7 ymax7 ymax7 ymin7];
plot(x,y);
hold on;
x = [xmin8 xmax8 xmax8 xmin8 xmin8];
y = [ymin8 ymin8 ymax8 ymax8 ymin8];
plot(x,y);
hold on;
x = [xmin9 xmax9 xmax9 xmin9 xmin9];
y = [ymin9 ymin9 ymax9 ymax9 ymin9];
plot(x,y);
hold on;
x = [xmin10 xmax10 xmax10 xmin10 xmin10];
y = [ymin10 ymin10 ymax10 ymax10 ymin10];
plot(x,y);
hold on;
x = [xmin11 xmax11 xmax11 xmin11 xmin11];
y = [ymin11 ymin11 ymax11 ymax11 ymin11];
plot(x,y);
hold on;
x = [xmin12 xmax12 xmax12 xmin12 xmin12];
y = [ymin12 ymin12 ymax12 ymax12 ymin12];
plot(x,y);
hold on;
x = [xmin13 xmax13 xmax13 xmin13 xmin13];
y = [ymin13 ymin13 ymax13 ymax13 ymin13];
plot(x,y);
hold on;
x = [xmin14 xmax14 xmax14 xmin14 xmin14];
y = [ymin14 ymin14 ymax14 ymax14 ymin14];
plot(x,y);
hold on;
x = [xmin15 xmax15 xmax15 xmin15 xmin15];
y = [ymin15 ymin15 ymax15 ymax15 ymin15];
144
plot(x,y);
hold on;
x = [xmin16 xmax16 xmax16 xmin16 xmin16];
y = [ymin16 ymin16 ymax16 ymax16 ymin16];
plot(x,y);
hold on;
x = [xmin17 xmax17 xmax17 xmin17 xmin17];
y = [ymin17 ymin17 ymax17 ymax17 ymin17];
plot(x,y);
hold on;
x = [xmin18 xmax18 xmax18 xmin18 xmin18];
y = [ymin18 ymin18 ymax18 ymax18 ymin18];
plot(x,y);
hold on;
x = [xmin19 xmax19 xmax19 xmin19 xmin19];
y = [ymin19 ymin19 ymax19 ymax19 ymin19];
plot(x,y);
hold on;
x = [xmin20 xmax20 xmax20 xmin20 xmin20];
y = [ymin20 ymin20 ymax20 ymax20 ymin20];
plot(x,y);
hold on;
x = [xmin21 xmax21 xmax21 xmin21 xmin21];
y = [ymin21 ymin21 ymax21 ymax21 ymin21];
plot(x,y);
hold on;
x = [xmin22 xmax22 xmax22 xmin22 xmin22];
y = [ymin22 ymin22 ymax22 ymax22 ymin22];
plot(x,y);
hold on;
x = [xmin23 xmax23 xmax23 xmin23 xmin23];
y = [ymin23 ymin23 ymax23 ymax23 ymin23];
plot(x,y);
hold on;
x = [xmin24 xmax24 xmax24 xmin24 xmin24];
y = [ymin24 ymin24 ymax24 ymax24 ymin24];
plot(x,y);
hold on;
x = [xmin25 xmax25 xmax25 xmin25 xmin25];
y = [ymin25 ymin25 ymax25 ymax25 ymin25];
plot(x,y);
hold on;
x = [xmin26 xmax26 xmax26 xmin26 xmin26];
y = [ymin26 ymin26 ymax26 ymax26 ymin26];
plot(x,y);
hold on;
x = [xmin27 xmax27 xmax27 xmin27 xmin27];
y = [ymin27 ymin27 ymax27 ymax27 ymin27];
plot(x,y);
hold on;
x = [xmin28 xmax28 xmax28 xmin28 xmin28];
y = [ymin28 ymin28 ymax28 ymax28 ymin28];
plot(x,y);
145
hold on;
x = [xmin29 xmax29 xmax29 xmin29 xmin29];
y = [ymin29 ymin29 ymax29 ymax29 ymin29];
plot(x,y);
hold on;
x = [xmin30 xmax30 xmax30 xmin30 xmin30];
y = [ymin30 ymin30 ymax30 ymax30 ymin30];
plot(x,y);
hold on;
x = [xmin31 xmax31 xmax31 xmin31 xmin31];
y = [ymin31 ymin31 ymax31 ymax31 ymin31];
plot(x,y);
hold on;
x = [xmin32 xmax32 xmax32 xmin32 xmin32];
y = [ymin32 ymin32 ymax32 ymax32 ymin32];
plot(x,y);
hold on;
x = [xmin33 xmax33 xmax33 xmin33 xmin33];
y = [ymin33 ymin33 ymax33 ymax33 ymin33];
plot(x,y);
hold on;
x = [xmin34 xmax34 xmax34 xmin34 xmin34];
y = [ymin34 ymin34 ymax34 ymax34 ymin34];
plot(x,y);
hold on;
x = [xmin35 xmax35 xmax35 xmin35 xmin35];
y = [ymin35 ymin35 ymax35 ymax35 ymin35];
plot(x,y);
hold on;
x = [xmin36 xmax36 xmax36 xmin36 xmin36];
y = [ymin36 ymin36 ymax36 ymax36 ymin36];
plot(x,y);
hold on;
x = [xmin37 xmax37 xmax37 xmin37 xmin37];
y = [ymin37 ymin37 ymax37 ymax37 ymin37];
plot(x,y);
hold on;
x = [xmin38 xmax38 xmax38 xmin38 xmin38];
y = [ymin38 ymin38 ymax38 ymax38 ymin38];
plot(x,y);
hold on;
x = [xmin39 xmax39 xmax39 xmin39 xmin39];
y = [ymin39 ymin39 ymax39 ymax39 ymin39];
plot(x,y);
hold on;
x = [xmin40 xmax40 xmax40 xmin40 xmin40];
y = [ymin40 ymin40 ymax40 ymax40 ymin40];
plot(x,y);
hold on;
x = [xmin41 xmax41 xmax41 xmin41 xmin41];
y = [ymin41 ymin41 ymax41 ymax41 ymin41];
plot(x,y);
hold on;
146
x = [xmin42 xmax42 xmax42 xmin42 xmin42];
y = [ymin42 ymin42 ymax42 ymax42 ymin42];
plot(x,y);
hold on;
x = [xmin43 xmax43 xmax43 xmin43 xmin43];
y = [ymin43 ymin43 ymax43 ymax43 ymin43];
plot(x,y);
hold on;
x = [xmin44 xmax44 xmax44 xmin44 xmin44];
y = [ymin44 ymin44 ymax44 ymax44 ymin44];
plot(x,y);
hold on;
x = [xmin45 xmax45 xmax45 xmin45 xmin45];
y = [ymin45 ymin45 ymax45 ymax45 ymin45];
plot(x,y);
hold on;
x = [xmin46 xmax46 xmax46 xmin46 xmin46];
y = [ymin46 ymin46 ymax46 ymax46 ymin46];
plot(x,y);
hold on;
x = [xmin47 xmax47 xmax47 xmin47 xmin47];
y = [ymin47 ymin47 ymax47 ymax47 ymin47];
plot(x,y);
hold on;
x = [xmin48 xmax48 xmax48 xmin48 xmin48];
y = [ymin48 ymin48 ymax48 ymax48 ymin48];
plot(x,y);
hold on;
[Xu1_,Yu1_]=ndgrid(xmin1:(xmax1-xmin1)/nulx1:xmax1,ymin1:(ymax1-
ymin1)/nuly1:ymax1);
[Xu2_,Yu2_]=ndgrid(xmin2:(xmax2-xmin2)/nulx2:xmax2,ymin2:(ymax2-
ymin2)/nuly2:ymax2);
[Xu3_,Yu3_]=ndgrid(xmin3:(xmax3-xmin3)/nulx3:xmax3,ymin3:(ymax3-
ymin3)/nuly3:ymax3);
[Xu4_,Yu4_]=ndgrid(xmin4:(xmax4-xmin4)/nulx4:xmax4,ymin4:(ymax4-
ymin4)/nuly4:ymax4);
[Xu5_,Yu5_]=ndgrid(xmin5:(xmax5-xmin5)/nulx5:xmax5,ymin5:(ymax5-
ymin5)/nuly5:ymax5);
[Xu6_,Yu6_]=ndgrid(xmin6:(xmax6-xmin6)/nulx6:xmax6,ymin6:(ymax6-
ymin6)/nuly6:ymax6);
[Xu7_,Yu7_]=ndgrid(xmin7:(xmax7-xmin7)/nulx7:xmax7,ymin7:(ymax7-
ymin7)/nuly7:ymax7);
[Xu8_,Yu8_]=ndgrid(xmin8:(xmax8-xmin8)/nulx8:xmax8,ymin8:(ymax8-
ymin8)/nuly8:ymax8);
[Xu9_,Yu9_]=ndgrid(xmin9:(xmax9-xmin9)/nulx9:xmax9,ymin9:(ymax9-
ymin9)/nuly9:ymax9);
[Xu10_,Yu10_]=ndgrid(xmin10:(xmax10-xmin10)/nulx10:xmax10,ymin10:(ymax10-
ymin10)/nuly10:ymax10);
[Xu11_,Yu11_]=ndgrid(xmin11:(xmax11-xmin11)/nulx11:xmax11,ymin11:(ymax11-
ymin11)/nuly11:ymax11);
[Xu12_,Yu12_]=ndgrid(xmin12:(xmax12-xmin12)/nulx12:xmax12,ymin12:(ymax12-
ymin12)/nuly12:ymax12);
147
[Xu13_,Yu13_]=ndgrid(xmin13:(xmax13-xmin13)/nulx13:xmax13,ymin13:(ymax13-
ymin13)/nuly13:ymax13);
[Xu14_,Yu14_]=ndgrid(xmin14:(xmax14-xmin14)/nulx14:xmax14,ymin14:(ymax14-
ymin14)/nuly14:ymax14);
[Xu15_,Yu15_]=ndgrid(xmin15:(xmax15-xmin15)/nulx15:xmax15,ymin15:(ymax15-
ymin15)/nuly15:ymax15);
[Xu16_,Yu16_]=ndgrid(xmin16:(xmax16-xmin16)/nulx16:xmax16,ymin16:(ymax16-
ymin16)/nuly16:ymax16);
[Xu17_,Yu17_]=ndgrid(xmin17:(xmax17-xmin17)/nulx17:xmax17,ymin17:(ymax17-
ymin17)/nuly17:ymax17);
[Xu18_,Yu18_]=ndgrid(xmin18:(xmax18-xmin18)/nulx18:xmax18,ymin18:(ymax18-
ymin18)/nuly18:ymax18);
[Xu19_,Yu19_]=ndgrid(xmin19:(xmax19-xmin19)/nulx19:xmax19,ymin19:(ymax19-
ymin19)/nuly19:ymax19);
[Xu20_,Yu20_]=ndgrid(xmin20:(xmax20-xmin20)/nulx20:xmax20,ymin20:(ymax20-
ymin20)/nuly20:ymax20);
[Xu21_,Yu21_]=ndgrid(xmin21:(xmax21-xmin21)/nulx21:xmax21,ymin21:(ymax21-
ymin21)/nuly21:ymax21);
[Xu22_,Yu22_]=ndgrid(xmin22:(xmax22-xmin22)/nulx22:xmax22,ymin22:(ymax22-
ymin22)/nuly22:ymax22);
[Xu23_,Yu23_]=ndgrid(xmin23:(xmax23-xmin23)/nulx23:xmax23,ymin23:(ymax23-
ymin23)/nuly23:ymax23);
[Xu24_,Yu24_]=ndgrid(xmin24:(xmax24-xmin24)/nulx24:xmax24,ymin24:(ymax24-
ymin24)/nuly24:ymax24);
[Xu25_,Yu25_]=ndgrid(xmin25:(xmax25-xmin25)/nulx25:xmax25,ymin25:(ymax25-
ymin25)/nuly25:ymax25);
[Xu26_,Yu26_]=ndgrid(xmin26:(xmax26-xmin26)/nulx26:xmax26,ymin26:(ymax26-
ymin26)/nuly26:ymax26);
[Xu27_,Yu27_]=ndgrid(xmin27:(xmax27-xmin27)/nulx27:xmax27,ymin27:(ymax27-
ymin27)/nuly27:ymax27);
[Xu28_,Yu28_]=ndgrid(xmin28:(xmax28-xmin28)/nulx28:xmax28,ymin28:(ymax28-
ymin28)/nuly28:ymax28);
[Xu29_,Yu29_]=ndgrid(xmin29:(xmax29-xmin29)/nulx29:xmax29,ymin29:(ymax29-
ymin29)/nuly29:ymax29);
[Xu30_,Yu30_]=ndgrid(xmin30:(xmax30-xmin30)/nulx30:xmax30,ymin30:(ymax30-
ymin30)/nuly30:ymax30);
[Xu31_,Yu31_]=ndgrid(xmin31:(xmax31-xmin31)/nulx31:xmax31,ymin31:(ymax31-
ymin31)/nuly31:ymax31);
[Xu32_,Yu32_]=ndgrid(xmin32:(xmax32-xmin32)/nulx32:xmax32,ymin32:(ymax32-
ymin32)/nuly32:ymax32);
[Xc1_,Yc1_]=ndgrid(xmin33:(xmax33-xmin33)/nclx1:xmax33,ymin33:(ymax33-
ymin33)/ncly1:ymax33);
[Xc2_,Yc2_]=ndgrid(xmin34:(xmax34-xmin34)/nclx2:xmax34,ymin34:(ymax34-
ymin34)/ncly2:ymax34);
[Xc3_,Yc3_]=ndgrid(xmin35:(xmax35-xmin35)/nclx3:xmax35,ymin35:(ymax35-
ymin35)/ncly3:ymax35);
[Xc4_,Yc4_]=ndgrid(xmin36:(xmax36-xmin36)/nclx4:xmax36,ymin36:(ymax36-
ymin36)/ncly4:ymax36);
[Xc5_,Yc5_]=ndgrid(xmin37:(xmax37-xmin37)/nclx5:xmax37,ymin37:(ymax37-
ymin37)/ncly5:ymax37);
[Xc6_,Yc6_]=ndgrid(xmin38:(xmax38-xmin38)/nclx6:xmax38,ymin38:(ymax38-
ymin38)/ncly6:ymax38);
148
[Xc7_,Yc7_]=ndgrid(xmin39:(xmax39-xmin39)/nclx7:xmax39,ymin39:(ymax39-
ymin39)/ncly7:ymax39);
[Xc8_,Yc8_]=ndgrid(xmin40:(xmax40-xmin40)/nclx8:xmax40,ymin40:(ymax40-
ymin40)/ncly8:ymax40);
[Xc9_,Yc9_]=ndgrid(xmin41:(xmax41-xmin41)/nclx9:xmax41,ymin41:(ymax41-
ymin41)/ncly9:ymax41);
[Xc10_,Yc10_]=ndgrid(xmin42:(xmax42-xmin42)/nclx10:xmax42,ymin42:(ymax42-
ymin42)/ncly10:ymax42);
[Xc11_,Yc11_]=ndgrid(xmin43:(xmax43-xmin43)/nclx11:xmax43,ymin43:(ymax43-
ymin43)/ncly11:ymax43);
[Xc12_,Yc12_]=ndgrid(xmin44:(xmax44-xmin44)/nclx12:xmax44,ymin44:(ymax44-
ymin44)/ncly12:ymax44);
[Xc13_,Yc13_]=ndgrid(xmin45:(xmax45-xmin45)/nclx13:xmax45,ymin45:(ymax45-
ymin45)/ncly13:ymax45);
[Xc14_,Yc14_]=ndgrid(xmin46:(xmax46-xmin46)/nclx14:xmax46,ymin46:(ymax46-
ymin46)/ncly14:ymax46);
[Xc15_,Yc15_]=ndgrid(xmin47:(xmax47-xmin47)/nclx15:xmax47,ymin47:(ymax47-
ymin47)/ncly15:ymax47);
[Xc16_,Yc16_]=ndgrid(xmin48:(xmax48-xmin48)/nclx16:xmax48,ymin48:(ymax48-
ymin48)/ncly16:ymax48);
%
for n = 1:numel(Xu1_) %// loop over vertical lines
plot([Xu1_(n) Xu1_(n)], [Yu1_(1) Yu1_(end)],'m:');
end
for n = 1:numel(Yu1_) %// loop over horizontal lines
plot([Xu1_(1) Xu1_(end)], [Yu1_(n) Yu1_(n)],'m:');
end
for n = 1:numel(Xu2_) %// loop over vertical lines
plot([Xu2_(n) Xu2_(n)], [Yu2_(1) Yu2_(end)],'m:');
end
for n = 1:numel(Yu2_) %// loop over horizontal lines
plot([Xu2_(1) Xu2_(end)], [Yu2_(n) Yu2_(n)],'m:');
end
for n = 1:numel(Xu3_) %// loop over vertical lines
plot([Xu3_(n) Xu3_(n)], [Yu3_(1) Yu3_(end)],'m:');
end
for n = 1:numel(Yu3_) %// loop over horizontal lines
plot([Xu3_(1) Xu3_(end)], [Yu3_(n) Yu3_(n)],'m:');
end
for n = 1:numel(Xu4_) %// loop over vertical lines
plot([Xu4_(n) Xu4_(n)], [Yu4_(1) Yu4_(end)],'m:');
end
for n = 1:numel(Yu4_) %// loop over horizontal lines
plot([Xu4_(1) Xu4_(end)], [Yu4_(n) Yu4_(n)],'m:');
end
for n = 1:numel(Xu5_) %// loop over vertical lines
plot([Xu5_(n) Xu5_(n)], [Yu5_(1) Yu5_(end)],'m:');
end
for n = 1:numel(Yu5_) %// loop over horizontal lines
plot([Xu5_(1) Xu5_(end)], [Yu5_(n) Yu5_(n)],'m:');
end
for n = 1:numel(Xu6_) %// loop over vertical lines
plot([Xu6_(n) Xu6_(n)], [Yu6_(1) Yu6_(end)],'m:');
149
end
for n = 1:numel(Yu6_) %// loop over horizontal lines
plot([Xu6_(1) Xu6_(end)], [Yu6_(n) Yu6_(n)],'m:');
end
for n = 1:numel(Xu7_) %// loop over vertical lines
plot([Xu7_(n) Xu7_(n)], [Yu7_(1) Yu7_(end)],'m:');
end
for n = 1:numel(Yu7_) %// loop over horizontal lines
plot([Xu7_(1) Xu7_(end)], [Yu7_(n) Yu7_(n)],'m:');
end
for n = 1:numel(Xu8_) %// loop over vertical lines
plot([Xu8_(n) Xu8_(n)], [Yu8_(1) Yu8_(end)],'m:');
end
for n = 1:numel(Yu8_) %// loop over horizontal lines
plot([Xu8_(1) Xu8_(end)], [Yu8_(n) Yu8_(n)],'m:');
end
for n = 1:numel(Xu9_) %// loop over vertical lines
plot([Xu9_(n) Xu9_(n)], [Yu9_(1) Yu9_(end)],'m:');
end
for n = 1:numel(Yu9_) %// loop over horizontal lines
plot([Xu9_(1) Xu9_(end)], [Yu9_(n) Yu9_(n)],'m:');
end
for n = 1:numel(Xu10_) %// loop over vertical lines
plot([Xu10_(n) Xu10_(n)], [Yu10_(1) Yu10_(end)],'m:');
end
for n = 1:numel(Yu10_) %// loop over horizontal lines
plot([Xu10_(1) Xu10_(end)], [Yu10_(n) Yu10_(n)],'m:');
end
for n = 1:numel(Xu11_) %// loop over vertical lines
plot([Xu11_(n) Xu11_(n)], [Yu11_(1) Yu11_(end)],'m:');
end
for n = 1:numel(Yu11_) %// loop over horizontal lines
plot([Xu11_(1) Xu11_(end)], [Yu11_(n) Yu11_(n)],'m:');
end
for n = 1:numel(Xu12_) %// loop over vertical lines
plot([Xu12_(n) Xu12_(n)], [Yu12_(1) Yu12_(end)],'m:');
end
for n = 1:numel(Yu12_) %// loop over horizontal lines
plot([Xu12_(1) Xu12_(end)], [Yu12_(n) Yu12_(n)],'m:');
end
for n = 1:numel(Xu13_) %// loop over vertical lines
plot([Xu13_(n) Xu13_(n)], [Yu13_(1) Yu13_(end)],'m:');
end
for n = 1:numel(Yu13_) %// loop over horizontal lines
plot([Xu13_(1) Xu13_(end)], [Yu13_(n) Yu13_(n)],'m:');
end
for n = 1:numel(Xu14_) %// loop over vertical lines
plot([Xu14_(n) Xu14_(n)], [Yu14_(1) Yu14_(end)],'m:');
end
for n = 1:numel(Yu14_) %// loop over horizontal lines
plot([Xu14_(1) Xu14_(end)], [Yu14_(n) Yu14_(n)],'m:');
end
for n = 1:numel(Xu15_) %// loop over vertical lines
150
plot([Xu15_(n) Xu15_(n)], [Yu15_(1) Yu15_(end)],'m:');
end
for n = 1:numel(Yu15_) %// loop over horizontal lines
plot([Xu15_(1) Xu15_(end)], [Yu15_(n) Yu15_(n)],'m:');
end
for n = 1:numel(Xu16_) %// loop over vertical lines
plot([Xu16_(n) Xu16_(n)], [Yu16_(1) Yu16_(end)],'m:');
end
for n = 1:numel(Yu16_) %// loop over horizontal lines
plot([Xu16_(1) Xu16_(end)], [Yu16_(n) Yu16_(n)],'m:');
end
for n = 1:numel(Xu17_) %// loop over vertical lines
plot([Xu17_(n) Xu17_(n)], [Yu17_(1) Yu17_(end)],'m:');
end
for n = 1:numel(Yu17_) %// loop over horizontal lines
plot([Xu17_(1) Xu17_(end)], [Yu17_(n) Yu17_(n)],'m:');
end
for n = 1:numel(Xu18_) %// loop over vertical lines
plot([Xu18_(n) Xu18_(n)], [Yu18_(1) Yu18_(end)],'m:');
end
for n = 1:numel(Yu18_) %// loop over horizontal lines
plot([Xu18_(1) Xu18_(end)], [Yu18_(n) Yu18_(n)],'m:');
end
for n = 1:numel(Xu19_) %// loop over vertical lines
plot([Xu19_(n) Xu19_(n)], [Yu19_(1) Yu19_(end)],'m:');
end
for n = 1:numel(Yu19_) %// loop over horizontal lines
plot([Xu19_(1) Xu19_(end)], [Yu19_(n) Yu19_(n)],'m:');
end
for n = 1:numel(Xu20_) %// loop over vertical lines
plot([Xu20_(n) Xu20_(n)], [Yu20_(1) Yu20_(end)],'m:');
end
for n = 1:numel(Yu20_) %// loop over horizontal lines
plot([Xu20_(1) Xu20_(end)], [Yu20_(n) Yu20_(n)],'m:');
end
for n = 1:numel(Xu21_) %// loop over vertical lines
plot([Xu21_(n) Xu21_(n)], [Yu21_(1) Yu21_(end)],'m:');
end
for n = 1:numel(Yu21_) %// loop over horizontal lines
plot([Xu21_(1) Xu21_(end)], [Yu21_(n) Yu21_(n)],'m:');
end
for n = 1:numel(Xu22_) %// loop over vertical lines
plot([Xu22_(n) Xu22_(n)], [Yu22_(1) Yu22_(end)],'m:');
end
for n = 1:numel(Yu22_) %// loop over horizontal lines
plot([Xu22_(1) Xu22_(end)], [Yu22_(n) Yu22_(n)],'m:');
end
for n = 1:numel(Xu23_) %// loop over vertical lines
plot([Xu23_(n) Xu23_(n)], [Yu23_(1) Yu23_(end)],'m:');
end
for n = 1:numel(Yu23_) %// loop over horizontal lines
plot([Xu23_(1) Xu23_(end)], [Yu23_(n) Yu23_(n)],'m:');
end
151
for n = 1:numel(Xu24_) %// loop over vertical lines
plot([Xu24_(n) Xu24_(n)], [Yu24_(1) Yu24_(end)],'m:');
end
for n = 1:numel(Yu24_) %// loop over horizontal lines
plot([Xu24_(1) Xu24_(end)], [Yu24_(n) Yu24_(n)],'m:');
end
for n = 1:numel(Xu25_) %// loop over vertical lines
plot([Xu25_(n) Xu25_(n)], [Yu25_(1) Yu25_(end)],'m:');
end
for n = 1:numel(Yu25_) %// loop over horizontal lines
plot([Xu25_(1) Xu25_(end)], [Yu25_(n) Yu25_(n)],'m:');
end
for n = 1:numel(Xu26_) %// loop over vertical lines
plot([Xu26_(n) Xu26_(n)], [Yu26_(1) Yu26_(end)],'m:');
end
for n = 1:numel(Yu26_) %// loop over horizontal lines
plot([Xu26_(1) Xu26_(end)], [Yu26_(n) Yu26_(n)],'m:');
end
for n = 1:numel(Xu27_) %// loop over vertical lines
plot([Xu27_(n) Xu27_(n)], [Yu27_(1) Yu27_(end)],'m:');
end
for n = 1:numel(Yu27_) %// loop over horizontal lines
plot([Xu27_(1) Xu27_(end)], [Yu27_(n) Yu27_(n)],'m:');
end
for n = 1:numel(Xu28_) %// loop over vertical lines
plot([Xu28_(n) Xu28_(n)], [Yu28_(1) Yu28_(end)],'m:');
end
for n = 1:numel(Yu28_) %// loop over horizontal lines
plot([Xu28_(1) Xu28_(end)], [Yu28_(n) Yu28_(n)],'m:');
end
for n = 1:numel(Xu29_) %// loop over vertical lines
plot([Xu29_(n) Xu29_(n)], [Yu29_(1) Yu29_(end)],'m:');
end
for n = 1:numel(Yu29_) %// loop over horizontal lines
plot([Xu29_(1) Xu29_(end)], [Yu29_(n) Yu29_(n)],'m:');
end
for n = 1:numel(Xu30_) %// loop over vertical lines
plot([Xu30_(n) Xu30_(n)], [Yu30_(1) Yu30_(end)],'m:');
end
for n = 1:numel(Yu30_) %// loop over horizontal lines
plot([Xu30_(1) Xu30_(end)], [Yu30_(n) Yu30_(n)],'m:');
end
for n = 1:numel(Xu31_) %// loop over vertical lines
plot([Xu31_(n) Xu31_(n)], [Yu31_(1) Yu31_(end)],'m:');
end
for n = 1:numel(Yu31_) %// loop over horizontal lines
plot([Xu31_(1) Xu31_(end)], [Yu31_(n) Yu31_(n)],'m:');
end
for n = 1:numel(Xu32_) %// loop over vertical lines
plot([Xu32_(n) Xu32_(n)], [Yu32_(1) Yu32_(end)],'m:');
end
for n = 1:numel(Yu32_) %// loop over horizontal lines
plot([Xu32_(1) Xu32_(end)], [Yu32_(n) Yu32_(n)],'m:');
152
end
for n = 1:numel(Xc1_) %// loop over vertical lines
plot([Xc1_(n) Xc1_(n)], [Yc1_(1) Yc1_(end)],'k:');
end
for n = 1:numel(Yc1_) %// loop over horizontal lines
plot([Xc1_(1) Xc1_(end)], [Yc1_(n) Yc1_(n)],'k:');
end
for n = 1:numel(Xc2_) %// loop over vertical lines
plot([Xc2_(n) Xc2_(n)], [Yc2_(1) Yc2_(end)],'k:');
end
for n = 1:numel(Yc2_) %// loop over horizontal lines
plot([Xc2_(1) Xc2_(end)], [Yc2_(n) Yc2_(n)],'k:');
end
for n = 1:numel(Xc3_) %// loop over vertical lines
plot([Xc3_(n) Xc3_(n)], [Yc3_(1) Yc3_(end)],'k:');
end
for n = 1:numel(Yc3_) %// loop over horizontal lines
plot([Xc3_(1) Xc3_(end)], [Yc3_(n) Yc3_(n)],'k:');
end
for n = 1:numel(Xc4_) %// loop over vertical lines
plot([Xc4_(n) Xc4_(n)], [Yc4_(1) Yc4_(end)],'k:');
end
for n = 1:numel(Yc4_) %// loop over horizontal lines
plot([Xc4_(1) Xc4_(end)], [Yc4_(n) Yc4_(n)],'k:');
end
for n = 1:numel(Xc5_) %// loop over vertical lines
plot([Xc5_(n) Xc5_(n)], [Yc5_(1) Yc5_(end)],'k:');
end
for n = 1:numel(Yc5_) %// loop over horizontal lines
plot([Xc5_(1) Xc5_(end)], [Yc5_(n) Yc5_(n)],'k:');
end
for n = 1:numel(Xc6_) %// loop over vertical lines
plot([Xc6_(n) Xc6_(n)], [Yc6_(1) Yc6_(end)],'k:');
end
for n = 1:numel(Yc6_) %// loop over horizontal lines
plot([Xc6_(1) Xc6_(end)], [Yc6_(n) Yc6_(n)],'k:');
end
for n = 1:numel(Xc7_) %// loop over vertical lines
plot([Xc7_(n) Xc7_(n)], [Yc7_(1) Yc7_(end)],'k:');
end
for n = 1:numel(Yc7_) %// loop over horizontal lines
plot([Xc7_(1) Xc7_(end)], [Yc7_(n) Yc7_(n)],'k:');
end
for n = 1:numel(Xc8_) %// loop over vertical lines
plot([Xc8_(n) Xc8_(n)], [Yc8_(1) Yc8_(end)],'k:');
end
for n = 1:numel(Yc8_) %// loop over horizontal lines
plot([Xc8_(1) Xc8_(end)], [Yc8_(n) Yc8_(n)],'k:');
end
for n = 1:numel(Xc9_) %// loop over vertical lines
plot([Xc9_(n) Xc9_(n)], [Yc9_(1) Yc9_(end)],'k:');
end
for n = 1:numel(Yc9_) %// loop over horizontal lines
153
plot([Xc9_(1) Xc9_(end)], [Yc9_(n) Yc9_(n)],'k:');
end
for n = 1:numel(Xc10_) %// loop over vertical lines
plot([Xc10_(n) Xc10_(n)], [Yc10_(1) Yc10_(end)],'k:');
end
for n = 1:numel(Yc10_) %// loop over horizontal lines
plot([Xc10_(1) Xc10_(end)], [Yc10_(n) Yc10_(n)],'k:');
end
for n = 1:numel(Xc11_) %// loop over vertical lines
plot([Xc11_(n) Xc11_(n)], [Yc11_(1) Yc11_(end)],'k:');
end
for n = 1:numel(Yc11_) %// loop over horizontal lines
plot([Xc11_(1) Xc11_(end)], [Yc11_(n) Yc11_(n)],'k:');
end
for n = 1:numel(Xc12_) %// loop over vertical lines
plot([Xc12_(n) Xc12_(n)], [Yc12_(1) Yc12_(end)],'k:');
end
for n = 1:numel(Yc12_) %// loop over horizontal lines
plot([Xc12_(1) Xc12_(end)], [Yc12_(n) Yc12_(n)],'k:');
end
for n = 1:numel(Xc13_) %// loop over vertical lines
plot([Xc13_(n) Xc13_(n)], [Yc13_(1) Yc13_(end)],'k:');
end
for n = 1:numel(Yc13_) %// loop over horizontal lines
plot([Xc13_(1) Xc13_(end)], [Yc13_(n) Yc13_(n)],'k:');
end
for n = 1:numel(Xc14_) %// loop over vertical lines
plot([Xc14_(n) Xc14_(n)], [Yc14_(1) Yc14_(end)],'k:');
end
for n = 1:numel(Yc14_) %// loop over horizontal lines
plot([Xc14_(1) Xc14_(end)], [Yc14_(n) Yc14_(n)],'k:');
end
for n = 1:numel(Xc15_) %// loop over vertical lines
plot([Xc15_(n) Xc15_(n)], [Yc15_(1) Yc15_(end)],'k:');
end
for n = 1:numel(Yc15_) %// loop over horizontal lines
plot([Xc15_(1) Xc15_(end)], [Yc15_(n) Yc15_(n)],'k:');
end
for n = 1:numel(Xc16_) %// loop over vertical lines
plot([Xc16_(n) Xc16_(n)], [Yc16_(1) Yc16_(end)],'k:');
end
for n = 1:numel(Yc16_) %// loop over horizontal lines
plot([Xc16_(1) Xc16_(end)], [Yc16_(n) Yc16_(n)],'k:');
end
scatter(LRP(:,1),LRP(:,2),Db,'filled','k');
axis equal;
end
154
%
% Unconfined
[ecun_mu,fcun_mu] = Manderun(eco,espall,fco,Ec,dels);
%
% Confined
[ecc_ma,fcc_ma] = ManderconfHollow(Aci,'rectangular','hoops');
%
% Plot
figure;area(ecc_ma,fcc_ma,'FaceColor','c');
hold on;
area(ecun_mu,fcun_mu,'FaceColor','b');
hold off;
ylabel('Stress [MPa]','FontSize',10);
xlabel('Strain','FontSize',10);
legend(': Confined Concrete',': Unconfined Concrete');
grid on;
set(gca,'Layer','top');
title('Stress-Strain for Confined and Unconfined Concrete (Mander et al.,
1988)','FontSize',12)
Unconfined - Mander
for i = 1:length(ecun_mu)
if ecun_mu(i)<=2*eco
fcun_mu(i) = fco*xu(i)*ru/(ru-1+xu(i)^ru);
end
if ecun_mu(i)>2*eco & ecun_mu(i)<=espall
fcun_mu(i) = fco*(2*ru/(ru-1+2^ru))*((espall-(ecun_mu(i)))/(espall-
2*eco));
end
if ecun_mu(i)>espall
fcun_mu(i) = 0;
end
end
end
155
Confined - Mander
156
r = Ec/(Ec-Esec);
ecu_ma = 0.004 + 1.4*rhos*fyh*esu/fcc;
case 'circular'
ds = tw - 2*tc - dt;
rhos = 4*Asp/(ds*s);
Ac = 0.25*pi*(ds^2);
rhocc = Ast/Ac;
switch lower(type)
case 'spirals'
ke = (1-sc/(2*ds))/(1-rhocc);
case 'hoops'
ke = ((1-sc/(2*ds))^2/(1-rhocc));
otherwise
disp('tranverse reinforcement should be spirals or hoops');
return;
end
fle = 0.5*ke*rhos*fy; %confined strength ratio
otherwise
disp('section not available'); return;
end
assignin('base','ecc',ecc);
assignin('base','fcc',fcc);
assignin('base','ecu_ma',ecu_ma);
assignin('base','ke',ke);
assignin('base','rho1',rho1);
assignin('base','rho2',rho2);
assignin('base','rhos',rhos);
assignin('base','fl1',fl1);
assignin('base','fl2',fl2);
assignin('base','fle',fle);
%
ecc_ma = 0:dels:ecu_ma;
x = (1/ecc)*ecc_ma;
fcc_ma = fcc*x*r./(r-1+x.^r);
end
157
% - fy = yield stress
% - fsu = ultimate tensile stress
% - dels = delta strain
%
r = esu-esh;
es = 0:dels:esu;
ey = fy/Es;
%
for i=1:length(es)
if es(i)<=ey
fs(i) = Es*es(i);
end
if es(i)>ey & es(i)<=esh
fs(i) = fy;
end
if es(i)>esh & es(i)<=esu
fs(i) = fsu-((fsu-fy)*((esu-es(i))/r)^2);
end
end
es = [fliplr(-es(2:end)) es]; % combine with tension & compression
fs = [fliplr(-fs(2:end)) fs]; % combine with tension & compression
figure; plot(es,fs);
ylabel('Stress [MPa]','FontSize',10);
xlabel('Strain','FontSize',10);
grid on;
title('Stress-Strain for Steel Reinforcement (Priestley, 1996)','FontSize',12);
end
Moment-Curvature Script
158
fc_uncon= zeros(length(arm_uncon),length(incre));
fc_conf = zeros(length(arm_conf),length(incre));
f_st = zeros(length(arm_st),length(incre));
F_UNCON = zeros(length(arm_uncon),length(incre));
F_CONF = zeros(length(arm_conf),length(incre));
F_STEEL = zeros(length(arm_st),length(incre));
%
for i = 1:length(incre)
%%%---------------------------c1----------------------------%%%
%---Unconfined Segment
eci_uncon1 = strain_fun(c1,arm_uncon,incre(i));
fc_uncon1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon1,'unconfined');
F_uncon1 = force_fun(fc_uncon1,MULY(:,2));
%---Confined Segment
eci_conf1 = strain_fun(c1,arm_conf,incre(i));
fc_conf1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_conf1,'confined');
F_conf1 = force_fun(fc_conf1,MCLY(:,2));
%---Reinforcement
esi_st1 = strain_fun(c1,arm_st,incre(i));
f_st1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st1,'steel');
F_st1 = force_fun(f_st1,MLRY(:,2));
%---sum of forces
SUMF_c1 = sum(F_uncon1) + sum(F_conf1) + sum(F_st1) - P;
%
%%%---------------------------c2----------------------------%%%
%---Unconfined Segment
eci_uncon2 = strain_fun(c2,arm_uncon,incre(i));
fc_uncon2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon2,'unconfined');
F_uncon2 = force_fun(fc_uncon2,MULY(:,2));
%---Confined Segment
eci_conf2 = strain_fun(c2,arm_conf,incre(i));
fc_conf2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_conf2,'confined');
F_conf2 = force_fun(fc_conf2,MCLY(:,2));
%---Reinforcement
esi_st2 = strain_fun(c2,arm_st,incre(i));
f_st2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st2,'steel');
F_st2 = force_fun(f_st2,MLRY(:,2));
%---sum of forces
SUMF_c2 = sum(F_uncon2) + sum(F_conf2) + sum(F_st2) - P;
%
iter = 0;
maxiter = 50;
tol = 1.0e-3;
while (1)
cr = (c1+c2)/2;
iter = iter + 1;
%---Unconfined Segment
159
eci_unconr = strain_fun(cr,arm_uncon,incre(i));
fc_unconr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,...
esh,esu,fy,fsu,Ec,Es,eci_unconr,'unconfined');
F_unconr = force_fun(fc_unconr,MULY(:,2));
%---Confined Segment
eci_confr = strain_fun(cr,arm_conf,incre(i));
fc_confr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,...
esh,esu,fy,fsu,Ec,Es,eci_confr,'confined');
F_confr = force_fun(fc_confr,MCLY(:,2));
%---Reinforcement
esi_str = strain_fun(cr,arm_st,incre(i));
f_str = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,...
esh,esu,fy,fsu,Ec,Es,esi_str,'steel');
F_str = force_fun(f_str,MLRY(:,2));
%---sum of forces
SUMF_cr = sum(F_unconr) + sum(F_confr) + sum(F_str) - P;
%
if abs(SUMF_cr) <= tol || iter >= maxiter
break
end
if sign(SUMF_c1) == sign(SUMF_cr)
c1 = cr;
else
c2 = cr;
end
end
c1 = 0;
c2 = d/2;
c(:,i) = cr;
Cover_Strain(:,i) = eci_unconr;
Core_Strain(:,i) = eci_confr;
Steel_Strain(:,i) = esi_str;
fc_uncon(:,i)= fc_unconr;
fc_conf(:,i) = fc_confr;
f_st(:,i) = f_str;
F_UNCON(:,i) = F_unconr;
F_CONF(:,i) = F_confr;
F_STEEL(:,i) = F_str;
end
%---MOMENT-CURVATURE RELATIONSHIP---
Curv_i = incre*1e3;
Mom_i = (sum((H/2-arm_uncon).*F_UNCON)+sum((H/2-arm_conf).*F_CONF)+...
sum((H/2-arm_st).*F_STEEL))./1e6;
%
%---CRACK CONDITION--- (eci = ecr, tension)
ecr = fr/Ec;
length_crack= find(Cover_Strain(1,:)<=-ecr,1,'first');
Curv_crack = Curv_i(length_crack+1);
Mcr = Mom_i(length_crack+1);
%
%---YIELD CONDITION--- (esi = ey, tension)
Curv_yield = interp1(Steel_Strain(1,:),Curv_i,-fy/Es);
My = interp1(Curv_i,Mom_i,Curv_yield);
160
%
%---ULTIMATE CONDITION--- (eci = ecu confined or esi = esu, which reach
first)
% ultimate curvature by steel strain
length1 = find(Steel_Strain(1,:)<=-esu,1,'first'); % find the first
esu
if isempty(length1)
length1=length(Steel_Strain);
end
Curv_ults = Curv_i(length1-1);
%
% ultimate curvature by core strain
length2 = find(Core_Strain(end,:)>=ecu_ma,1,'first'); % find the first
ecu_ma
if isempty(length2)
length2=length(Core_Strain);
end
Curv_ultc = Curv_i(length2-1);
%
%ultimate curvature
Curv_ult = min(Curv_ults,Curv_ultc);
M_ult = Mom_i(min(length1,length2)-1);
%
%---NOMINAL CONDITION--- (eci = 0.003 or esi = esu_r)
Curv_nom = findcurv_fun(Cover_Strain,Curv_i,ecu);
Mne = interp1(Curv_i,Mom_i,Curv_nom);
esaux = interp1(Mom_i,Steel_Strain(1,:),Mne);
if esaux <= -esu_r
Mne = interp1(Steel_Strain(1,:),Mom_i,-esu_r);
end
%
%---Neutral Axis Location---
c_yield = interp1(Curv_i,c,Curv_yield);
c_ult = interp1(Curv_i,c,Curv_ult);
%
case 2
%---DISTANCE OF LAYERS FROM TOP FIBER---
arm_uncon = B - MULX(:,1); % unconfined layers
arm_conf = B - MCLX(:,1); % confined layers
arm_st = B - MLRX(:,1); % rebar layers
%
%---ITERATION TO FIND NEUTRAL AXIS---
d = B-tc-dt-Db/2;
c1 = 0;
c2 = d/2;
%
c = zeros(size(incre));
Cover_Strain = zeros(length(arm_uncon),length(incre));
Core_Strain = zeros(length(arm_conf),length(incre));
Steel_Strain = zeros(length(arm_st),length(incre));
fc_uncon= zeros(length(arm_uncon),length(incre));
fc_conf = zeros(length(arm_conf),length(incre));
161
f_st = zeros(length(arm_st),length(incre));
F_UNCON = zeros(length(arm_uncon),length(incre));
F_CONF = zeros(length(arm_conf),length(incre));
F_STEEL = zeros(length(arm_st),length(incre));
%
for i = 1:length(incre)
%%%---------------------------c1----------------------------%%%
%---Unconfined Segment
eci_uncon1 = strain_fun(c1,arm_uncon,incre(i));
fc_uncon1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon1,'unconfined');
F_uncon1 = force_fun(fc_uncon1,MULX(:,2));
%---Confined Segment
eci_conf1 = strain_fun(c1,arm_conf,incre(i));
fc_conf1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_conf1,'confined');
F_conf1 = force_fun(fc_conf1,MCLX(:,2));
%---Reinforcement
esi_st1 = strain_fun(c1,arm_st,incre(i));
f_st1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st1,'steel');
F_st1 = force_fun(f_st1,MLRX(:,2));
%---sum of forces
SUMF_c1 = sum(F_uncon1) + sum(F_conf1) + sum(F_st1) - P;
%
%%%---------------------------c2----------------------------%%%
%---Unconfined Segment
eci_uncon2 = strain_fun(c2,arm_uncon,incre(i));
fc_uncon2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon2,'unconfined');
F_uncon2 = force_fun(fc_uncon2,MULX(:,2));
%---Confined Segment
eci_conf2 = strain_fun(c2,arm_conf,incre(i));
fc_conf2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_conf2,'confined');
F_conf2 = force_fun(fc_conf2,MCLX(:,2));
%---Reinforcement
esi_st2 = strain_fun(c2,arm_st,incre(i));
f_st2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st2,'steel');
F_st2 = force_fun(f_st2,MLRX(:,2));
%---sum of forces
SUMF_c2 = sum(F_uncon2) + sum(F_conf2) + sum(F_st2) - P;
%
iter = 0;
maxiter = 50;
tol = 1.0e-3;
while (1)
cr = (c1+c2)/2;
iter = iter + 1;
%---Unconfined Segment
eci_unconr = strain_fun(cr,arm_uncon,incre(i));
fc_unconr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
162
esu,fy,fsu,Ec,Es,eci_unconr,'unconfined');
F_unconr = force_fun(fc_unconr,MULX(:,2));
%---Confined Segment
eci_confr = strain_fun(cr,arm_conf,incre(i));
fc_confr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_confr,'confined');
F_confr = force_fun(fc_confr,MCLX(:,2));
%---Reinforcement
esi_str = strain_fun(cr,arm_st,incre(i));
f_str = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_str,'steel');
F_str = force_fun(f_str,MLRX(:,2));
%---sum of forces
SUMF_cr = sum(F_unconr) + sum(F_confr) + sum(F_str) - P;
%
if abs(SUMF_cr) <= tol || iter >= maxiter
break
end
if sign(SUMF_c1) == sign(SUMF_cr)
c1 = cr;
else
c2 = cr;
end
end
c1 = 0;
c2 = d/2;
c(:,i) = cr;
Cover_Strain(:,i) = eci_unconr;
Core_Strain(:,i) = eci_confr;
Steel_Strain(:,i) = esi_str;
fc_uncon(:,i)= fc_unconr;
fc_conf(:,i) = fc_confr;
f_st(:,i) = f_str;
F_UNCON(:,i) = F_unconr;
F_CONF(:,i) = F_confr;
F_STEEL(:,i) = F_str;
end
%---MOMENT-CURVATURE RELATIONSHIP---
Curv_i = incre*1e3;
Mom_i = (sum((B/2-arm_uncon).*F_UNCON)+sum((B/2-arm_conf).*F_CONF)+...
sum((B/2-arm_st).*F_STEEL))./1e6;
%
%---CRACK CONDITION--- (eci = ecr, tension)
ecr = fr/Ec;
length_crack= find(Cover_Strain(1,:)<=-ecr,1,'first');
Curv_crack = Curv_i(length_crack+1);
Mcr = Mom_i(length_crack+1);
%
%---YIELD CONDITION--- (esi = ey, tension)
Curv_yield = interp1(Steel_Strain(1,:),Curv_i,-fy/Es);
My = interp1(Curv_i,Mom_i,Curv_yield);
%
163
%---ULTIMATE CONDITION--- (eci = ecu confined or esi = esu, which reach
first)
% ultimate curvature by steel strain
length1 = find(Steel_Strain(1,:)<=-esu,1,'first'); % find the first
esu
if isempty(length1)
length1=length(Steel_Strain);
end
Curv_ults = Curv_i(length1-1);
%
% ultimate curvature by core strain
length2 = find(Core_Strain(end,:)>=ecu_ma,1,'first'); % find the first
ecu_ma
if isempty(length2)
length2=length(Core_Strain);
end
Curv_ultc = Curv_i(length2-1);
%
%ultimate curvature
Curv_ult = min(Curv_ults,Curv_ultc);
M_ult = Mom_i(min(length1,length2)-1);
%
%---NOMINAL CONDITION--- (eci = 0.003 or esi = esu_r)
Curv_nom = findcurv_fun(Cover_Strain,Curv_i,ecu);
Mne = interp1(Curv_i,Mom_i,Curv_nom);
esaux = interp1(Mom_i,Steel_Strain(1,:),Mne);
if esaux <= -esu_r
Mne = interp1(Steel_Strain(1,:),Mom_i,-esu_r);
end
%
%---Neutral Axis Location---
c_yield = interp1(Curv_i,c,Curv_yield);
c_ult = interp1(Curv_i,c,Curv_ult);
%
otherwise
disp('please define major or minor'); return;
end
%
mc = min(length1,length2);
Curv = Curv_i(1:mc);
Mom = Mom_i(1:mc);
%
%---MOMENT-CURVATURE BILINEARIZATION---
[EI_eff,Mp,Curv_yield_eq] = equivalentyield_fun(Curv,Mom,Curv_yield,My,Curv_ult);
Curvbilin = [0 Curv_yield_eq Curv_ult];
Mombilin = [0 Mp Mp];
%
%---CURVATURE DUCTILITY---
Curvature_Ductility = Curv_ult/Curv_yield_eq;
%
%---PLOT M-C Curve---
figure;
164
plot(Curv_i,Mom_i,'k-
',Curv_crack,Mcr,'rx',Curv_yield,My,'ro',Curv_ult,M_ult,'r*');
hold on;
plot(Curvbilin,Mombilin,'b--');
hold on;
plot(Mne/EI_eff,Mne,'md');
hold on;
plot(Curv_yield_eq,Mp,'bs','MarkerEdgeColor','b','MarkerFaceColor','b');
grid on;
ylabel('Moment [kN-m]','FontSize',10);
xlabel('Curvature [1/m]','FontSize',10);
lgd = legend('Moment-Curvature Relation','Crack','Yield','Ultimate',...
'Moment-Curvature Bilinearization','Expected Nominal Moment',...
'Effective Yield Point','Location','best');
set(lgd,'color','none');
title('Moment - Curvature Relation','FontSize',12);
%
%---PLOT STRAIN PROFILE---
if dir == 1
figure;
subplot(2,2,1)
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_crack,H);
title('Strain Profile at Crack Point');
subplot(2,2,2);
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_yield,H);
title('Strain Profile at Yield Point');
subplot(2,2,3);
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_yield_eq,H);
title('Strain Profile at Equivalent Yield Point');
subplot(2,2,4);
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_ult,H);
title('Strain Profile at Ultimate Point');
else
figure;
subplot(2,2,1)
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_crack,B);
title('Strain Profile at Crack Point');
subplot(2,2,2);
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_yield,B);
title('Strain Profile at Yield Point');
subplot(2,2,3);
165
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_yield_eq,B);
title('Strain Profile at Equivalent Yield Point');
subplot(2,2,4);
strainprofile_fun(arm_uncon,arm_conf,arm_st,Cover_Strain,Core_Strain,Steel_Strain,
Curv_i,Curv_ult,B);
title('Strain Profile at Ultimate Point');
end
%
%---PLOT STRESS PROFILE---
if dir == 1
figure;
subplot(2,2,1)
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_crac
k,H);
title('Stress Profile at Crack Point');
subplot(2,2,2);
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_yiel
d,H);
title('Stress Profile at Yield Point');
subplot(2,2,3);
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_yiel
d_eq,H);
title('Stress Profile at Equivalent Yield Point');
subplot(2,2,4);
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_ult,
H);
title('Stress Profile at Ultimate Point');
else
figure;
subplot(2,2,1)
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_crac
k,B);
title('Stress Profile at Crack Point');
subplot(2,2,2);
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_yiel
d,B);
title('Stress Profile at Yield Point');
subplot(2,2,3);
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_yiel
d_eq,B);
title('Stress Profile at Equivalent Yield Point');
subplot(2,2,4);
166
stressprofile_fun(arm_uncon,arm_conf,arm_st,fc_uncon,fc_conf,f_st,Curv_i,Curv_ult,
B);
title('Stress Profile at Ultimate Point');
end
%
%---MOMENT-ROTATION---
%---Plastic Hinge Length (Priestley et al.)
switch lower(bending)
case 'single'
LBE = Lc;
Lp = max(0.08*LBE+0.022*fy*Db,0.044*fy*Db); % Plastic hinge length
case 'double'
LBE = Lc/2;
Lp = max(0.08*LBE+0.022*fy*Db,0.044*fy*Db); % Plastic hinge length
otherwise
disp('bending should be specified as single or double');
end
%
%---Rotation (theta)
Theta_p = Lp/1e3*(Curv_ult-Curv_yield_eq); % plastic rotation
Theta_yield = Lp/1e3*Curv_yield_eq; % yield rotation
Theta_ult = Lp/1e3*Curv_ult; % ultimate rotation
Theta_20 = 1.2*Theta_p; % 0.2Mp rotation
Theta_50 = 1.5*Theta_p; % 0.5Mp rotation
CP = Theta_p;
LS = 0.75*(CP-Theta_yield)+Theta_yield;
IO = (LS-Theta_yield)/3+Theta_yield;
slope = (Mp-Mne)/(Theta_p-Theta_yield);
%
%---Plot M-Theta Curve
figure;
plot([0 Theta_yield Theta_p Theta_20 Theta_50],[0 Mne Mp 0.2*Mp 0.2*Mp],'k-s')
hold on;
plot(IO,(IO-Theta_yield)*slope+Mne,'k+');
hold on;
plot(LS,(LS-Theta_yield)*slope+Mne,'k+');
grid on;
ylabel('Moment [kN-m]','FontSize',10);
xlabel('\theta [rad]','FontSize',10);
legend('Moment - Rotation','Location','best');
title('Generalized Load-Deformation Relation','FontSize',12);
%
%---Displacement
Disp_yield= Curv_yield*(LBE/1e3)^2/3; % yield displacement
Disp_ult = Curv_ult*(LBE/1e3)^2/3; % ultimate displacement
Disp_20 = 1.2*Disp_ult; % ultimate displacement
Disp_50 = 1.5*Disp_ult; % ultimate displacement
167
% the method by increment the steel strain (z)
%
%
%---Area
Acover = sum(MULY(:,2)); % total area of cover
Acore = sum(MCLY(:,2)); % total area of core
Ast = sum(MLRY(:,2)); % total area of reinforcement
%
%---Full Compression (P=Pco: M=0,P>0)
Pco = (interp1(ecc_ma,fcc_ma,ecu)*(Acore-
Ast)+interp1(ecun_mu,fcun_mu,ecu)*Acover+fy*Ast)/1e3;
%
%---Full Tension (P=Pto: M=0,P<0)
Pto = (interp1(es,fs,fy/Es)*Ast)/1e3;
%
%---Interaction (M>0)
z = (-0.5:0.1:5)*fy/Es; % strain increment
if dir == 1
yc = (ecu./(ecu+z))*d; % vector of neutral axis
yc_curv = ecu./yc; % vector of curvature
Pni = zeros(1,size(z,2)); % pre-allocated vector of axial forces
Mni = zeros(1,size(z,2)); % pre-allocated vector of moments
for ii = 1:length(z)
%---Unconfined Segment
ec_pm_uncon = strain_fun(yc(ii),arm_uncon,yc_curv(ii));
fc_pm_uncon = stress_fun_interp(ecun_mu,fcun_mu,ec_pm_uncon,'unconfined');
F_pm_uncon = force_fun(fc_pm_uncon,MULY(:,2));
%---Confined Segment
ec_pm_conf = strain_fun(yc(ii),arm_conf,yc_curv(ii));
fc_pm_conf = stress_fun_interp(ecc_ma,fcc_ma,ec_pm_conf,'confined');
F_pm_conf = force_fun(fc_pm_conf,MCLY(:,2));
%---Reinforcement
es_pm_st = strain_fun(yc(ii),arm_st,yc_curv(ii));
f_pm_st = stress_fun_interp(es,fs,es_pm_st,'steel');
F_pm_st = pmsteelforce_fun(fco,f_pm_st,MLRY(:,2));
%---Pn,Mn
Pni(ii) = (sum(F_pm_uncon)+sum(F_pm_conf)+sum(F_pm_st))/1e3;
Mni(ii) = (sum((H/2-arm_uncon).*F_pm_uncon)+sum((H/2-arm_conf).*...
F_pm_conf)+sum((H/2-arm_st).*F_pm_st))./1e6;
end
else
xc = (ecu./(ecu+z))*d; % vector of neutral axis
xc_curv = ecu./xc; % vector of curvature
Pni = zeros(1,size(z,2)); % pre-allocated vector of axial forces
Mni = zeros(1,size(z,2)); % pre-allocated vector of moments
for ii = 1:length(z)
%---Unconfined Segment
ec_pm_uncon = strain_fun(xc(ii),arm_uncon,xc_curv(ii));
fc_pm_uncon = stress_fun_interp(ecun_mu,fcun_mu,ec_pm_uncon,'unconfined');
F_pm_uncon = force_fun(fc_pm_uncon,MULX(:,2));
%---Confined Segment
ec_pm_conf = strain_fun(xc(ii),arm_conf,xc_curv(ii));
fc_pm_conf = stress_fun_interp(ecc_ma,fcc_ma,ec_pm_conf,'confined');
168
F_pm_conf = force_fun(fc_pm_conf,MCLX(:,2));
%---Reinforcement
es_pm_st = strain_fun(xc(ii),arm_st,xc_curv(ii));
f_pm_st = stress_fun_interp(es,fs,es_pm_st,'steel');
F_pm_st = pmsteelforce_fun(fco,f_pm_st,MLRX(:,2));
%---Pn,Mn
Pni(ii) = (sum(F_pm_uncon)+sum(F_pm_conf)+sum(F_pm_st))/1e3;
Mni(ii) = (sum((B/2-arm_uncon).*F_pm_uncon)+sum((B/2-arm_conf).*...
F_pm_conf)+sum((B/2-arm_st).*F_pm_st))./1e6;
end
end
%
P_curve = [Pco Pni -Pto]; % axial forces interaction data
M_curve = [0 Mni 0]; % moment interaction data
P_bal = Pni(Mni==max(Mni)); % axial force at balanced failure
M_bal = max(Mni); % moment at balanced failure
M_0 = interp1(P_curve,M_curve,0); % moment at P=0
%
%---Pushover Data (PMM-Interaction Curves) --> for input in MIDAS CIVIL Hinges
%---Compression (try 4 point from the compression limit zone)
PMc_A = InterX([M_curve;P_curve],[0,M_bal;P_bal+0.2*(Pco-P_bal),P_bal+0.2*(Pco-
P_bal)]);
PMc_B = InterX([M_curve;P_curve],[0,M_bal;P_bal+0.4*(Pco-P_bal),P_bal+0.4*(Pco-
P_bal)]);
PMc_C = InterX([M_curve;P_curve],[0,M_bal;P_bal+0.6*(Pco-P_bal),P_bal+0.6*(Pco-
P_bal)]);
PMc_D = InterX([M_curve;P_curve],[0,M_bal;P_bal+0.8*(Pco-P_bal),P_bal+0.8*(Pco-
P_bal)]);
%---Tension (try 4 point from the tension limit zone)
PMt_A = InterX([M_curve;P_curve],[0,M_bal;-Pto+0.2*(Pto+P_bal),-
Pto+0.2*(Pto+P_bal)]);
PMt_B = InterX([M_curve;P_curve],[0,M_bal;-Pto+0.4*(Pto+P_bal),-
Pto+0.4*(Pto+P_bal)]);
PMt_C = InterX([M_curve;P_curve],[0,M_bal;-Pto+0.6*(Pto+P_bal),-
Pto+0.6*(Pto+P_bal)]);
PMt_D = InterX([M_curve;P_curve],[0,M_bal;-Pto+0.8*(Pto+P_bal),-
Pto+0.8*(Pto+P_bal)]);
PM_Interaction = [[0,Pco];PMc_D';PMc_C';PMc_B';PMc_A';M_bal,P_bal;PMt_D';...
PMt_C';PMt_B';PMt_A';[0,-Pto]];
PM_Interaction_ratio =
[PM_Interaction(1:end,1)/M_bal,PM_Interaction(1:end,2)/Pco];
%
%---Plot PMM Interaction Diagram
figure;
%plot(M_curve,P_curve,'*','MarkerIndices',1:length(M_curve));
%hold on;
plot(M_curve,P_curve,'k-',0,Pco,'rx',M_bal,P_bal,'r+',M_0,0,'ro',0,-Pto,'rx');
hold on;
plot(PM_Interaction(1:end,1),PM_Interaction(1:end,2));
hold on;
plot(PMc_A(1,1),PMc_A(2,1),'bo',PMt_A(1,1),PMt_A(2,1),'bx');
hold on;
plot(PMc_B(1,1),PMc_B(2,1),'mo',PMt_B(1,1),PMt_B(2,1),'mx');
169
hold on;
plot(PMc_C(1,1),PMc_C(2,1),'ko',PMt_C(1,1),PMt_C(2,1),'kx');
hold on;
plot(PMc_D(1,1),PMc_D(2,1),'go',PMt_D(1,1),PMt_D(2,1),'gx');
grid on;
ylabel('Pn [kN]','FontSize',10);
xlabel('Mn [kN-m]','FontSize',10);
lgd = legend('PM Interaction Curve','Full Compression','Balanced','at P=0',...
'Full Tension','Pushover/NLTHA PM Interaction
Curve','A(c)','A(t)','B(c)','B(t)','C(c)',...
'C(t)','D(c)','D(t)','Location','southeastoutside');
title(lgd,'Legend:');
title('P-M Interaction Diagram','FontSize',12);
170
tcj = 50; % jacket clear cover (mm)
%
%-----------------------Jacket Reinforcement Details----------------------%
Dbj = 32; % longitudinal bar diameter (mm)
dtj = 16; % transverse/confining bar diameter (mm)
sj = 200; % vertical spacing of hoops (mm)
scj = sj-dtj; % clear vertical spacing between hoop bars (mm)
ncxj = 2; % total # of leg confinement parallel in x-dir
ncyj = 2; % total # of leg confinement parallel in y-dir
nlxj = [33; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2;...
2; 2; 2; 2; 2; 2; 2; 33]; % # of bars in each layer x-dir
nlyj = [29; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2;...
2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 2; 29]; % # of bars in each layer y-dir
%
%--Clear transverse spacing between adjacent longitudinal jacketing bars--%
wx_j = 3304; % clear x-dir (one side)
wy_j = 3804; % clear y-dir (one side)
%
dels = 1e-5; % delta strain for material (depending on the number of
decimals of fy/Es)
%
%-------------------------Initial Loading---------------------------------%
Pj = P; % external axial load (N)
pier_disp_maj = 0.274/2; % if double-curvature should divide by 2(m)
pier_disp_min = 0.525/2; % if double-curvature should divide by 2(m)
if dir == 1
%Mi = caltrans_fun(Curv,Mom,Lp,Curv_yield_eq,LBE,pier_disp_maj); % (kN-m)
Mi = 55030; %from non-linear static analysis with pier disp (kN-m)
else
%Mi = caltrans_fun(Curv,Mom,Lp,Curv_yield_eq,LBE,pier_disp_min); % (kN-m)
Mi = 49460; %from non-linear static analysis with pier disp (kN-m)
end
%
%--------------------------Interface Slip---------------------------------%
consider_slip = input('Consider Slip: 1 (Yes) or 2 (No)? ');
if consider_slip == 1
slip_ratio = input('Please Define Slip Ratio (from: >0 to 1): ');
elseif consider_slip == 2
slip_ratio = 1;
else
disp('error in defining slip ratio');
end
%
%-------------------------------End of input------------------------------%
function [] = LRP_Jacketing()
% This function returns the longitudinal reinforcement position of jacket
%
global Hj Bj tcj Dbj dtj nlxj nlyj LRPJ
%
171
nDb = sum(nlxj); % # of longitudinal bars
ctol = tcj+dtj+Dbj/2; % distance from edge of concrete section to center bar
LRPJ = zeros(nDb,3);
m=1;
for j=1:length(nlyj) % # of bar layers in x-dir
for i=1:nlyj(j,1)
LRPJ(m,1)= ctol+(i-1)*((Bj-2*ctol)/(nlyj(j,1)-1));
m=m+1;
end
end
m=1;
for j=1:length(nlxj) % # of bar layers in y-dir
for i=1:nlxj(j,1)
LRPJ(m,2)= ctol+(i-1)*((Hj-2*ctol)/(nlxj(j,1)-1));
m=m+1;
end
end
LRPJ(:,2)=sort(LRPJ(:,2));
for j=1:nDb
LRPJ(:,3)=Dbj;
end
end
172
xmax3 = tj+tcj+dtj/2;
ymax3 = tcj+dtj/2;
nulx3 = nulx1; % # of unconfined layers in x-dir
nuly3 = nuly1; % # of unconfined layers in y-dir
[Ucoord3, Aui3] = sectionmesh_fun(xmin3,ymin3,xmax3,ymax3,nulx3,nuly3);
%---cover_4
xmin4 = tj+tcj+dtj/2;
ymin4 = 0;
xmax4 = twj-tcj-dtj/2;
ymax4 = tcj+dtj/2;
nulx4 = 10; % # of unconfined layers in x-dir
nuly4 = 2; % # of unconfined layers in y-dir
[Ucoord4, Aui4] = sectionmesh_fun(xmin4,ymin4,xmax4,ymax4,nulx4,nuly4);
%---cover_5
xmin5 = twj-tcj-dtj/2;
ymin5 = 0;
xmax5 = twj;
ymax5 = tcj+dtj/2;
nulx5 = nulx1; % # of unconfined layers in x-dir
nuly5 = nuly1; % # of unconfined layers in y-dir
[Ucoord5, Aui5] = sectionmesh_fun(xmin5,ymin5,xmax5,ymax5,nulx5,nuly5);
%---cover_6
xmin6 = twj;
ymin6 = 0;
xmax6 = Bo+twj;
ymax6 = tcj+dtj/2;
nulx6 = 80; % # of unconfined layers in x-dir
nuly6 = 2; % # of unconfined layers in y-dir
[Ucoord6, Aui6] = sectionmesh_fun(xmin6,ymin6,xmax6,ymax6,nulx6,nuly6);
%---cover_7
xmin7 = Bo+twj;
ymin7 = 0;
xmax7 = Bo+twj+tcj+dtj/2;
ymax7 = tcj+dtj/2;
nulx7 = nulx1; % # of unconfined layers in x-dir
nuly7 = nuly1; % # of unconfined layers in y-dir
[Ucoord7, Aui7] = sectionmesh_fun(xmin7,ymin7,xmax7,ymax7,nulx7,nuly7);
%---cover_8
xmin8 = Bo+twj+tcj+dtj/2;
ymin8 = 0;
xmax8 = Bj-tj-tcj-dtj/2;
ymax8 = tcj+dtj/2;
nulx8 = nulx4; % # of unconfined layers in x-dir
nuly8 = nuly4; % # of unconfined layers in y-dir
[Ucoord8, Aui8] = sectionmesh_fun(xmin8,ymin8,xmax8,ymax8,nulx8,nuly8);
%---cover_9
xmin9 = Bj-tj-tcj-dtj/2;
ymin9 = 0;
xmax9 = Bj-tj;
ymax9 = tcj+dtj/2;
nulx9 = nulx1; % # of unconfined layers in x-dir
nuly9 = nuly1; % # of unconfined layers in y-dir
[Ucoord9, Aui9] = sectionmesh_fun(xmin9,ymin9,xmax9,ymax9,nulx9,nuly9);
173
%---cover_10
xmin10 = Bj-tj;
ymin10 = 0;
xmax10 = Bj-tcj-dtj/2;
ymax10 = tcj+dtj/2;
nulx10 = nulx2; % # of unconfined layers in x-dir
nuly10 = nuly2; % # of unconfined layers in y-dir
[Ucoord10, Aui10] = sectionmesh_fun(xmin10,ymin10,xmax10,ymax10,nulx10,nuly10);
%---cover_11
xmin11 = Bj-tcj-dtj/2;
ymin11 = 0;
xmax11 = Bj;
ymax11 = tcj+dtj/2;
nulx11 = nulx1; % # of unconfined layers in x-dir
nuly11 = nuly1; % # of unconfined layers in y-dir
[Ucoord11, Aui11] = sectionmesh_fun(xmin11,ymin11,xmax11,ymax11,nulx11,nuly11);
%---cover_12
xmin12 = 0;
ymin12 = tcj+dtj/2;
xmax12 = tcj+dtj/2;
ymax12 = tj;
nulx12 = nulx1; % # of unconfined layers in x-dir
nuly12 = nulx2; % # of unconfined layers in y-dir
[Ucoord12, Aui12] = sectionmesh_fun(xmin12,ymin12,xmax12,ymax12,nulx12,nuly12);
%---cover_13
xmin13 = Bj-tcj-dtj/2;
ymin13 = tcj+dtj/2;
xmax13 = Bj;
ymax13 = tj;
nulx13 = nulx12; % # of unconfined layers in x-dir
nuly13 = nuly12; % # of unconfined layers in y-dir
[Ucoord13, Aui13] = sectionmesh_fun(xmin13,ymin13,xmax13,ymax13,nulx13,nuly13);
%---cover_14
xmin14 = 0;
ymin14 = tj;
xmax14 = tcj+dtj/2;
ymax14 = tj+tcj+dtj/2;
nulx14 = nulx1; % # of unconfined layers in x-dir
nuly14 = nuly1; % # of unconfined layers in y-dir
[Ucoord14, Aui14] = sectionmesh_fun(xmin14,ymin14,xmax14,ymax14,nulx14,nuly14);
%---cover_15
xmin15 = Bj-tcj-dtj/2;
ymin15 = tj;
xmax15 = Bj;
ymax15 = tj+tcj+dtj/2;
nulx15 = nulx1; % # of unconfined layers in x-dir
nuly15 = nuly1; % # of unconfined layers in y-dir
[Ucoord15, Aui15] = sectionmesh_fun(xmin15,ymin15,xmax15,ymax15,nulx15,nuly15);
%---cover_16
xmin16 = 0;
ymin16 = tj+tcj+dtj/2;
xmax16 = tcj+dtj/2;
ymax16 = twj-tcj-dtj/2;
174
nulx16 = nulx1; % # of unconfined layers in x-dir
nuly16 = nulx4; % # of unconfined layers in y-dir
[Ucoord16, Aui16] = sectionmesh_fun(xmin16,ymin16,xmax16,ymax16,nulx16,nuly16);
%---cover_17
xmin17 = Bj-tcj-dtj/2;
ymin17 = tj+tcj+dtj/2;
xmax17 = Bj;
ymax17 = twj-tcj-dtj/2;
nulx17 = nulx16; % # of unconfined layers in x-dir
nuly17 = nuly16; % # of unconfined layers in y-dir
[Ucoord17, Aui17] = sectionmesh_fun(xmin17,ymin17,xmax17,ymax17,nulx17,nuly17);
%---cover_18
xmin18 = 0;
ymin18 = twj-tcj-dtj/2;
xmax18 = tcj+dtj/2;
ymax18 = twj;
nulx18 = nulx1; % # of unconfined layers in x-dir
nuly18 = nuly1; % # of unconfined layers in y-dir
[Ucoord18, Aui18] = sectionmesh_fun(xmin18,ymin18,xmax18,ymax18,nulx18,nuly18);
%---cover_19
xmin19 = Bj-tcj-dtj/2;
ymin19 = twj-tcj-dtj/2;
xmax19 = Bj;
ymax19 = twj;
nulx19 = nulx1; % # of unconfined layers in x-dir
nuly19 = nuly1; % # of unconfined layers in y-dir
[Ucoord19, Aui19] = sectionmesh_fun(xmin19,ymin19,xmax19,ymax19,nulx19,nuly19);
%---cover_20
xmin20 = 0;
ymin20 = twj;
xmax20 = tcj+dtj/2;
ymax20 = Hj-twj;
nulx20 = nulx1; % # of unconfined layers in x-dir
nuly20 = 52; % # of unconfined layers in y-dir
[Ucoord20, Aui20] = sectionmesh_fun(xmin20,ymin20,xmax20,ymax20,nulx20,nuly20);
%---cover_21
xmin21 = Bj-tcj-dtj/2;
ymin21 = twj;
xmax21 = Bj;
ymax21 = Hj-twj;
nulx21 = nulx20; % # of unconfined layers in x-dir
nuly21 = nuly20; % # of unconfined layers in y-dir
[Ucoord21, Aui21] = sectionmesh_fun(xmin21,ymin21,xmax21,ymax21,nulx21,nuly21);
%---cover_22
xmin22 = 0;
ymin22 = Hj-twj;
xmax22 = tcj+dtj/2;
ymax22 = Hj-twj+tcj+dtj/2;
nulx22 = nulx1; % # of unconfined layers in x-dir
nuly22 = nuly1; % # of unconfined layers in y-dir
[Ucoord22, Aui22] = sectionmesh_fun(xmin22,ymin22,xmax22,ymax22,nulx22,nuly22);
%---cover_23
xmin23 = Bj-tcj-dtj/2;
175
ymin23 = Hj-twj;
xmax23 = Bj;
ymax23 = Hj-twj+tcj+dtj/2;
nulx23 = nulx1; % # of unconfined layers in x-dir
nuly23 = nuly1; % # of unconfined layers in y-dir
[Ucoord23, Aui23] = sectionmesh_fun(xmin23,ymin23,xmax23,ymax23,nulx23,nuly23);
%---cover_24
xmin24 = 0;
ymin24 = Hj-twj+tcj++dtj/2;
xmax24 = tcj+dtj/2;
ymax24 = Hj-tj-tcj-dtj/2;
nulx24 = nulx16; % # of unconfined layers in x-dir
nuly24 = nuly16; % # of unconfined layers in y-dir
[Ucoord24, Aui24] = sectionmesh_fun(xmin24,ymin24,xmax24,ymax24,nulx24,nuly24);
%---cover_25
xmin25 = Bj-tcj-dtj/2;
ymin25 = Hj-twj+tcj++dtj/2;
xmax25 = Bj;
ymax25 = Hj-tj-tcj-dtj/2;
nulx25 = nulx24; % # of unconfined layers in x-dir
nuly25 = nuly24; % # of unconfined layers in y-dir
[Ucoord25, Aui25] = sectionmesh_fun(xmin25,ymin25,xmax25,ymax25,nulx25,nuly25);
%---cover_26
xmin26 = 0;
ymin26 = Hj-tj-tcj-dtj/2;
xmax26 = tcj+dtj/2;
ymax26 = Hj-tj;
nulx26 = nulx1; % # of unconfined layers in x-dir
nuly26 = nuly1; % # of unconfined layers in y-dir
[Ucoord26, Aui26] = sectionmesh_fun(xmin26,ymin26,xmax26,ymax26,nulx26,nuly26);
%---cover_27
xmin27 = Bj-tcj-dtj/2;
ymin27 = Hj-tj-tcj-dtj/2;
xmax27 = Bj;
ymax27 = Hj-tj;
nulx27 = nulx1; % # of unconfined layers in x-dir
nuly27 = nuly1; % # of unconfined layers in y-dir
[Ucoord27, Aui27] = sectionmesh_fun(xmin27,ymin27,xmax27,ymax27,nulx27,nuly27);
%---cover_28
xmin28 = 0;
ymin28 = Hj-tj;
xmax28 = tcj+dtj/2;
ymax28 = Hj-tcj-dtj/2;
nulx28 = nulx12; % # of unconfined layers in x-dir
nuly28 = nuly12; % # of unconfined layers in y-dir
[Ucoord28, Aui28] = sectionmesh_fun(xmin28,ymin28,xmax28,ymax28,nulx28,nuly28);
%---cover_29
xmin29 = Bj-tcj-dtj/2;
ymin29 = Hj-tj;
xmax29 = Bj;
ymax29 = Hj-tcj-dtj/2;
nulx29 = nulx28; % # of unconfined layers in x-dir
nuly29 = nuly28; % # of unconfined layers in y-dir
176
[Ucoord29, Aui29] = sectionmesh_fun(xmin29,ymin29,xmax29,ymax29,nulx29,nuly29);
%---cover_30
xmin30 = 0;
ymin30 = Hj-tcj-dtj/2;
xmax30 = tcj+dtj/2;
ymax30 = Hj;
nulx30 = nulx1; % # of unconfined layers in x-dir
nuly30 = nuly1; % # of unconfined layers in y-dir
[Ucoord30, Aui30] = sectionmesh_fun(xmin30,ymin30,xmax30,ymax30,nulx30,nuly30);
%---cover_31
xmin31 = tcj+dtj/2;
ymin31 = Hj-tcj-dtj/2;
xmax31 = tj;
ymax31 = Hj;
nulx31 = nulx2; % # of unconfined layers in x-dir
nuly31 = nuly2; % # of unconfined layers in y-dir
[Ucoord31, Aui31] = sectionmesh_fun(xmin31,ymin31,xmax31,ymax31,nulx31,nuly31);
%---cover_32
xmin32 = tj;
ymin32 = Hj-tcj-dtj/2;
xmax32 = tj+tcj+dtj/2;
ymax32 = Hj;
nulx32 = nulx1; % # of unconfined layers in x-dir
nuly32 = nuly1; % # of unconfined layers in y-dir
[Ucoord32, Aui32] = sectionmesh_fun(xmin32,ymin32,xmax32,ymax32,nulx32,nuly32);
%---cover_33
xmin33 = tj+tcj+dtj/2;
ymin33 = Hj-tcj-dtj/2;
xmax33 = twj-tcj-dtj/2;
ymax33 = Hj;
nulx33 = nulx4; % # of unconfined layers in x-dir
nuly33 = nuly4; % # of unconfined layers in y-dir
[Ucoord33, Aui33] = sectionmesh_fun(xmin33,ymin33,xmax33,ymax33,nulx33,nuly33);
%---cover_34
xmin34 = twj-tcj-dtj/2;
ymin34 = Hj-tcj-dtj/2;
xmax34 = twj;
ymax34 = Hj;
nulx34 = nulx1; % # of unconfined layers in x-dir
nuly34 = nuly1; % # of unconfined layers in y-dir
[Ucoord34, Aui34] = sectionmesh_fun(xmin34,ymin34,xmax34,ymax34,nulx34,nuly34);
%---cover_35
xmin35 = twj;
ymin35 = Hj-tcj-dtj/2;
xmax35 = Bo+twj;
ymax35 = Hj;
nulx35 = nulx6; % # of unconfined layers in x-dir
nuly35 = nuly6; % # of unconfined layers in y-dir
[Ucoord35, Aui35] = sectionmesh_fun(xmin35,ymin35,xmax35,ymax35,nulx35,nuly35);
%---cover_36
xmin36 = Bo+twj;
ymin36 = Hj-tcj-dtj/2;
xmax36 = Bo+twj+tcj+dtj/2;
177
ymax36 = Hj;
nulx36 = nulx1; % # of unconfined layers in x-dir
nuly36 = nuly1; % # of unconfined layers in y-dir
[Ucoord36, Aui36] = sectionmesh_fun(xmin36,ymin36,xmax36,ymax36,nulx36,nuly36);
%---cover_37
xmin37 = Bo+twj+tcj+dtj/2;
ymin37 = Hj-tcj-dtj/2;
xmax37 = Bj-tj-tcj-dtj/2;
ymax37 = Hj;
nulx37 = nulx8; % # of unconfined layers in x-dir
nuly37 = nuly8; % # of unconfined layers in y-dir
[Ucoord37, Aui37] = sectionmesh_fun(xmin37,ymin37,xmax37,ymax37,nulx37,nuly37);
%---cover_38
xmin38 = Bj-tj-tcj-dtj/2;
ymin38 = Hj-tcj-dtj/2;
xmax38 = Bj-tj;
ymax38 = Hj;
nulx38 = nulx1; % # of unconfined layers in x-dir
nuly38 = nuly1; % # of unconfined layers in y-dir
[Ucoord38, Aui38] = sectionmesh_fun(xmin38,ymin38,xmax38,ymax38,nulx38,nuly38);
%---cover_39
xmin39 = Bj-tj;
ymin39 = Hj-tcj-dtj/2;
xmax39 = Bj-tcj-dtj/2;
ymax39 = Hj;
nulx39 = nulx10; % # of unconfined layers in x-dir
nuly39 = nuly10; % # of unconfined layers in y-dir
[Ucoord39, Aui39] = sectionmesh_fun(xmin39,ymin39,xmax39,ymax39,nulx39,nuly39);
%---cover_40
xmin40 = Bj-tcj-dtj/2;
ymin40 = Hj-tcj-dtj/2;
xmax40 = Bj;
ymax40 = Hj;
nulx40 = nuly1; % # of unconfined layers in x-dir
nuly40 = nulx1; % # of unconfined layers in y-dir
[Ucoord40, Aui40] = sectionmesh_fun(xmin40,ymin40,xmax40,ymax40,nulx40,nuly40);
%
Ucoordj = [Ucoord1; Ucoord2; Ucoord3; Ucoord4; Ucoord5; Ucoord6; Ucoord7;...
Ucoord8; Ucoord9; Ucoord10; Ucoord11; Ucoord12; Ucoord13; Ucoord14;...
Ucoord15; Ucoord16; Ucoord17; Ucoord18; Ucoord19; Ucoord20; Ucoord21;...
Ucoord22; Ucoord23; Ucoord24; Ucoord25; Ucoord26; Ucoord27; Ucoord28;...
Ucoord29; Ucoord30; Ucoord31; Ucoord32; Ucoord33; Ucoord34; Ucoord35;...
Ucoord36; Ucoord37; Ucoord38; Ucoord39; Ucoord40];
Auij = [Aui1; Aui2; Aui3; Aui4; Aui5; Aui6; Aui7; Aui8; Aui9; Aui10;...
Aui11; Aui12; Aui13; Aui14; Aui15; Aui16; Aui17; Aui18; Aui19; Aui20;...
Aui21; Aui22; Aui23; Aui24; Aui25; Aui26; Aui27; Aui28; Aui29; Aui30;...
Aui31; Aui32; Aui33; Aui34; Aui35; Aui36; Aui37; Aui38; Aui39; Aui40];
[MULXj,MULYj] = mcl(Ucoordj,Auij);
%
%---Confined Layers---
%---Inner Jacket
%---inner jacket_1
xmin41 = xmin2;
178
ymin41 = ymin12;
xmax41 = xmax2;
ymax41 = ymax12;
njlx1 = nulx2; % # of core layers in x-dir
njly1 = nuly12; % # of core layers in x-dir
[Ccoordj1, Acij1] = sectionmesh_fun(xmin41,ymin41,xmax41,ymax41,njlx1,njly1);
%---inner jacket_2
xmin42 = xmin3;
ymin42 = ymin12;
xmax42 = xmax3;
ymax42 = ymax12;
njlx2 = nulx3; % # of core layers in x-dir
njly2 = nuly12; % # of core layers in x-dir
[Ccoordj2, Acij2] = sectionmesh_fun(xmin42,ymin42,xmax42,ymax42,njlx2,njly2);
%---inner jacket_3
xmin43 = xmin4;
ymin43 = ymin12;
xmax43 = xmax4;
ymax43 = ymax12;
njlx3 = nulx4; % # of core layers in x-dir
njly3 = nuly12; % # of core layers in x-dir
[Ccoordj3, Acij3] = sectionmesh_fun(xmin43,ymin43,xmax43,ymax43,njlx3,njly3);
%---inner jacket_4
xmin44 = xmin5;
ymin44 = ymin12;
xmax44 = xmax5;
ymax44 = ymax12;
njlx4 = nulx5; % # of core layers in x-dir
njly4 = nuly12; % # of core layers in x-dir
[Ccoordj4, Acij4] = sectionmesh_fun(xmin44,ymin44,xmax44,ymax44,njlx4,njly4);
%---inner jacket_5
xmin45 = xmin6;
ymin45 = ymin12;
xmax45 = xmax6;
ymax45 = ymax12;
njlx5 = nulx6; % # of core layers in x-dir
njly5 = nuly12; % # of core layers in x-dir
[Ccoordj5, Acij5] = sectionmesh_fun(xmin45,ymin45,xmax45,ymax45,njlx5,njly5);
%---inner jacket_6
xmin46 = xmin7;
ymin46 = ymin12;
xmax46 = xmax7;
ymax46 = ymax12;
njlx6 = nulx7; % # of core layers in x-dir
njly6 = nuly12; % # of core layers in x-dir
[Ccoordj6, Acij6] = sectionmesh_fun(xmin46,ymin46,xmax46,ymax46,njlx6,njly6);
%---inner jacket_7
xmin47 = xmin8;
ymin47 = ymin12;
xmax47 = xmax8;
ymax47 = ymax12;
njlx7 = nulx8; % # of core layers in x-dir
njly7 = nuly12; % # of core layers in x-dir
179
[Ccoordj7, Acij7] = sectionmesh_fun(xmin47,ymin47,xmax47,ymax47,njlx7,njly7);
%---inner jacket_8
xmin48 = xmin9;
ymin48 = ymin12;
xmax48 = xmax9;
ymax48 = ymax12;
njlx8 = nulx9; % # of core layers in x-dir
njly8 = nuly12; % # of core layers in x-dir
[Ccoordj8, Acij8] = sectionmesh_fun(xmin48,ymin48,xmax48,ymax48,njlx8,njly8);
%---inner jacket_9
xmin49 = xmin10;
ymin49 = ymin12;
xmax49 = xmax10;
ymax49 = ymax12;
njlx9 = nulx10; % # of core layers in x-dir
njly9 = nuly12; % # of core layers in x-dir
[Ccoordj9, Acij9] = sectionmesh_fun(xmin49,ymin49,xmax49,ymax49,njlx9,njly9);
%---inner jacket_10
xmin50 = xmin2;
ymin50 = ymin14;
xmax50 = xmax2;
ymax50 = ymax14;
njlx10 = nulx2; % # of core layers in x-dir
njly10 = nuly14; % # of core layers in x-dir
[Ccoordj10, Acij10] = sectionmesh_fun(xmin50,ymin50,xmax50,ymax50,njlx10,njly10);
%---inner jacket_11
xmin51 = xmin10;
ymin51 = ymin14;
xmax51 = xmax10;
ymax51 = ymax14;
njlx11 = nulx10; % # of core layers in x-dir
njly11 = nuly14; % # of core layers in x-dir
[Ccoordj11, Acij11] = sectionmesh_fun(xmin51,ymin51,xmax51,ymax51,njlx11,njly11);
%---inner jacket_12
xmin52 = xmin2;
ymin52 = ymin16;
xmax52 = xmax2;
ymax52 = ymax16;
njlx12 = nulx2; % # of core layers in x-dir
njly12 = nuly16; % # of core layers in x-dir
[Ccoordj12, Acij12] = sectionmesh_fun(xmin52,ymin52,xmax52,ymax52,njlx12,njly12);
%---inner jacket_13
xmin53 = xmin10;
ymin53 = ymin16;
xmax53 = xmax10;
ymax53 = ymax16;
njlx13 = nulx10; % # of core layers in x-dir
njly13 = nuly16; % # of core layers in x-dir
[Ccoordj13, Acij13] = sectionmesh_fun(xmin53,ymin53,xmax53,ymax53,njlx13,njly13);
%---inner jacket_14
xmin54 = xmin2;
ymin54 = ymin18;
xmax54 = xmax2;
180
ymax54 = ymax18;
njlx14 = nulx2; % # of core layers in x-dir
njly14 = nuly18; % # of core layers in x-dir
[Ccoordj14, Acij14] = sectionmesh_fun(xmin54,ymin54,xmax54,ymax54,njlx14,njly14);
%---inner jacket_15
xmin55 = xmin10;
ymin55 = ymin18;
xmax55 = xmax10;
ymax55 = ymax18;
njlx15 = nulx10; % # of core layers in x-dir
njly15 = nuly18; % # of core layers in x-dir
[Ccoordj15, Acij15] = sectionmesh_fun(xmin55,ymin55,xmax55,ymax55,njlx15,njly15);
%---inner jacket_16
xmin56 = xmin2;
ymin56 = ymin20;
xmax56 = xmax2;
ymax56 = ymax20;
njlx16 = nulx2; % # of core layers in x-dir
njly16 = nuly20; % # of core layers in x-dir
[Ccoordj16, Acij16] = sectionmesh_fun(xmin56,ymin56,xmax56,ymax56,njlx16,njly16);
%---inner jacket_17
xmin57 = xmin10;
ymin57 = ymin20;
xmax57 = xmax10;
ymax57 = ymax20;
njlx17 = nulx10; % # of core layers in x-dir
njly17 = nuly20; % # of core layers in x-dir
[Ccoordj17, Acij17] = sectionmesh_fun(xmin57,ymin57,xmax57,ymax57,njlx17,njly17);
%---inner jacket_18
xmin58 = xmin2;
ymin58 = ymin22;
xmax58 = xmax2;
ymax58 = ymax22;
njlx18 = nulx2; % # of core layers in x-dir
njly18 = nuly22; % # of core layers in x-dir
[Ccoordj18, Acij18] = sectionmesh_fun(xmin58,ymin58,xmax58,ymax58,njlx18,njly18);
%---inner jacket_19
xmin59 = xmin10;
ymin59 = ymin22;
xmax59 = xmax10;
ymax59 = ymax22;
njlx19 = nulx10; % # of core layers in x-dir
njly19 = nuly22; % # of core layers in x-dir
[Ccoordj19, Acij19] = sectionmesh_fun(xmin59,ymin59,xmax59,ymax59,njlx19,njly19);
%---inner jacket_20
xmin60 = xmin2;
ymin60 = ymin24;
xmax60 = xmax2;
ymax60 = ymax24;
njlx20 = nulx2; % # of core layers in x-dir
njly20 = nuly24; % # of core layers in x-dir
[Ccoordj20, Acij20] = sectionmesh_fun(xmin60,ymin60,xmax60,ymax60,njlx20,njly20);
%---inner jacket_21
181
xmin61 = xmin10;
ymin61 = ymin24;
xmax61 = xmax10;
ymax61 = ymax24;
njlx21 = nulx10; % # of core layers in x-dir
njly21 = nuly24; % # of core layers in x-dir
[Ccoordj21, Acij21] = sectionmesh_fun(xmin61,ymin61,xmax61,ymax61,njlx21,njly21);
%---inner jacket_22
xmin62 = xmin2;
ymin62 = ymin26;
xmax62 = xmax2;
ymax62 = ymax26;
njlx22 = nulx2; % # of core layers in x-dir
njly22 = nuly26; % # of core layers in x-dir
[Ccoordj22, Acij22] = sectionmesh_fun(xmin62,ymin62,xmax62,ymax62,njlx22,njly22);
%---inner jacket_23
xmin63 = xmin10;
ymin63 = ymin26;
xmax63 = xmax10;
ymax63 = ymax26;
njlx23 = nulx10; % # of core layers in x-dir
njly23 = nuly26; % # of core layers in x-dir
[Ccoordj23, Acij23] = sectionmesh_fun(xmin63,ymin63,xmax63,ymax63,njlx23,njly23);
%---inner jacket_24
xmin64 = xmin2;
ymin64 = ymin28;
xmax64 = xmax2;
ymax64 = ymax28;
njlx24 = nulx2; % # of core layers in x-dir
njly24 = nuly28; % # of core layers in x-dir
[Ccoordj24, Acij24] = sectionmesh_fun(xmin64,ymin64,xmax64,ymax64,njlx24,njly24);
%---inner jacket_25
xmin65 = xmin3;
ymin65 = ymin28;
xmax65 = xmax3;
ymax65 = ymax28;
njlx25 = nulx3; % # of core layers in x-dir
njly25 = nuly28; % # of core layers in x-dir
[Ccoordj25, Acij25] = sectionmesh_fun(xmin65,ymin65,xmax65,ymax65,njlx25,njly25);
%---inner jacket_26
xmin66 = xmin4;
ymin66 = ymin28;
xmax66 = xmax4;
ymax66 = ymax28;
njlx26 = nulx4; % # of core layers in x-dir
njly26 = nuly28; % # of core layers in x-dir
[Ccoordj26, Acij26] = sectionmesh_fun(xmin66,ymin66,xmax66,ymax66,njlx26,njly26);
%---inner jacket_27
xmin67 = xmin5;
ymin67 = ymin28;
xmax67 = xmax5;
ymax67 = ymax28;
njlx27 = nulx5; % # of core layers in x-dir
182
njly27 = nuly28; % # of core layers in x-dir
[Ccoordj27, Acij27] = sectionmesh_fun(xmin67,ymin67,xmax67,ymax67,njlx27,njly27);
%---inner jacket_28
xmin68 = xmin6;
ymin68 = ymin28;
xmax68 = xmax6;
ymax68 = ymax28;
njlx28 = nulx6; % # of core layers in x-dir
njly28 = nuly28; % # of core layers in x-dir
[Ccoordj28, Acij28] = sectionmesh_fun(xmin68,ymin68,xmax68,ymax68,njlx28,njly28);
%---inner jacket_29
xmin69 = xmin7;
ymin69 = ymin28;
xmax69 = xmax7;
ymax69 = ymax28;
njlx29 = nulx7; % # of core layers in x-dir
njly29 = nuly28; % # of core layers in x-dir
[Ccoordj29, Acij29] = sectionmesh_fun(xmin69,ymin69,xmax69,ymax69,njlx29,njly29);
%---inner jacket_30
xmin70 = xmin8;
ymin70 = ymin28;
xmax70 = xmax8;
ymax70 = ymax28;
njlx30 = nulx8; % # of core layers in x-dir
njly30 = nuly28; % # of core layers in x-dir
[Ccoordj30, Acij30] = sectionmesh_fun(xmin70,ymin70,xmax70,ymax70,njlx30,njly30);
%---inner jacket_31
xmin71 = xmin9;
ymin71 = ymin28;
xmax71 = xmax9;
ymax71 = ymax28;
njlx31 = nulx9; % # of core layers in x-dir
njly31 = nuly28; % # of core layers in x-dir
[Ccoordj31, Acij31] = sectionmesh_fun(xmin71,ymin71,xmax71,ymax71,njlx31,njly31);
%---inner jacket_32
xmin72 = xmin10;
ymin72 = ymin28;
xmax72 = xmax10;
ymax72 = ymax28;
njlx32 = nulx10; % # of core layers in x-dir
njly32 = nuly28; % # of core layers in x-dir
[Ccoordj32, Acij32] = sectionmesh_fun(xmin72,ymin72,xmax72,ymax72,njlx32,njly32);
%
Ccoordj = [Ccoordj1; Ccoordj2; Ccoordj3; Ccoordj4; Ccoordj5; Ccoordj6;
Ccoordj7;...
Ccoordj8; Ccoordj9; Ccoordj10; Ccoordj11; Ccoordj12; Ccoordj13; Ccoordj14;...
Ccoordj15; Ccoordj16; Ccoordj17; Ccoordj18; Ccoordj19; Ccoordj20;
Ccoordj21;...
Ccoordj22; Ccoordj23; Ccoordj24; Ccoordj25; Ccoordj26; Ccoordj27;
Ccoordj28;...
Ccoordj29; Ccoordj30; Ccoordj31; Ccoordj32];
Acij = [Acij1; Acij2; Acij3; Acij4; Acij5; Acij6; Acij7; Acij8; Acij9;
Acij10;...
183
Acij11; Acij12; Acij13; Acij14; Acij15; Acij16; Acij17; Acij18; Acij19;
Acij20;...
Acij21; Acij22; Acij23; Acij24; Acij25; Acij26; Acij27; Acij28; Acij29;
Acij30;...
Acij31; Acij32];
[MCLXj,MCLYj] = mcl(Ccoordj,Acij);
%
%---REBAR LAYERS---
%---X-Dir
[MLRXj, MLRYj] = MLR(LRPJ,nlxj,nlyj);
%
x = [twj twj+Bo twj+Bo twj twj];
y = [twj twj twj+Ho twj+Ho twj];
figure; plot (x,y);
hold on;
x = [xmin1 xmax1 xmax1 xmin1 xmin1];
y = [ymin1 ymin1 ymax1 ymax1 ymin1];
plot (x,y);
hold on;
x = [xmin2 xmax2 xmax2 xmin2 xmin2];
y = [ymin2 ymin2 ymax2 ymax2 ymin2];
plot(x,y);
hold on;
x = [xmin3 xmax3 xmax3 xmin3 xmin3];
y = [ymin3 ymin3 ymax3 ymax3 ymin3];
plot(x,y);
hold on;
x = [xmin4 xmax4 xmax4 xmin4 xmin4];
y = [ymin4 ymin4 ymax4 ymax4 ymin4];
plot(x,y);
hold on;
x = [xmin5 xmax5 xmax5 xmin5 xmin5];
y = [ymin5 ymin5 ymax5 ymax5 ymin5];
plot(x,y);
hold on;
x = [xmin6 xmax6 xmax6 xmin6 xmin6];
y = [ymin6 ymin6 ymax6 ymax6 ymin6];
plot(x,y);
hold on;
x = [xmin7 xmax7 xmax7 xmin7 xmin7];
y = [ymin7 ymin7 ymax7 ymax7 ymin7];
plot(x,y);
hold on;
x = [xmin8 xmax8 xmax8 xmin8 xmin8];
y = [ymin8 ymin8 ymax8 ymax8 ymin8];
plot(x,y);
hold on;
x = [xmin9 xmax9 xmax9 xmin9 xmin9];
y = [ymin9 ymin9 ymax9 ymax9 ymin9];
plot(x,y);
hold on;
x = [xmin10 xmax10 xmax10 xmin10 xmin10];
y = [ymin10 ymin10 ymax10 ymax10 ymin10];
184
plot(x,y);
hold on;
x = [xmin11 xmax11 xmax11 xmin11 xmin11];
y = [ymin11 ymin11 ymax11 ymax11 ymin11];
plot(x,y);
hold on;
x = [xmin12 xmax12 xmax12 xmin12 xmin12];
y = [ymin12 ymin12 ymax12 ymax12 ymin12];
plot(x,y);
hold on;
x = [xmin13 xmax13 xmax13 xmin13 xmin13];
y = [ymin13 ymin13 ymax13 ymax13 ymin13];
plot(x,y);
hold on;
x = [xmin14 xmax14 xmax14 xmin14 xmin14];
y = [ymin14 ymin14 ymax14 ymax14 ymin14];
plot(x,y);
hold on;
x = [xmin15 xmax15 xmax15 xmin15 xmin15];
y = [ymin15 ymin15 ymax15 ymax15 ymin15];
plot(x,y);
hold on;
x = [xmin16 xmax16 xmax16 xmin16 xmin16];
y = [ymin16 ymin16 ymax16 ymax16 ymin16];
plot(x,y);
hold on;
x = [xmin17 xmax17 xmax17 xmin17 xmin17];
y = [ymin17 ymin17 ymax17 ymax17 ymin17];
plot(x,y);
hold on;
x = [xmin18 xmax18 xmax18 xmin18 xmin18];
y = [ymin18 ymin18 ymax18 ymax18 ymin18];
plot(x,y);
hold on;
x = [xmin19 xmax19 xmax19 xmin19 xmin19];
y = [ymin19 ymin19 ymax19 ymax19 ymin19];
plot(x,y);
hold on;
x = [xmin20 xmax20 xmax20 xmin20 xmin20];
y = [ymin20 ymin20 ymax20 ymax20 ymin20];
plot(x,y);
hold on;
x = [xmin21 xmax21 xmax21 xmin21 xmin21];
y = [ymin21 ymin21 ymax21 ymax21 ymin21];
plot(x,y);
hold on;
x = [xmin22 xmax22 xmax22 xmin22 xmin22];
y = [ymin22 ymin22 ymax22 ymax22 ymin22];
plot(x,y);
hold on;
x = [xmin23 xmax23 xmax23 xmin23 xmin23];
y = [ymin23 ymin23 ymax23 ymax23 ymin23];
plot(x,y);
185
hold on;
x = [xmin24 xmax24 xmax24 xmin24 xmin24];
y = [ymin24 ymin24 ymax24 ymax24 ymin24];
plot(x,y);
hold on;
x = [xmin25 xmax25 xmax25 xmin25 xmin25];
y = [ymin25 ymin25 ymax25 ymax25 ymin25];
plot(x,y);
hold on;
x = [xmin26 xmax26 xmax26 xmin26 xmin26];
y = [ymin26 ymin26 ymax26 ymax26 ymin26];
plot(x,y);
hold on;
x = [xmin27 xmax27 xmax27 xmin27 xmin27];
y = [ymin27 ymin27 ymax27 ymax27 ymin27];
plot(x,y);
hold on;
x = [xmin28 xmax28 xmax28 xmin28 xmin28];
y = [ymin28 ymin28 ymax28 ymax28 ymin28];
plot(x,y);
hold on;
x = [xmin29 xmax29 xmax29 xmin29 xmin29];
y = [ymin29 ymin29 ymax29 ymax29 ymin29];
plot(x,y);
hold on;
x = [xmin30 xmax30 xmax30 xmin30 xmin30];
y = [ymin30 ymin30 ymax30 ymax30 ymin30];
plot(x,y);
hold on;
x = [xmin31 xmax31 xmax31 xmin31 xmin31];
y = [ymin31 ymin31 ymax31 ymax31 ymin31];
plot(x,y);
hold on;
x = [xmin32 xmax32 xmax32 xmin32 xmin32];
y = [ymin32 ymin32 ymax32 ymax32 ymin32];
plot(x,y);
hold on;
x = [xmin33 xmax33 xmax33 xmin33 xmin33];
y = [ymin33 ymin33 ymax33 ymax33 ymin33];
plot(x,y);
hold on;
x = [xmin34 xmax34 xmax34 xmin34 xmin34];
y = [ymin34 ymin34 ymax34 ymax34 ymin34];
plot(x,y);
hold on;
x = [xmin35 xmax35 xmax35 xmin35 xmin35];
y = [ymin35 ymin35 ymax35 ymax35 ymin35];
plot(x,y);
hold on;
x = [xmin36 xmax36 xmax36 xmin36 xmin36];
y = [ymin36 ymin36 ymax36 ymax36 ymin36];
plot(x,y);
hold on;
186
x = [xmin37 xmax37 xmax37 xmin37 xmin37];
y = [ymin37 ymin37 ymax37 ymax37 ymin37];
plot(x,y);
hold on;
x = [xmin38 xmax38 xmax38 xmin38 xmin38];
y = [ymin38 ymin38 ymax38 ymax38 ymin38];
plot(x,y);
hold on;
x = [xmin39 xmax39 xmax39 xmin39 xmin39];
y = [ymin39 ymin39 ymax39 ymax39 ymin39];
plot(x,y);
hold on;
x = [xmin40 xmax40 xmax40 xmin40 xmin40];
y = [ymin40 ymin40 ymax40 ymax40 ymin40];
plot(x,y);
hold on;
x = [xmin41 xmax41 xmax41 xmin41 xmin41];
y = [ymin41 ymin41 ymax41 ymax41 ymin41];
plot(x,y);
hold on;
x = [xmin42 xmax42 xmax42 xmin42 xmin42];
y = [ymin42 ymin42 ymax42 ymax42 ymin42];
plot(x,y);
hold on;
x = [xmin43 xmax43 xmax43 xmin43 xmin43];
y = [ymin43 ymin43 ymax43 ymax43 ymin43];
plot(x,y);
hold on;
x = [xmin44 xmax44 xmax44 xmin44 xmin44];
y = [ymin44 ymin44 ymax44 ymax44 ymin44];
plot(x,y);
hold on;
x = [xmin45 xmax45 xmax45 xmin45 xmin45];
y = [ymin45 ymin45 ymax45 ymax45 ymin45];
plot(x,y);
hold on;
x = [xmin46 xmax46 xmax46 xmin46 xmin46];
y = [ymin46 ymin46 ymax46 ymax46 ymin46];
plot(x,y);
hold on;
x = [xmin47 xmax47 xmax47 xmin47 xmin47];
y = [ymin47 ymin47 ymax47 ymax47 ymin47];
plot(x,y);
hold on;
x = [xmin48 xmax48 xmax48 xmin48 xmin48];
y = [ymin48 ymin48 ymax48 ymax48 ymin48];
plot(x,y);
hold on;
x = [xmin49 xmax49 xmax49 xmin49 xmin49];
y = [ymin49 ymin49 ymax49 ymax49 ymin49];
plot(x,y);
hold on;
x = [xmin50 xmax50 xmax50 xmin50 xmin50];
187
y = [ymin50 ymin50 ymax50 ymax50 ymin50];
plot(x,y);
hold on;
x = [xmin51 xmax51 xmax51 xmin51 xmin51];
y = [ymin51 ymin51 ymax51 ymax51 ymin51];
plot(x,y);
hold on;
x = [xmin52 xmax52 xmax52 xmin52 xmin52];
y = [ymin52 ymin52 ymax52 ymax52 ymin52];
plot(x,y);
hold on;
x = [xmin53 xmax53 xmax53 xmin53 xmin53];
y = [ymin53 ymin53 ymax53 ymax53 ymin53];
plot(x,y);
hold on;
x = [xmin54 xmax54 xmax54 xmin54 xmin54];
y = [ymin54 ymin54 ymax54 ymax54 ymin54];
plot(x,y);
hold on;
x = [xmin55 xmax55 xmax55 xmin55 xmin55];
y = [ymin55 ymin55 ymax55 ymax55 ymin55];
plot(x,y);
hold on;
x = [xmin56 xmax56 xmax56 xmin56 xmin56];
y = [ymin56 ymin56 ymax56 ymax56 ymin56];
plot(x,y);
hold on;
x = [xmin57 xmax57 xmax57 xmin57 xmin57];
y = [ymin57 ymin57 ymax57 ymax57 ymin57];
plot(x,y);
hold on;
x = [xmin58 xmax58 xmax58 xmin58 xmin58];
y = [ymin58 ymin58 ymax58 ymax58 ymin58];
plot(x,y);
hold on;
x = [xmin59 xmax59 xmax59 xmin59 xmin59];
y = [ymin59 ymin59 ymax59 ymax59 ymin59];
plot(x,y);
hold on;
x = [xmin60 xmax60 xmax60 xmin60 xmin60];
y = [ymin60 ymin60 ymax60 ymax60 ymin60];
plot(x,y);
hold on;
x = [xmin61 xmax61 xmax61 xmin61 xmin61];
y = [ymin61 ymin61 ymax61 ymax61 ymin61];
plot(x,y);
hold on;
x = [xmin62 xmax62 xmax62 xmin62 xmin62];
y = [ymin62 ymin62 ymax62 ymax62 ymin62];
plot(x,y);
hold on;
x = [xmin63 xmax63 xmax63 xmin63 xmin63];
y = [ymin63 ymin63 ymax63 ymax63 ymin63];
188
plot(x,y);
hold on;
x = [xmin64 xmax64 xmax64 xmin64 xmin64];
y = [ymin64 ymin64 ymax64 ymax64 ymin64];
plot(x,y);
hold on;
x = [xmin65 xmax65 xmax65 xmin65 xmin65];
y = [ymin65 ymin65 ymax65 ymax65 ymin65];
plot(x,y);
hold on;
x = [xmin66 xmax66 xmax66 xmin66 xmin66];
y = [ymin66 ymin66 ymax66 ymax66 ymin66];
plot(x,y);
hold on;
x = [xmin67 xmax67 xmax67 xmin67 xmin67];
y = [ymin67 ymin67 ymax67 ymax67 ymin67];
plot(x,y);
hold on;
x = [xmin68 xmax68 xmax68 xmin68 xmin68];
y = [ymin68 ymin68 ymax68 ymax68 ymin68];
plot(x,y);
hold on;
x = [xmin69 xmax69 xmax69 xmin69 xmin69];
y = [ymin69 ymin69 ymax69 ymax69 ymin69];
plot(x,y);
hold on;
x = [xmin70 xmax70 xmax70 xmin70 xmin70];
y = [ymin70 ymin70 ymax70 ymax70 ymin70];
plot(x,y);
hold on;
x = [xmin71 xmax71 xmax71 xmin71 xmin71];
y = [ymin71 ymin71 ymax71 ymax71 ymin71];
plot(x,y);
hold on;
x = [xmin72 xmax72 xmax72 xmin72 xmin72];
y = [ymin72 ymin72 ymax72 ymax72 ymin72];
plot(x,y);
hold on;
[Xu1_,Yu1_]=ndgrid(xmin1:(xmax1-xmin1)/nulx1:xmax1,ymin1:(ymax1-
ymin1)/nuly1:ymax1);
[Xu2_,Yu2_]=ndgrid(xmin2:(xmax2-xmin2)/nulx2:xmax2,ymin2:(ymax2-
ymin2)/nuly2:ymax2);
[Xu3_,Yu3_]=ndgrid(xmin3:(xmax3-xmin3)/nulx3:xmax3,ymin3:(ymax3-
ymin3)/nuly3:ymax3);
[Xu4_,Yu4_]=ndgrid(xmin4:(xmax4-xmin4)/nulx4:xmax4,ymin4:(ymax4-
ymin4)/nuly4:ymax4);
[Xu5_,Yu5_]=ndgrid(xmin5:(xmax5-xmin5)/nulx5:xmax5,ymin5:(ymax5-
ymin5)/nuly5:ymax5);
[Xu6_,Yu6_]=ndgrid(xmin6:(xmax6-xmin6)/nulx6:xmax6,ymin6:(ymax6-
ymin6)/nuly6:ymax6);
[Xu7_,Yu7_]=ndgrid(xmin7:(xmax7-xmin7)/nulx7:xmax7,ymin7:(ymax7-
ymin7)/nuly7:ymax7);
189
[Xu8_,Yu8_]=ndgrid(xmin8:(xmax8-xmin8)/nulx8:xmax8,ymin8:(ymax8-
ymin8)/nuly8:ymax8);
[Xu9_,Yu9_]=ndgrid(xmin9:(xmax9-xmin9)/nulx9:xmax9,ymin9:(ymax9-
ymin9)/nuly9:ymax9);
[Xu10_,Yu10_]=ndgrid(xmin10:(xmax10-xmin10)/nulx10:xmax10,ymin10:(ymax10-
ymin10)/nuly10:ymax10);
[Xu11_,Yu11_]=ndgrid(xmin11:(xmax11-xmin11)/nulx11:xmax11,ymin11:(ymax11-
ymin11)/nuly11:ymax11);
[Xu12_,Yu12_]=ndgrid(xmin12:(xmax12-xmin12)/nulx12:xmax12,ymin12:(ymax12-
ymin12)/nuly12:ymax12);
[Xu13_,Yu13_]=ndgrid(xmin13:(xmax13-xmin13)/nulx13:xmax13,ymin13:(ymax13-
ymin13)/nuly13:ymax13);
[Xu14_,Yu14_]=ndgrid(xmin14:(xmax14-xmin14)/nulx14:xmax14,ymin14:(ymax14-
ymin14)/nuly14:ymax14);
[Xu15_,Yu15_]=ndgrid(xmin15:(xmax15-xmin15)/nulx15:xmax15,ymin15:(ymax15-
ymin15)/nuly15:ymax15);
[Xu16_,Yu16_]=ndgrid(xmin16:(xmax16-xmin16)/nulx16:xmax16,ymin16:(ymax16-
ymin16)/nuly16:ymax16);
[Xu17_,Yu17_]=ndgrid(xmin17:(xmax17-xmin17)/nulx17:xmax17,ymin17:(ymax17-
ymin17)/nuly17:ymax17);
[Xu18_,Yu18_]=ndgrid(xmin18:(xmax18-xmin18)/nulx18:xmax18,ymin18:(ymax18-
ymin18)/nuly18:ymax18);
[Xu19_,Yu19_]=ndgrid(xmin19:(xmax19-xmin19)/nulx19:xmax19,ymin19:(ymax19-
ymin19)/nuly19:ymax19);
[Xu20_,Yu20_]=ndgrid(xmin20:(xmax20-xmin20)/nulx20:xmax20,ymin20:(ymax20-
ymin20)/nuly20:ymax20);
[Xu21_,Yu21_]=ndgrid(xmin21:(xmax21-xmin21)/nulx21:xmax21,ymin21:(ymax21-
ymin21)/nuly21:ymax21);
[Xu22_,Yu22_]=ndgrid(xmin22:(xmax22-xmin22)/nulx22:xmax22,ymin22:(ymax22-
ymin22)/nuly22:ymax22);
[Xu23_,Yu23_]=ndgrid(xmin23:(xmax23-xmin23)/nulx23:xmax23,ymin23:(ymax23-
ymin23)/nuly23:ymax23);
[Xu24_,Yu24_]=ndgrid(xmin24:(xmax24-xmin24)/nulx24:xmax24,ymin24:(ymax24-
ymin24)/nuly24:ymax24);
[Xu25_,Yu25_]=ndgrid(xmin25:(xmax25-xmin25)/nulx25:xmax25,ymin25:(ymax25-
ymin25)/nuly25:ymax25);
[Xu26_,Yu26_]=ndgrid(xmin26:(xmax26-xmin26)/nulx26:xmax26,ymin26:(ymax26-
ymin26)/nuly26:ymax26);
[Xu27_,Yu27_]=ndgrid(xmin27:(xmax27-xmin27)/nulx27:xmax27,ymin27:(ymax27-
ymin27)/nuly27:ymax27);
[Xu28_,Yu28_]=ndgrid(xmin28:(xmax28-xmin28)/nulx28:xmax28,ymin28:(ymax28-
ymin28)/nuly28:ymax28);
[Xu29_,Yu29_]=ndgrid(xmin29:(xmax29-xmin29)/nulx29:xmax29,ymin29:(ymax29-
ymin29)/nuly29:ymax29);
[Xu30_,Yu30_]=ndgrid(xmin30:(xmax30-xmin30)/nulx30:xmax30,ymin30:(ymax30-
ymin30)/nuly30:ymax30);
[Xu31_,Yu31_]=ndgrid(xmin31:(xmax31-xmin31)/nulx31:xmax31,ymin31:(ymax31-
ymin31)/nuly31:ymax31);
[Xu32_,Yu32_]=ndgrid(xmin32:(xmax32-xmin32)/nulx32:xmax32,ymin32:(ymax32-
ymin32)/nuly32:ymax32);
[Xu33_,Yu33_]=ndgrid(xmin33:(xmax33-xmin33)/nulx33:xmax33,ymin33:(ymax33-
ymin33)/nuly33:ymax33);
190
[Xu34_,Yu34_]=ndgrid(xmin34:(xmax34-xmin34)/nulx34:xmax34,ymin34:(ymax34-
ymin34)/nuly34:ymax34);
[Xu35_,Yu35_]=ndgrid(xmin35:(xmax35-xmin35)/nulx35:xmax35,ymin35:(ymax35-
ymin35)/nuly35:ymax35);
[Xu36_,Yu36_]=ndgrid(xmin36:(xmax36-xmin36)/nulx36:xmax36,ymin36:(ymax36-
ymin36)/nuly36:ymax36);
[Xu37_,Yu37_]=ndgrid(xmin37:(xmax37-xmin37)/nulx37:xmax37,ymin37:(ymax37-
ymin37)/nuly37:ymax37);
[Xu38_,Yu38_]=ndgrid(xmin38:(xmax38-xmin38)/nulx38:xmax38,ymin38:(ymax38-
ymin38)/nuly38:ymax38);
[Xu39_,Yu39_]=ndgrid(xmin39:(xmax39-xmin39)/nulx39:xmax39,ymin39:(ymax39-
ymin39)/nuly39:ymax39);
[Xu40_,Yu40_]=ndgrid(xmin40:(xmax40-xmin40)/nulx40:xmax40,ymin40:(ymax40-
ymin40)/nuly40:ymax40);
[Xj1_,Yj1_]=ndgrid(xmin41:(xmax41-xmin41)/njlx1:xmax41,ymin41:(ymax41-
ymin41)/njly1:ymax41);
[Xj2_,Yj2_]=ndgrid(xmin42:(xmax42-xmin42)/njlx2:xmax42,ymin42:(ymax42-
ymin42)/njly2:ymax42);
[Xj3_,Yj3_]=ndgrid(xmin43:(xmax43-xmin43)/njlx3:xmax43,ymin43:(ymax43-
ymin43)/njly3:ymax43);
[Xj4_,Yj4_]=ndgrid(xmin44:(xmax44-xmin44)/njlx4:xmax44,ymin44:(ymax44-
ymin44)/njly4:ymax44);
[Xj5_,Yj5_]=ndgrid(xmin45:(xmax45-xmin45)/njlx5:xmax45,ymin45:(ymax45-
ymin45)/njly5:ymax45);
[Xj6_,Yj6_]=ndgrid(xmin46:(xmax46-xmin46)/njlx6:xmax46,ymin46:(ymax46-
ymin46)/njly6:ymax46);
[Xj7_,Yj7_]=ndgrid(xmin47:(xmax47-xmin47)/njlx7:xmax47,ymin47:(ymax47-
ymin47)/njly7:ymax47);
[Xj8_,Yj8_]=ndgrid(xmin48:(xmax48-xmin48)/njlx8:xmax48,ymin48:(ymax48-
ymin48)/njly8:ymax48);
[Xj9_,Yj9_]=ndgrid(xmin49:(xmax49-xmin49)/njlx9:xmax49,ymin49:(ymax49-
ymin49)/njly9:ymax49);
[Xj10_,Yj10_]=ndgrid(xmin50:(xmax50-xmin50)/njlx10:xmax50,ymin50:(ymax50-
ymin50)/njly10:ymax50);
[Xj11_,Yj11_]=ndgrid(xmin51:(xmax51-xmin51)/njlx11:xmax51,ymin51:(ymax51-
ymin51)/njly11:ymax51);
[Xj12_,Yj12_]=ndgrid(xmin52:(xmax52-xmin52)/njlx12:xmax52,ymin52:(ymax52-
ymin52)/njly12:ymax52);
[Xj13_,Yj13_]=ndgrid(xmin53:(xmax53-xmin53)/njlx13:xmax53,ymin53:(ymax53-
ymin53)/njly13:ymax53);
[Xj14_,Yj14_]=ndgrid(xmin54:(xmax54-xmin54)/njlx14:xmax54,ymin54:(ymax54-
ymin54)/njly14:ymax54);
[Xj15_,Yj15_]=ndgrid(xmin55:(xmax55-xmin55)/njlx15:xmax55,ymin55:(ymax55-
ymin55)/njly15:ymax55);
[Xj16_,Yj16_]=ndgrid(xmin56:(xmax56-xmin56)/njlx16:xmax56,ymin56:(ymax56-
ymin56)/njly16:ymax56);
[Xj17_,Yj17_]=ndgrid(xmin57:(xmax57-xmin57)/njlx17:xmax57,ymin57:(ymax57-
ymin57)/njly17:ymax57);
[Xj18_,Yj18_]=ndgrid(xmin58:(xmax58-xmin58)/njlx18:xmax58,ymin58:(ymax58-
ymin58)/njly18:ymax58);
[Xj19_,Yj19_]=ndgrid(xmin59:(xmax59-xmin59)/njlx19:xmax59,ymin59:(ymax59-
ymin59)/njly19:ymax59);
191
[Xj20_,Yj20_]=ndgrid(xmin60:(xmax60-xmin60)/njlx20:xmax60,ymin60:(ymax60-
ymin60)/njly20:ymax60);
[Xj21_,Yj21_]=ndgrid(xmin61:(xmax61-xmin61)/njlx21:xmax61,ymin61:(ymax61-
ymin61)/njly21:ymax61);
[Xj22_,Yj22_]=ndgrid(xmin62:(xmax62-xmin62)/njlx22:xmax62,ymin62:(ymax62-
ymin62)/njly22:ymax62);
[Xj23_,Yj23_]=ndgrid(xmin63:(xmax63-xmin63)/njlx23:xmax63,ymin63:(ymax63-
ymin63)/njly23:ymax63);
[Xj24_,Yj24_]=ndgrid(xmin64:(xmax64-xmin64)/njlx24:xmax64,ymin64:(ymax64-
ymin64)/njly24:ymax64);
[Xj25_,Yj25_]=ndgrid(xmin65:(xmax65-xmin65)/njlx25:xmax65,ymin65:(ymax65-
ymin65)/njly25:ymax65);
[Xj26_,Yj26_]=ndgrid(xmin66:(xmax66-xmin66)/njlx26:xmax66,ymin66:(ymax66-
ymin66)/njly26:ymax66);
[Xj27_,Yj27_]=ndgrid(xmin67:(xmax67-xmin67)/njlx27:xmax67,ymin67:(ymax67-
ymin67)/njly27:ymax67);
[Xj28_,Yj28_]=ndgrid(xmin68:(xmax68-xmin68)/njlx28:xmax68,ymin68:(ymax68-
ymin68)/njly28:ymax68);
[Xj29_,Yj29_]=ndgrid(xmin69:(xmax69-xmin69)/njlx29:xmax69,ymin69:(ymax69-
ymin69)/njly29:ymax69);
[Xj30_,Yj30_]=ndgrid(xmin70:(xmax70-xmin70)/njlx30:xmax70,ymin70:(ymax70-
ymin70)/njly30:ymax70);
[Xj31_,Yj31_]=ndgrid(xmin71:(xmax71-xmin71)/njlx31:xmax71,ymin71:(ymax71-
ymin71)/njly31:ymax71);
[Xj32_,Yj32_]=ndgrid(xmin72:(xmax72-xmin72)/njlx32:xmax72,ymin72:(ymax72-
ymin72)/njly32:ymax72);
%
for n = 1:numel(Xu1_) %// loop over vertical lines
plot([Xu1_(n) Xu1_(n)], [Yu1_(1) Yu1_(end)],'m:');
end
for n = 1:numel(Yu1_) %// loop over horizontal lines
plot([Xu1_(1) Xu1_(end)], [Yu1_(n) Yu1_(n)],'m:');
end
for n = 1:numel(Xu2_) %// loop over vertical lines
plot([Xu2_(n) Xu2_(n)], [Yu2_(1) Yu2_(end)],'m:');
end
for n = 1:numel(Yu2_) %// loop over horizontal lines
plot([Xu2_(1) Xu2_(end)], [Yu2_(n) Yu2_(n)],'m:');
end
for n = 1:numel(Xu3_) %// loop over vertical lines
plot([Xu3_(n) Xu3_(n)], [Yu3_(1) Yu3_(end)],'m:');
end
for n = 1:numel(Yu3_) %// loop over horizontal lines
plot([Xu3_(1) Xu3_(end)], [Yu3_(n) Yu3_(n)],'m:');
end
for n = 1:numel(Xu4_) %// loop over vertical lines
plot([Xu4_(n) Xu4_(n)], [Yu4_(1) Yu4_(end)],'m:');
end
for n = 1:numel(Yu4_) %// loop over horizontal lines
plot([Xu4_(1) Xu4_(end)], [Yu4_(n) Yu4_(n)],'m:');
end
for n = 1:numel(Xu5_) %// loop over vertical lines
plot([Xu5_(n) Xu5_(n)], [Yu5_(1) Yu5_(end)],'m:');
192
end
for n = 1:numel(Yu5_) %// loop over horizontal lines
plot([Xu5_(1) Xu5_(end)], [Yu5_(n) Yu5_(n)],'m:');
end
for n = 1:numel(Xu6_) %// loop over vertical lines
plot([Xu6_(n) Xu6_(n)], [Yu6_(1) Yu6_(end)],'m:');
end
for n = 1:numel(Yu6_) %// loop over horizontal lines
plot([Xu6_(1) Xu6_(end)], [Yu6_(n) Yu6_(n)],'m:');
end
for n = 1:numel(Xu7_) %// loop over vertical lines
plot([Xu7_(n) Xu7_(n)], [Yu7_(1) Yu7_(end)],'m:');
end
for n = 1:numel(Yu7_) %// loop over horizontal lines
plot([Xu7_(1) Xu7_(end)], [Yu7_(n) Yu7_(n)],'m:');
end
for n = 1:numel(Xu8_) %// loop over vertical lines
plot([Xu8_(n) Xu8_(n)], [Yu8_(1) Yu8_(end)],'m:');
end
for n = 1:numel(Yu8_) %// loop over horizontal lines
plot([Xu8_(1) Xu8_(end)], [Yu8_(n) Yu8_(n)],'m:');
end
for n = 1:numel(Xu9_) %// loop over vertical lines
plot([Xu9_(n) Xu9_(n)], [Yu9_(1) Yu9_(end)],'m:');
end
for n = 1:numel(Yu9_) %// loop over horizontal lines
plot([Xu9_(1) Xu9_(end)], [Yu9_(n) Yu9_(n)],'m:');
end
for n = 1:numel(Xu10_) %// loop over vertical lines
plot([Xu10_(n) Xu10_(n)], [Yu10_(1) Yu10_(end)],'m:');
end
for n = 1:numel(Yu10_) %// loop over horizontal lines
plot([Xu10_(1) Xu10_(end)], [Yu10_(n) Yu10_(n)],'m:');
end
for n = 1:numel(Xu11_) %// loop over vertical lines
plot([Xu11_(n) Xu11_(n)], [Yu11_(1) Yu11_(end)],'m:');
end
for n = 1:numel(Yu11_) %// loop over horizontal lines
plot([Xu11_(1) Xu11_(end)], [Yu11_(n) Yu11_(n)],'m:');
end
for n = 1:numel(Xu12_) %// loop over vertical lines
plot([Xu12_(n) Xu12_(n)], [Yu12_(1) Yu12_(end)],'m:');
end
for n = 1:numel(Yu12_) %// loop over horizontal lines
plot([Xu12_(1) Xu12_(end)], [Yu12_(n) Yu12_(n)],'m:');
end
for n = 1:numel(Xu13_) %// loop over vertical lines
plot([Xu13_(n) Xu13_(n)], [Yu13_(1) Yu13_(end)],'m:');
end
for n = 1:numel(Yu13_) %// loop over horizontal lines
plot([Xu13_(1) Xu13_(end)], [Yu13_(n) Yu13_(n)],'m:');
end
for n = 1:numel(Xu14_) %// loop over vertical lines
193
plot([Xu14_(n) Xu14_(n)], [Yu14_(1) Yu14_(end)],'m:');
end
for n = 1:numel(Yu14_) %// loop over horizontal lines
plot([Xu14_(1) Xu14_(end)], [Yu14_(n) Yu14_(n)],'m:');
end
for n = 1:numel(Xu15_) %// loop over vertical lines
plot([Xu15_(n) Xu15_(n)], [Yu15_(1) Yu15_(end)],'m:');
end
for n = 1:numel(Yu15_) %// loop over horizontal lines
plot([Xu15_(1) Xu15_(end)], [Yu15_(n) Yu15_(n)],'m:');
end
for n = 1:numel(Xu16_) %// loop over vertical lines
plot([Xu16_(n) Xu16_(n)], [Yu16_(1) Yu16_(end)],'m:');
end
for n = 1:numel(Yu16_) %// loop over horizontal lines
plot([Xu16_(1) Xu16_(end)], [Yu16_(n) Yu16_(n)],'m:');
end
for n = 1:numel(Xu17_) %// loop over vertical lines
plot([Xu17_(n) Xu17_(n)], [Yu17_(1) Yu17_(end)],'m:');
end
for n = 1:numel(Yu17_) %// loop over horizontal lines
plot([Xu17_(1) Xu17_(end)], [Yu17_(n) Yu17_(n)],'m:');
end
for n = 1:numel(Xu18_) %// loop over vertical lines
plot([Xu18_(n) Xu18_(n)], [Yu18_(1) Yu18_(end)],'m:');
end
for n = 1:numel(Yu18_) %// loop over horizontal lines
plot([Xu18_(1) Xu18_(end)], [Yu18_(n) Yu18_(n)],'m:');
end
for n = 1:numel(Xu19_) %// loop over vertical lines
plot([Xu19_(n) Xu19_(n)], [Yu19_(1) Yu19_(end)],'m:');
end
for n = 1:numel(Yu19_) %// loop over horizontal lines
plot([Xu19_(1) Xu19_(end)], [Yu19_(n) Yu19_(n)],'m:');
end
for n = 1:numel(Xu20_) %// loop over vertical lines
plot([Xu20_(n) Xu20_(n)], [Yu20_(1) Yu20_(end)],'m:');
end
for n = 1:numel(Yu20_) %// loop over horizontal lines
plot([Xu20_(1) Xu20_(end)], [Yu20_(n) Yu20_(n)],'m:');
end
for n = 1:numel(Xu21_) %// loop over vertical lines
plot([Xu21_(n) Xu21_(n)], [Yu21_(1) Yu21_(end)],'m:');
end
for n = 1:numel(Yu21_) %// loop over horizontal lines
plot([Xu21_(1) Xu21_(end)], [Yu21_(n) Yu21_(n)],'m:');
end
for n = 1:numel(Xu22_) %// loop over vertical lines
plot([Xu22_(n) Xu22_(n)], [Yu22_(1) Yu22_(end)],'m:');
end
for n = 1:numel(Yu22_) %// loop over horizontal lines
plot([Xu22_(1) Xu22_(end)], [Yu22_(n) Yu22_(n)],'m:');
end
194
for n = 1:numel(Xu23_) %// loop over vertical lines
plot([Xu23_(n) Xu23_(n)], [Yu23_(1) Yu23_(end)],'m:');
end
for n = 1:numel(Yu23_) %// loop over horizontal lines
plot([Xu23_(1) Xu23_(end)], [Yu23_(n) Yu23_(n)],'m:');
end
for n = 1:numel(Xu24_) %// loop over vertical lines
plot([Xu24_(n) Xu24_(n)], [Yu24_(1) Yu24_(end)],'m:');
end
for n = 1:numel(Yu24_) %// loop over horizontal lines
plot([Xu24_(1) Xu24_(end)], [Yu24_(n) Yu24_(n)],'m:');
end
for n = 1:numel(Xu25_) %// loop over vertical lines
plot([Xu25_(n) Xu25_(n)], [Yu25_(1) Yu25_(end)],'m:');
end
for n = 1:numel(Yu25_) %// loop over horizontal lines
plot([Xu25_(1) Xu25_(end)], [Yu25_(n) Yu25_(n)],'m:');
end
for n = 1:numel(Xu26_) %// loop over vertical lines
plot([Xu26_(n) Xu26_(n)], [Yu26_(1) Yu26_(end)],'m:');
end
for n = 1:numel(Yu26_) %// loop over horizontal lines
plot([Xu26_(1) Xu26_(end)], [Yu26_(n) Yu26_(n)],'m:');
end
for n = 1:numel(Xu27_) %// loop over vertical lines
plot([Xu27_(n) Xu27_(n)], [Yu27_(1) Yu27_(end)],'m:');
end
for n = 1:numel(Yu27_) %// loop over horizontal lines
plot([Xu27_(1) Xu27_(end)], [Yu27_(n) Yu27_(n)],'m:');
end
for n = 1:numel(Xu28_) %// loop over vertical lines
plot([Xu28_(n) Xu28_(n)], [Yu28_(1) Yu28_(end)],'m:');
end
for n = 1:numel(Yu28_) %// loop over horizontal lines
plot([Xu28_(1) Xu28_(end)], [Yu28_(n) Yu28_(n)],'m:');
end
for n = 1:numel(Xu29_) %// loop over vertical lines
plot([Xu29_(n) Xu29_(n)], [Yu29_(1) Yu29_(end)],'m:');
end
for n = 1:numel(Yu29_) %// loop over horizontal lines
plot([Xu29_(1) Xu29_(end)], [Yu29_(n) Yu29_(n)],'m:');
end
for n = 1:numel(Xu30_) %// loop over vertical lines
plot([Xu30_(n) Xu30_(n)], [Yu30_(1) Yu30_(end)],'m:');
end
for n = 1:numel(Yu30_) %// loop over horizontal lines
plot([Xu30_(1) Xu30_(end)], [Yu30_(n) Yu30_(n)],'m:');
end
for n = 1:numel(Xu31_) %// loop over vertical lines
plot([Xu31_(n) Xu31_(n)], [Yu31_(1) Yu31_(end)],'m:');
end
for n = 1:numel(Yu31_) %// loop over horizontal lines
plot([Xu31_(1) Xu31_(end)], [Yu31_(n) Yu31_(n)],'m:');
195
end
for n = 1:numel(Xu32_) %// loop over vertical lines
plot([Xu32_(n) Xu32_(n)], [Yu32_(1) Yu32_(end)],'m:');
end
for n = 1:numel(Yu32_) %// loop over horizontal lines
plot([Xu32_(1) Xu32_(end)], [Yu32_(n) Yu32_(n)],'m:');
end
for n = 1:numel(Xu33_) %// loop over vertical lines
plot([Xu33_(n) Xu33_(n)], [Yu33_(1) Yu33_(end)],'m:');
end
for n = 1:numel(Yu33_) %// loop over horizontal lines
plot([Xu33_(1) Xu33_(end)], [Yu33_(n) Yu33_(n)],'m:');
end
for n = 1:numel(Xu34_) %// loop over vertical lines
plot([Xu34_(n) Xu34_(n)], [Yu34_(1) Yu34_(end)],'m:');
end
for n = 1:numel(Yu34_) %// loop over horizontal lines
plot([Xu34_(1) Xu34_(end)], [Yu34_(n) Yu34_(n)],'m:');
end
for n = 1:numel(Xu35_) %// loop over vertical lines
plot([Xu35_(n) Xu35_(n)], [Yu35_(1) Yu35_(end)],'m:');
end
for n = 1:numel(Yu35_) %// loop over horizontal lines
plot([Xu35_(1) Xu35_(end)], [Yu35_(n) Yu35_(n)],'m:');
end
for n = 1:numel(Xu36_) %// loop over vertical lines
plot([Xu36_(n) Xu36_(n)], [Yu36_(1) Yu36_(end)],'m:');
end
for n = 1:numel(Yu36_) %// loop over horizontal lines
plot([Xu36_(1) Xu36_(end)], [Yu36_(n) Yu36_(n)],'m:');
end
for n = 1:numel(Xu37_) %// loop over vertical lines
plot([Xu37_(n) Xu37_(n)], [Yu37_(1) Yu37_(end)],'m:');
end
for n = 1:numel(Yu37_) %// loop over horizontal lines
plot([Xu37_(1) Xu37_(end)], [Yu37_(n) Yu37_(n)],'m:');
end
for n = 1:numel(Xu38_) %// loop over vertical lines
plot([Xu38_(n) Xu38_(n)], [Yu38_(1) Yu38_(end)],'m:');
end
for n = 1:numel(Yu38_) %// loop over horizontal lines
plot([Xu38_(1) Xu38_(end)], [Yu38_(n) Yu38_(n)],'m:');
end
for n = 1:numel(Xu39_) %// loop over vertical lines
plot([Xu39_(n) Xu39_(n)], [Yu39_(1) Yu39_(end)],'m:');
end
for n = 1:numel(Yu39_) %// loop over horizontal lines
plot([Xu39_(1) Xu39_(end)], [Yu39_(n) Yu39_(n)],'m:');
end
for n = 1:numel(Xu40_) %// loop over vertical lines
plot([Xu40_(n) Xu40_(n)], [Yu40_(1) Yu40_(end)],'m:');
end
for n = 1:numel(Yu40_) %// loop over horizontal lines
196
plot([Xu40_(1) Xu40_(end)], [Yu40_(n) Yu40_(n)],'m:');
end
for n = 1:numel(Xj1_) %// loop over vertical lines
plot([Xj1_(n) Xj1_(n)], [Yj1_(1) Yj1_(end)],'k:');
end
for n = 1:numel(Yj1_) %// loop over horizontal lines
plot([Xj1_(1) Xj1_(end)], [Yj1_(n) Yj1_(n)],'k:');
end
for n = 1:numel(Xj2_) %// loop over vertical lines
plot([Xj2_(n) Xj2_(n)], [Yj2_(1) Yj2_(end)],'k:');
end
for n = 1:numel(Yj2_) %// loop over horizontal lines
plot([Xj2_(1) Xj2_(end)], [Yj2_(n) Yj2_(n)],'k:');
end
for n = 1:numel(Xj3_) %// loop over vertical lines
plot([Xj3_(n) Xj3_(n)], [Yj3_(1) Yj3_(end)],'k:');
end
for n = 1:numel(Yj3_) %// loop over horizontal lines
plot([Xj3_(1) Xj3_(end)], [Yj3_(n) Yj3_(n)],'k:');
end
for n = 1:numel(Xj4_) %// loop over vertical lines
plot([Xj4_(n) Xj4_(n)], [Yj4_(1) Yj4_(end)],'k:');
end
for n = 1:numel(Yj4_) %// loop over horizontal lines
plot([Xj4_(1) Xj4_(end)], [Yj4_(n) Yj4_(n)],'k:');
end
for n = 1:numel(Xj5_) %// loop over vertical lines
plot([Xj5_(n) Xj5_(n)], [Yj5_(1) Yj5_(end)],'k:');
end
for n = 1:numel(Yj5_) %// loop over horizontal lines
plot([Xj5_(1) Xj5_(end)], [Yj5_(n) Yj5_(n)],'k:');
end
for n = 1:numel(Xj6_) %// loop over vertical lines
plot([Xj6_(n) Xj6_(n)], [Yj6_(1) Yj6_(end)],'k:');
end
for n = 1:numel(Yj6_) %// loop over horizontal lines
plot([Xj6_(1) Xj6_(end)], [Yj6_(n) Yj6_(n)],'k:');
end
for n = 1:numel(Xj7_) %// loop over vertical lines
plot([Xj7_(n) Xj7_(n)], [Yj7_(1) Yj7_(end)],'k:');
end
for n = 1:numel(Yj7_) %// loop over horizontal lines
plot([Xj7_(1) Xj7_(end)], [Yj7_(n) Yj7_(n)],'k:');
end
for n = 1:numel(Xj8_) %// loop over vertical lines
plot([Xj8_(n) Xj8_(n)], [Yj8_(1) Yj8_(end)],'k:');
end
for n = 1:numel(Yj8_) %// loop over horizontal lines
plot([Xj8_(1) Xj8_(end)], [Yj8_(n) Yj8_(n)],'k:');
end
for n = 1:numel(Xj9_) %// loop over vertical lines
plot([Xj9_(n) Xj9_(n)], [Yj9_(1) Yj9_(end)],'k:');
end
197
for n = 1:numel(Yj9_) %// loop over horizontal lines
plot([Xj9_(1) Xj9_(end)], [Yj9_(n) Yj9_(n)],'k:');
end
for n = 1:numel(Xj10_) %// loop over vertical lines
plot([Xj10_(n) Xj10_(n)], [Yj10_(1) Yj10_(end)],'k:');
end
for n = 1:numel(Yj10_) %// loop over horizontal lines
plot([Xj10_(1) Xj10_(end)], [Yj10_(n) Yj10_(n)],'k:');
end
for n = 1:numel(Xj11_) %// loop over vertical lines
plot([Xj11_(n) Xj11_(n)], [Yj11_(1) Yj11_(end)],'k:');
end
for n = 1:numel(Yj11_) %// loop over horizontal lines
plot([Xj11_(1) Xj11_(end)], [Yj11_(n) Yj11_(n)],'k:');
end
for n = 1:numel(Xj12_) %// loop over vertical lines
plot([Xj12_(n) Xj12_(n)], [Yj12_(1) Yj12_(end)],'k:');
end
for n = 1:numel(Yj12_) %// loop over horizontal lines
plot([Xj12_(1) Xj12_(end)], [Yj12_(n) Yj12_(n)],'k:');
end
for n = 1:numel(Xj13_) %// loop over vertical lines
plot([Xj13_(n) Xj13_(n)], [Yj13_(1) Yj13_(end)],'k:');
end
for n = 1:numel(Yj13_) %// loop over horizontal lines
plot([Xj13_(1) Xj13_(end)], [Yj13_(n) Yj13_(n)],'k:');
end
for n = 1:numel(Xj14_) %// loop over vertical lines
plot([Xj14_(n) Xj14_(n)], [Yj14_(1) Yj14_(end)],'k:');
end
for n = 1:numel(Yj14_) %// loop over horizontal lines
plot([Xj14_(1) Xj14_(end)], [Yj14_(n) Yj14_(n)],'k:');
end
for n = 1:numel(Xj15_) %// loop over vertical lines
plot([Xj15_(n) Xj15_(n)], [Yj15_(1) Yj15_(end)],'k:');
end
for n = 1:numel(Yj15_) %// loop over horizontal lines
plot([Xj15_(1) Xj15_(end)], [Yj15_(n) Yj15_(n)],'k:');
end
for n = 1:numel(Xj16_) %// loop over vertical lines
plot([Xj16_(n) Xj16_(n)], [Yj16_(1) Yj16_(end)],'k:');
end
for n = 1:numel(Yj16_) %// loop over horizontal lines
plot([Xj16_(1) Xj16_(end)], [Yj16_(n) Yj16_(n)],'k:');
end
for n = 1:numel(Xj17_) %// loop over vertical lines
plot([Xj17_(n) Xj17_(n)], [Yj17_(1) Yj17_(end)],'k:');
end
for n = 1:numel(Yj17_) %// loop over horizontal lines
plot([Xj17_(1) Xj17_(end)], [Yj17_(n) Yj17_(n)],'k:');
end
for n = 1:numel(Xj18_) %// loop over vertical lines
plot([Xj18_(n) Xj18_(n)], [Yj18_(1) Yj18_(end)],'k:');
198
end
for n = 1:numel(Yj18_) %// loop over horizontal lines
plot([Xj18_(1) Xj18_(end)], [Yj18_(n) Yj18_(n)],'k:');
end
for n = 1:numel(Xj19_) %// loop over vertical lines
plot([Xj19_(n) Xj19_(n)], [Yj19_(1) Yj19_(end)],'k:');
end
for n = 1:numel(Yj19_) %// loop over horizontal lines
plot([Xj19_(1) Xj19_(end)], [Yj19_(n) Yj19_(n)],'k:');
end
for n = 1:numel(Xj20_) %// loop over vertical lines
plot([Xj20_(n) Xj20_(n)], [Yj20_(1) Yj20_(end)],'k:');
end
for n = 1:numel(Yj20_) %// loop over horizontal lines
plot([Xj20_(1) Xj20_(end)], [Yj20_(n) Yj20_(n)],'k:');
end
for n = 1:numel(Xj21_) %// loop over vertical lines
plot([Xj21_(n) Xj21_(n)], [Yj21_(1) Yj21_(end)],'k:');
end
for n = 1:numel(Yj21_) %// loop over horizontal lines
plot([Xj21_(1) Xj21_(end)], [Yj21_(n) Yj21_(n)],'k:');
end
for n = 1:numel(Xj22_) %// loop over vertical lines
plot([Xj22_(n) Xj22_(n)], [Yj22_(1) Yj22_(end)],'k:');
end
for n = 1:numel(Yj22_) %// loop over horizontal lines
plot([Xj22_(1) Xj22_(end)], [Yj22_(n) Yj22_(n)],'k:');
end
for n = 1:numel(Xj23_) %// loop over vertical lines
plot([Xj23_(n) Xj23_(n)], [Yj23_(1) Yj23_(end)],'k:');
end
for n = 1:numel(Yj23_) %// loop over horizontal lines
plot([Xj23_(1) Xj23_(end)], [Yj23_(n) Yj23_(n)],'k:');
end
for n = 1:numel(Xj24_) %// loop over vertical lines
plot([Xj24_(n) Xj24_(n)], [Yj24_(1) Yj24_(end)],'k:');
end
for n = 1:numel(Yj24_) %// loop over horizontal lines
plot([Xj24_(1) Xj24_(end)], [Yj24_(n) Yj24_(n)],'k:');
end
for n = 1:numel(Xj25_) %// loop over vertical lines
plot([Xj25_(n) Xj25_(n)], [Yj25_(1) Yj25_(end)],'k:');
end
for n = 1:numel(Yj25_) %// loop over horizontal lines
plot([Xj25_(1) Xj25_(end)], [Yj25_(n) Yj25_(n)],'k:');
end
for n = 1:numel(Xj26_) %// loop over vertical lines
plot([Xj26_(n) Xj26_(n)], [Yj26_(1) Yj26_(end)],'k:');
end
for n = 1:numel(Yj26_) %// loop over horizontal lines
plot([Xj26_(1) Xj26_(end)], [Yj26_(n) Yj26_(n)],'k:');
end
for n = 1:numel(Xj27_) %// loop over vertical lines
199
plot([Xj27_(n) Xj27_(n)], [Yj27_(1) Yj27_(end)],'k:');
end
for n = 1:numel(Yj27_) %// loop over horizontal lines
plot([Xj27_(1) Xj27_(end)], [Yj27_(n) Yj27_(n)],'k:');
end
for n = 1:numel(Xj28_) %// loop over vertical lines
plot([Xj28_(n) Xj28_(n)], [Yj28_(1) Yj28_(end)],'k:');
end
for n = 1:numel(Yj28_) %// loop over horizontal lines
plot([Xj28_(1) Xj28_(end)], [Yj28_(n) Yj28_(n)],'k:');
end
for n = 1:numel(Xj29_) %// loop over vertical lines
plot([Xj29_(n) Xj29_(n)], [Yj29_(1) Yj29_(end)],'k:');
end
for n = 1:numel(Yj29_) %// loop over horizontal lines
plot([Xj29_(1) Xj29_(end)], [Yj29_(n) Yj29_(n)],'k:');
end
for n = 1:numel(Xj30_) %// loop over vertical lines
plot([Xj30_(n) Xj30_(n)], [Yj30_(1) Yj30_(end)],'k:');
end
for n = 1:numel(Yj30_) %// loop over horizontal lines
plot([Xj30_(1) Xj30_(end)], [Yj30_(n) Yj30_(n)],'k:');
end
for n = 1:numel(Xj31_) %// loop over vertical lines
plot([Xj31_(n) Xj31_(n)], [Yj31_(1) Yj31_(end)],'k:');
end
for n = 1:numel(Yj31_) %// loop over horizontal lines
plot([Xj31_(1) Xj31_(end)], [Yj31_(n) Yj31_(n)],'k:');
end
for n = 1:numel(Xj32_) %// loop over vertical lines
plot([Xj32_(n) Xj32_(n)], [Yj32_(1) Yj32_(end)],'k:');
end
for n = 1:numel(Yj32_) %// loop over horizontal lines
plot([Xj32_(1) Xj32_(end)], [Yj32_(n) Yj32_(n)],'k:');
end
%
offset_x = [tj 0 0]; % offset in x dir position of existing LRP
offset_y = [0 tj 0]; % offset in x dir position of existing LRP
scatter(LRP(:,1)+offset_x(1),LRP(:,2)+offset_y(2),Db,'MarkerEdgeColor','k');
hold on
scatter(LRPJ(:,1),LRPJ(:,2),Dbj,'filled','k');
axis equal;
% This script generate the stress-strain for confined concrete with jacket
%
%
% Unconfined Existing Section
[ecun_mu,fcun_mu] = Manderun(eco,espall,fco,Ec,dels);
%
200
% Unconfined Jacketing Section
[ecun_muj,fcun_muj] = Manderun(eco,espall,fco_j,Ec_j,dels);
%
% Inner Core (confined with existing stirrups)
[ecc_ma,fcc_ma] = ManderconfHollow(Aci,'rectangular','hoops');
%
% Inner Core (confined both existing and jacketing stirrups)
[ecc_ma_core,fcc_ma_core] = ManderconfHollowInnerCore(Aci,'rectangular','hoops');
%
% Inner Cover (confined by jacketing stirrups)
[ecc_ma_incov,fcc_ma_incov] =
ManderconfHollowInnerCover(Aui,'rectangular','hoops');
%
% Inner Jacket (confined by jacketing stirrups)
[ecc_ma_injac,fcc_ma_injac] =
ManderconfHollowInnerJacket(Acij,'rectangular','hoops');
%
%plot
figure;
area(ecc_ma_core,fcc_ma_core,'FaceColor','b');
hold on;
area(ecc_ma,fcc_ma,'FaceColor','m');
hold on;
area(ecc_ma_incov,fcc_ma_incov,'FaceColor','y');
hold on;
area(ecc_ma_injac,fcc_ma_injac,'FaceColor','c');
hold on;
area(ecun_mu,fcun_mu,'FaceColor','w','LineStyle','--');
hold on
area(ecun_muj,fcun_muj,'FaceColor','b','FaceAlpha',0.5,'LineStyle','--');
hold off;
ylabel('Stress [MPa]','FontSize',10);
xlabel('Strain','FontSize',10);
legend(': Confined Inner Core (Both Stirrups)',': Confined Inner Core (Existing
Stirrups)',...
': Confined Inner Cover (Jacketing Stirrups)',': Confined Inner Jacket
(Jacketing Stirrups)',...
': Unconfined Concrete (Existing)',': Unconfined Concrete (Jacketing)');
grid on;
set(gca,'Layer','top');
title('Stress-Strain for Confined and Unconfined Concrete with Jacketing - Mander
et al, 1988','FontSize',12)
Unconfined - Mander
201
% - Ec = modulus of elasticity of concrete
% - dels = delta strain
%
ecun_mu = 0:dels:espall;
Esecu = fco/eco;
ru = Ec/(Ec-Esecu);
xu = ecun_mu./eco;
for i = 1:length(ecun_mu)
if ecun_mu(i)<=2*eco
fcun_mu(i) = fco*xu(i)*ru/(ru-1+xu(i)^ru);
end
if ecun_mu(i)>2*eco & ecun_mu(i)<=espall
fcun_mu(i) = fco*(2*ru/(ru-1+2^ru))*((espall-(ecun_mu(i)))/(espall-
2*eco));
end
if ecun_mu(i)>espall
fcun_mu(i) = 0;
end
end
end
Confined - Mander
202
% Inner Core (gain from existing stirrups)
Asx_in = ncx*Asp;
Asy_in = ncy*Asp;
Ac_in = sum(Aci);
rhocc_in = Ast/Ac_in;
rhox_in = Asx_in/(s*(dc1+dc6+dc8+dc10+dc12));
rhoy_in = Asy_in/(s*(bc1+bc2+bc3+bc4+bc5));
rhos_in = rhox_in + rhoy_in;
ke_in = (1-2*(sum(wx_in.^2)+sum(wx_out.^2)+sum(wy_in.^2)+...
sum(wy_out.^2))/(6*Ac_in))*(1-sc/(2*(bc1+bc2+bc3+bc4+bc5)))*...
(1-sc/(2*(dc1+dc6+dc8+dc10+dc12)))/(1-rhocc_in);
if rhox_in > rhoy_in
rho1_in = rhoy_in;
rho2_in = rhox_in;
elseif rhox_in < rhoy_in
rho1_in = rhox_in;
rho2_in = rhoy_in;
else
disp('check confining stress ratio');
end
fl1_in = rho1_in*fyh; % smallest confining stress ratio
fl2_in = rho2_in*fyh; % largest confining stress ratio
fl1e_in = ke_in*fl1_in/fco;
fl2e_in = ke_in*fl2_in/fco;
disp(' fl1e_in')
disp(fl1e_in)
disp(' fl2e_in')
disp(fl2e_in)
fle_in = input('Enter the Confining Strength Ratio from Mander Chart:
');
fcc_in = fle_in*fco;
ecc_in = eco*(1 + 5*(fcc_in/fco-1));
Esec_in = fcc_in/ecc_in;
r_in = Ec/(Ec-Esec_in);
ecu_ma_in= 0.004 + 1.4*rhos_in*fyh*esu/fcc_in;
203
xcr2 = a_2(2)-a_2(1); % base length of the parabola at y = tj
%
%y-dir(wi'y)
g1 = -(0.25*wy_j)/(0.5*wy_j)^2*a^2+a-(twj-2*tc-dt); % Eq of parabola in
y-dir
b_1 = double(solve(g1));
ycr1 = b_1(2)-b_1(1); % base length of the parabola at the periphery of
the core
g2 = -(0.25*wy_j)/(0.5*wy_j)^2*a^2+a-tj; % Eq of parabola in y-dir
b_2 = double(solve(g2));
ycr2 = b_2(2)-b_2(1); % base length of the parabola at the periphery of
the core
%
ke_out = (1-2*((xcr2^2-xcr1^2)+(ycr2^2-ycr1^2))/(6*Ac_in))*...
(1-scj/(2*(bc1+bc2+bc3+bc4+bc5)))*(1-scj/(2*(dc1+dc6+dc8+...
dc10+dc11)))/(1-rhocc_out);
if rhox_out > rhoy_out
rho1_out = rhoy_out;
rho2_out = rhox_out;
elseif rhox_out < rhoy_out
rho1_out = rhox_out;
rho2_out = rhoy_out;
else
disp('check confining stress ratio');
end
fl1_out = rho1_out*fyh_j; % smallest confining stress ratio
fl2_out = rho2_out*fyh_j; % largest confining stress ratio
fl1e_out = ke_out*fl1_out/fco_j;
fl2e_out = ke_out*fl2_out/fco_j;
disp(' fl1e_out')
disp(fl1e_out)
disp(' fl2e_out')
disp(fl2e_out)
fle_out = input('Enter the Confining Strength Ratio from Mander Chart:
');
fcc_out = fle_out*fco_j;
ecc_out = eco*(1 + 5*(fcc_out/fco-1));
Esec_out = fcc_out/ecc_out;
r_out = Ec/(Ec-Esec_out);
ecu_ma_out= (0.004+1.4*rhos_out*fyh_j*esu_j/fcc_out);
%
% Inner Core (gain from both stirrups)
fl1e_core = fl1e_in+fl1e_out;
fl2e_core = fl2e_in+fl2e_out;
disp(' fl1e_core')
disp(fl1e_core)
disp(' fl2e_core')
disp(fl2e_core)
fle_core = input('Enter the Confining Strength Ratio from Mander Chart:
');
fcc_core = fle_core*fco;
ecc_core = eco*(1 + 5*(fcc_core/fco-1));
Esec_core = fcc_core/ecc_core;
204
r_core = Ec/(Ec-Esec_core);
ecu_ma_core= ecu_ma_in + ecu_ma_out;
%
case 'circular'
ds = tw - 2*tc - dt;
rhos = 4*Asp/(ds*s);
Ac = 0.25*pi*(ds^2);
rhocc = Ast/Ac;
switch lower(type)
case 'spirals'
ke = (1-sc/(2*ds))/(1-rhocc);
case 'hoops'
ke = ((1-sc/(2*ds))^2/(1-rhocc));
otherwise
disp('tranverse reinforcement should be spirals or hoops');
return;
end
fle = 0.5*ke*rhos*fy; %confined strength ratio
otherwise
disp('section not available'); return;
end
assignin('base','ecc_in',ecc_in)
assignin('base','fcc_in',fcc_in)
assignin('base','ecu_ma_in',ecu_ma_in)
assignin('base','ke_in',ke_in)
assignin('base','rho1_in',rho1_in)
assignin('base','rho2_in',rho2_in)
assignin('base','rhos_in',rhos_in)
assignin('base','fl1_in',fl1_in)
assignin('base','fl2_in',fl2_in)
assignin('base','fle_in',fle_in)
%
assignin('base','ecc_out',ecc_out)
assignin('base','fcc_out',fcc_out)
assignin('base','ecu_ma_out',ecu_ma_out)
assignin('base','ke_out',ke_out)
assignin('base','rho1_out',rho1_out)
assignin('base','rho2_out',rho2_out)
assignin('base','rhos_out',rhos_out)
assignin('base','fl1_out',fl1_out)
assignin('base','fl2_out',fl2_out)
assignin('base','fle_out',fle_out)
%
assignin('base','ecc_core',ecc_core)
assignin('base','fcc_core',fcc_core)
assignin('base','ecu_ma_core',ecu_ma_core)
205
%
ecc_ma_core = 0:dels:ecu_ma_core;
x_core = (1/ecc_core)*ecc_ma_core;
fcc_ma_core = fcc_core*x_core*r_core./(r_core-1+x_core.^r_core);
end
function [ecc_ma_incov,fcc_ma_incov] =
ManderconfHollowInnerCover(Aui,section,type)
%This function returns the stress-strain relationship for confined concrete
% the formula proposed by Mander et al
% input:
% - Aui = total area of inner cover
% - section = RC Section, rectangular or circular
% - type = confinement type, spirals or hoops
% the function calculate stress-strain gained from jacketing stirrups
%
global tj tw tc ncxj ncyj Dbj dtj sj scj fco_j fyh_j eco esu_j nlxj nlyj...
wx_j wy_j dels
%
global H B dt s sc fco fy fyh esu Ec
%
% Call Mander Unconfined
%[ecun_mu,fcun_mu] = Manderun();
%
Astj = sum(nlxj)*0.25*pi*Dbj^2;% total area of jacketing longitudinal
reinforcement bar
Aspj = 0.25*pi*(dtj^2); % area of jacketing transverse reinforcement bar
%
switch lower(section)
case 'rectangular'
% Inner Cover (gain from jacketing stirrups)
Asx_incov = ncxj*Aspj;
Asy_incov = ncyj*Aspj;
Ac_incov = sum(Aui(1:928)); % total area of inner cover
rhocc_incov= Astj/Ac_incov;
rhox_incov = Asx_incov/(sj*H);
rhoy_incov = Asy_incov/(sj*B);
rhos_incov = rhox_incov + rhoy_incov;
%
% find the ineffectively area
syms a
%x-dir(wi'x)
f1 = -(0.25*wx_j)/(0.5*wx_j)^2*a^2+a-tj; % Eq of parabola
a_1 = double(solve(f1));
xcr1 = a_1(2)-a_1(1); % base length of the parabola at y = twj-2*tc-dt
f2 = -(0.25*wx_j)/(0.5*wx_j)^2*a^2+a-(tj-tc-dt/2); % Eq of parabola
a_2 = double(solve(f2));
xcr2 = a_2(2)-a_2(1); % base length of the parabola at y = tj
%
%y-dir(wi'y)
g1 = -(0.25*wy_j)/(0.5*wy_j)^2*a^2+a-tj; % Eq of parabola in y-dir
b_1 = double(solve(g1));
206
ycr1 = b_1(2)-b_1(1); % base length of the parabola at the periphery of
the core
g2 = -(0.25*wy_j)/(0.5*wy_j)^2*a^2+a-(tj-dt/2); % Eq of parabola in y-
dir
b_2 = double(solve(g2));
ycr2 = b_2(2)-b_2(1); % base length of the parabola at the periphery of
the core
%
ke_incov = (1-2*((xcr2^2-xcr1^2)+(ycr2^2-ycr1^2))/(6*Ac_incov))*...
(1-scj/(2*(tc+dt/2)))*(1-scj/(2*(tc+dt/2)))/(1-rhocc_incov);
if rhox_incov >= rhoy_incov
rho1_incov = rhoy_incov;
rho2_incov = rhox_incov;
elseif rhox_incov <= rhoy_incov
rho1_incov = rhox_incov;
rho2_incov = rhoy_incov;
else
disp('check confining stress ratio');
end
fl1_incov = rho1_incov*fyh_j; % smallest confining stress ratio
fl2_incov = rho2_incov*fyh_j; % largest confining stress ratio
fl1e_incov = ke_incov*fl1_incov/fco_j;
fl2e_incov = ke_incov*fl2_incov/fco_j;
disp(' fl1e_incov')
disp(fl1e_incov)
disp(' fl2e_incov')
disp(fl2e_incov)
fle_incov = input('Enter the Confining Strength Ratio from Mander Chart:
');
fcc_incov = fle_incov*fco_j;
ecc_incov = eco*(1 + 5*(fcc_incov/fco-1));
Esec_incov = fcc_incov/ecc_incov;
r_incov = Ec/(Ec-Esec_incov);
ecu_ma_incov= (0.004+1.4*rhos_incov*fyh_j*esu_j/fcc_incov);
%
case 'circular'
ds = tw - 2*tc - dt;
rhos = 4*Asp/(ds*s);
Ac = 0.25*pi*(ds^2);
rhocc = Ast/Ac;
switch lower(type)
case 'spirals'
ke = (1-sc/(2*ds))/(1-rhocc);
case 'hoops'
ke = ((1-sc/(2*ds))^2/(1-rhocc));
otherwise
disp('tranverse reinforcement should be spirals or hoops');
return;
end
fle = 0.5*ke*rhos*fy; %confined strength ratio
207
ecc = eco*(1 + 5*(fcc/fco-1));
Esec = fcc/ecc;
r = Ec/(Ec-Esec);
ecu_ma = 0.004 + 1.4*rhos*fyh*esu/fcc;
otherwise
disp('section not available'); return;
end
%
assignin('base','ecc_incov',ecc_incov)
assignin('base','fcc_incov',fcc_incov)
assignin('base','ecu_ma_incov',ecu_ma_incov)
assignin('base','ke_incov',ke_incov)
assignin('base','rho1_incov',rho1_incov)
assignin('base','rho2_incov',rho2_incov)
assignin('base','rhos_incov',rhos_incov)
assignin('base','fl1_incov',fl1_incov)
assignin('base','fl2_incov',fl2_incov)
assignin('base','fle_incov',fle_incov)
%
ecc_ma_incov = 0:dels:ecu_ma_incov;
x_incov = (1/ecc_incov)*ecc_ma_incov;
fcc_ma_incov = fcc_incov*x_incov*r_incov./(r_incov-1+x_incov.^r_incov);
end
function [ecc_ma_injac,fcc_ma_injac] =
ManderconfHollowInnerJacket(Acij,section,type)
%This function returns the stress-strain relationship for confined concrete
% the formula proposed by Mander et al
% input:
% - Aci = total area of inner jacket
% - section = RC Section, rectangular or circular
% - type = confinement type, spirals or hoops
% the function calculate stress-strain gained from jacketing stirrups
%
global Hj Bj tj tw tc ncxj ncyj Dbj dtj sj scj fco_j fyh_j eco esu_j nlxj...
nlyj wx_j wy_j dels Ec_j
%
global dt s sc fco fy fyh esu
%
% Call Mander Unconfined
%[ecun_mu,fcun_mu] = Manderun();
%
Astj = sum(nlxj)*0.25*pi*Dbj^2;% total area of jacketing longitudinal
reinforcement bar
Aspj = 0.25*pi*(dtj^2); % area of jacketing transverse reinforcement bar
%
switch lower(section)
case 'rectangular'
% Inner Jacket (gain from jacketing stirrups)
Asx_injac = ncxj*Aspj;
Asy_injac = ncyj*Aspj;
208
Ac_injac = sum(Acij); % total area of inner cover
rhocc_injac= Astj/Ac_injac;
rhox_injac = Asx_injac/(sj*(Hj-2*(tc+dt/2)));
rhoy_injac = Asy_injac/(sj*(Bj-2*(tc+dt/2)));
rhos_injac = rhox_injac + rhoy_injac;
%
% find the ineffectively area
syms a
%x-dir(wi'x)
f1 = -(0.25*wx_j)/(0.5*wx_j)^2*a^2+a-(tj-tc-dt/2); % Eq of parabola
a_1 = double(solve(f1));
xcr1 = a_1(2)-a_1(1); % base length of the parabola at y = twj-2*tc-dt
%
%y-dir(wi'y)
g1 = -(0.25*wy_j)/(0.5*wy_j)^2*a^2+a-(tj-tc-dt/2); % Eq of parabola in
y-dir
b_1 = double(solve(g1));
ycr1 = b_1(2)-b_1(1); % base length of the parabola at the periphery of
the core
%
ke_injac = (1-2*((wx_j^2-xcr1^2)+(wy_j^2-ycr1^2))/(6*Ac_injac))*...
(1-scj/(2*(tj-tc-dt/2)))*(1-scj/(2*(tj-tc-dt/2)))/(1-rhocc_injac);
if rhox_injac >= rhoy_injac
rho1_injac = rhoy_injac;
rho2_injac = rhox_injac;
elseif rhox_injac <= rhoy_injac
rho1_injac = rhox_injac;
rho2_injac = rhoy_injac;
else
disp('check confining stress ratio');
end
fl1_injac = rho1_injac*fyh_j; % smallest confining stress ratio
fl2_injac = rho2_injac*fyh_j; % largest confining stress ratio
fl1e_injac = ke_injac*fl1_injac/fco_j;
fl2e_injac = ke_injac*fl2_injac/fco_j;
disp(' fl1e_injac')
disp(fl1e_injac)
disp(' fl2e_injac')
disp(fl2e_injac)
fle_injac = input('Enter the Confining Strength Ratio from Mander Chart:
');
fcc_injac = fle_injac*fco_j;
ecc_injac = eco*(1 + 5*(fcc_injac/fco-1));
Esec_injac = fcc_injac/ecc_injac;
r_injac = Ec_j/(Ec_j-Esec_injac);
ecu_ma_injac= (0.004+1.4*rhos_injac*fyh_j*esu_j/fcc_injac);
%
case 'circular'
ds = tw - 2*tc - dt;
rhos = 4*Asp/(ds*s);
Ac = 0.25*pi*(ds^2);
rhocc = Ast/Ac;
209
switch lower(type)
case 'spirals'
ke = (1-sc/(2*ds))/(1-rhocc);
case 'hoops'
ke = ((1-sc/(2*ds))^2/(1-rhocc));
otherwise
disp('tranverse reinforcement should be spirals or hoops');
return;
end
fle = 0.5*ke*rhos*fy; %confined strength ratio
otherwise
disp('section not available'); return;
end
%
assignin('base','ecc_injac',ecc_injac)
assignin('base','fcc_injac',fcc_injac)
assignin('base','ecu_ma_injac',ecu_ma_injac)
assignin('base','ke_injac',ke_injac)
assignin('base','rho1_injac',rho1_injac)
assignin('base','rho2_injac',rho2_injac)
assignin('base','rhos_injac',rhos_injac)
assignin('base','fl1_injac',fl1_injac)
assignin('base','fl2_injac',fl2_injac)
assignin('base','fle_injac',fle_injac)
%
ecc_ma_injac = 0:dels:ecu_ma_injac;
x_injac = (1/ecc_injac)*ecc_ma_injac;
fcc_ma_injac = fcc_injac*x_injac*r_injac./(r_injac-1+x_injac.^r_injac);
end
210
%
% Calculate the initial strain based on initial curvature
ei_cover = findstrain_newfun(Curv_i,Cover_Strain,Curv_ex);
ei_core = findstrain_newfun(Curv_i,Core_Strain,Curv_ex);
ei_steel = findstrain_newfun(Curv_i,Steel_Strain,Curv_ex);
%
%---DISTANCE OF LAYERS FROM TOP FIBER---
arm_uncon_ex = arm_uncon(13:116)+tj; % existing cover layers
arm_uncon_jac= Hj-MULYj(:,1); % jacketing cover layers
arm_core = arm_conf+tj; % inner core layers
arm_incov = arm_uncon+tj; % inner cover layers
arm_injac = Hj-MCLYj(:,1); % inner jacket layers
arm_st_ex = arm_st+tj; % existing rebar layers
arm_st_jac = Hj-MLRYj(:,1); % jacket rebar layers
%
%---ITERATION TO FIND NEUTRAL AXIS---
c1j = c1;
c2j = c2;
%
cj = zeros(size(increj));
Cover_Strain_ex = zeros(length(arm_uncon_ex),length(increj));
Cover_Strain_jac = zeros(length(arm_uncon_jac),length(increj));
Core_Strain_new = zeros(length(arm_core),length(increj));
Incov_Strain = zeros(length(arm_incov),length(increj));
Injac_Strain = zeros(length(arm_injac),length(increj));
Steel_Strain_ex = zeros(length(arm_st_ex),length(increj));
Steel_Strain_jac = zeros(length(arm_st_jac),length(increj));
fc_uncon_ex = zeros(length(arm_uncon_ex),length(increj));
fc_uncon_jac = zeros(length(arm_uncon_jac),length(increj));
fc_core = zeros(length(arm_core),length(increj));
fc_incov = zeros(length(arm_incov),length(increj));
fc_injac = zeros(length(arm_injac),length(increj));
f_st_ex = zeros(length(arm_st_ex),length(increj));
f_st_jac = zeros(length(arm_st_jac),length(increj));
F_UNCON_ex = zeros(length(arm_uncon_ex),length(increj));
F_UNCON_jac = zeros(length(arm_uncon_jac),length(increj));
F_CORE = zeros(length(arm_core),length(increj));
F_INCOV = zeros(length(arm_incov),length(increj));
F_INJAC = zeros(length(arm_injac),length(increj));
F_STEEL_ex = zeros(length(arm_st_ex),length(increj));
F_STEEL_jac = zeros(length(arm_st_jac),length(increj));
%
for i = 1:length(increj)
%%%--------------------------c1-----------------------------%%%
%---Existing Unconfined Segment (existing internal cover)
eci_uncon_ex1 = strainjac_fun(c1j,arm_uncon_ex,increj(i),...
ei_cover(13:116,find(Curv_ex==curv_in,1,'first')));
fc_uncon_ex1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon_ex1,'unconfined');
F_uncon_ex1 = force_fun(fc_uncon_ex1,excovY(:,2));
%---Jacketing Unconfined Segment
eci_uncon_jac1 = strainjac_fun(c1j,arm_uncon_jac,increj(i),...
Cover_Strain_jac(:,i))*slip_ratio;
211
fc_uncon_jac1 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_uncon_jac1,'unconfined');
F_uncon_jac1 = force_fun(fc_uncon_jac1,MULYj(:,2));
%---Core Segment
eci_core1 = strainjac_fun(c1j,arm_core,increj(i),...
ei_core(:,find(Curv_ex==curv_in,1,'first')));
fc_core1 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_core1,'confined');
F_core1 = force_fun(fc_core1,MCLY(:,2));
%---Inner Cover Segment (existing external cover)
eci_incov1 = strainjac_fun(c1j,arm_incov,increj(i),...
ei_cover(:,find(Curv_ex==curv_in,1,'first')));
fc_incov1 = stress_fun(eco,espall,ecc_incov,ecu_ma_incov,...
fco,fcc_incov,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_incov1,'confined');
F_incov1 = force_fun(fc_incov1,incovY(:,2));
%---Inner Jacket Segment
eci_injac1 = strainjac_fun(c1j,arm_injac,increj(i),...
Injac_Strain(:,i))*slip_ratio;
fc_injac1 = stress_fun(eco,espall,ecc_injac,ecu_ma_injac,...
fco_j,fcc_injac,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_injac1,'confined');
F_injac1 = force_fun(fc_injac1,MCLYj(:,2));
%---Existing Reinforcement
esi_st_ex1 = strainjac_fun(c1j,arm_st_ex,increj(i),...
ei_steel(:,find(Curv_ex==curv_in,1,'first')));
f_st_ex1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st_ex1,'steel');
F_st_ex1 = force_fun(f_st_ex1,MLRY(:,2));
%---Jacket Reinforcement
esi_st_jac1 = strainjac_fun(c1j,arm_st_jac,increj(i),...
Steel_Strain_jac(:,i))*slip_ratio;
f_st_jac1 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
esi_st_jac1,'steel');
F_st_jac1 = force_fun(f_st_jac1,MLRYj(:,2));
%---sum of forces
SUMF_c1j = sum(F_uncon_ex1)+sum(F_uncon_jac1)+sum(F_core1)+...
sum(F_incov1)+sum(F_injac1)+sum(F_st_ex1)+sum(F_st_jac1)-Pj;
%
%%%---------------------------c2----------------------------%%%
%---Existing Unconfined Segment (existing internal cover)
eci_uncon_ex2 = strainjac_fun(c2j,arm_uncon_ex,increj(i),...
ei_cover(13:116,find(Curv_ex==curv_in,1,'first')));
fc_uncon_ex2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon_ex2,'unconfined');
F_uncon_ex2 = force_fun(fc_uncon_ex2,excovY(:,2));
%---Jacketing Unconfined Segment
eci_uncon_jac2 = strainjac_fun(c2j,arm_uncon_jac,increj(i),...
Cover_Strain_jac(:,i))*slip_ratio;
fc_uncon_jac2 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
212
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_uncon_jac2,'unconfined');
F_uncon_jac2 = force_fun(fc_uncon_jac2,MULYj(:,2));
%---Core Segment
eci_core2 = strainjac_fun(c2j,arm_core,increj(i),...
ei_core(:,find(Curv_ex==curv_in,1,'first')));
fc_core2 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_core2,'confined');
F_core2 = force_fun(fc_core2,MCLY(:,2));
%---Inner Cover Segment (existing external cover)
eci_incov2 = strainjac_fun(c2j,arm_incov,increj(i),...
ei_cover(:,find(Curv_ex==curv_in,1,'first')));
fc_incov2 = stress_fun(eco,espall,ecc_incov,ecu_ma_incov,...
fco,fcc_incov,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_incov2,'confined');
F_incov2 = force_fun(fc_incov2,incovY(:,2));
%---Inner Jacket Segment
eci_injac2 = strainjac_fun(c2j,arm_injac,increj(i),...
Injac_Strain(:,i))*slip_ratio;
fc_injac2 = stress_fun(eco,espall,ecc_injac,ecu_ma_injac,...
fco_j,fcc_injac,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_injac2,'confined');
F_injac2 = force_fun(fc_injac2,MCLYj(:,2));
%---Existing Reinforcement
esi_st_ex2 = strainjac_fun(c2j,arm_st_ex,increj(i),...
ei_steel(:,find(Curv_ex==curv_in,1,'first')));
f_st_ex2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st_ex2,'steel');
F_st_ex2 = force_fun(f_st_ex2,MLRY(:,2));
%---Jacket Reinforcement
esi_st_jac2 = strainjac_fun(c2j,arm_st_jac,increj(i),...
Steel_Strain_jac(:,i))*slip_ratio;
f_st_jac2 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
esi_st_jac2,'steel');
F_st_jac2 = force_fun(f_st_jac2,MLRYj(:,2));
%---sum of forces
SUMF_c2j = sum(F_uncon_ex2)+sum(F_uncon_jac2)+sum(F_core2)+...
sum(F_incov2)+sum(F_injac2)+sum(F_st_ex2)+sum(F_st_jac2)-Pj;
%
iterj = 0;
maxiterj = 50;
tolj = 1.0e-3;
while (1)
crj = (c1j+c2j)/2;
iterj = iterj + 1;
%---Existing Unconfined Segment (existing internal cover)
eci_uncon_exr = strainjac_fun(crj,arm_uncon_ex,increj(i),...
ei_cover(13:116,find(Curv_ex==curv_in,1,'first')));
fc_uncon_exr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon_exr,'unconfined');
F_uncon_exr = force_fun(fc_uncon_exr,excovY(:,2));
213
%---Jacketing Unconfined Segment
eci_uncon_jacr = strainjac_fun(crj,arm_uncon_jac,increj(i),...
Cover_Strain_jac(:,i))*slip_ratio;
fc_uncon_jacr = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_uncon_jacr,'unconfined');
F_uncon_jacr = force_fun(fc_uncon_jacr,MULYj(:,2));
%---Core Segment
eci_corer = strainjac_fun(crj,arm_core,increj(i),...
ei_core(:,find(Curv_ex==curv_in,1,'first')));
fc_corer = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_corer,'confined');
F_corer = force_fun(fc_corer,MCLY(:,2));
%---Inner Cover Segment (existing external cover)
eci_incovr = strainjac_fun(crj,arm_incov,increj(i),...
ei_cover(:,find(Curv_ex==curv_in,1,'first')));
fc_incovr = stress_fun(eco,espall,ecc_incov,ecu_ma_incov,...
fco,fcc_incov,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_incovr,'confined');
F_incovr = force_fun(fc_incovr,incovY(:,2));
%---Inner Jacket Segment
eci_injacr = strainjac_fun(crj,arm_injac,increj(i),...
Injac_Strain(:,i))*slip_ratio;
fc_injacr = stress_fun(eco,espall,ecc_injac,ecu_ma_injac,...
fco_j,fcc_injac,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_injacr,'confined');
F_injacr = force_fun(fc_injacr,MCLYj(:,2));
%---Existing Reinforcement
esi_st_exr = strainjac_fun(crj,arm_st_ex,increj(i),...
ei_steel(:,find(Curv_ex==curv_in,1,'first')));
f_st_exr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st_exr,'steel');
F_st_exr = force_fun(f_st_exr,MLRY(:,2));
%---Jacket Reinforcement
esi_st_jacr = strainjac_fun(crj,arm_st_jac,increj(i),...
Steel_Strain_jac(:,i))*slip_ratio;
f_st_jacr = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
esi_st_jacr,'steel');
F_st_jacr = force_fun(f_st_jacr,MLRYj(:,2));
%---sum of forces
SUMF_crj = sum(F_uncon_exr)+sum(F_uncon_jacr)+sum(F_corer)+...
sum(F_incovr)+sum(F_injacr)+sum(F_st_exr)+sum(F_st_jacr)-Pj;
%
if abs(SUMF_crj) <= tolj || iterj >= maxiterj
break
end
if sign(SUMF_c1j) == sign(SUMF_crj)
c1j = crj;
else
c2j = crj;
end
214
end
c1j = c1;
c2j = c2;
cj(:,i) = crj;
Cover_Strain_ex(:,i) = eci_uncon_exr;
Cover_Strain_jac(:,i)= eci_uncon_jacr;
Core_Strain_new(:,i) = eci_corer;
Incov_Strain(:,i) = eci_incovr;
Injac_Strain(:,i) = eci_injacr;
Steel_Strain_ex(:,i) = esi_st_exr;
Steel_Strain_jac(:,i)= esi_st_jacr;
fc_uncon_ex(:,i) = fc_uncon_exr;
fc_uncon_jac(:,i)= fc_uncon_jacr;
fc_core(:,i) = fc_corer;
fc_incov(:,i)= fc_incovr;
fc_injac(:,i)= fc_injacr;
f_st_ex(:,i) = f_st_exr;
f_st_jac(:,i)= f_st_jacr;
F_UNCON_ex(:,i) = F_uncon_exr;
F_UNCON_jac(:,i)= F_uncon_jacr;
F_CORE(:,i) = F_corer;
F_INCOV(:,i)= F_incovr;
F_INJAC(:,i)= F_injacr;
F_STEEL_ex(:,i) = F_st_exr;
F_STEEL_jac(:,i)= F_st_jacr;
end
%---MOMENT-CURVATURE RELATIONSHIP---
%adding the initial condition for curvature
Curvj = increj*1e3+curv_in;
Momj = (sum((Hj/2-arm_uncon_ex).*F_UNCON_ex)+sum((Hj/2-
arm_uncon_jac).*...
F_UNCON_jac)+sum((Hj/2-arm_core).*F_CORE)+sum((Hj/2-
arm_incov).*F_INCOV)+...
sum((Hj/2-arm_injac).*F_INJAC)+sum((Hj/2-arm_st_ex).*F_STEEL_ex)+...
sum((Hj/2-arm_st_jac).*F_STEEL_jac))./1e6;
Curvj(1) = curv_in; % 1st incre should be initial curvature
Momj(1) = Mi; % 1st incre should be initial moment
%
%---CRACK CONDITION--- (eci = ecr, tension)
ecr_jac = fr_j/Ec_j;
length_crack_jac= find(Cover_Strain_jac(1,:)<=-ecr_jac,1,'first');
Curv_crack_jac = Curvj(length_crack_jac+1);
Mcr_jac = Momj(length_crack_jac+1);
%
%---YIELD CONDITION--- (esi = ey, tension)
Curv_yield_ex = interp1(Steel_Strain_ex(1,:),Curvj,-fy/Es);
%existing rebars
Curv_yield_jac = interp1(Steel_Strain_jac(1,:),Curvj,-fy_j/Es_j);
%jacketing rebars
My_ex = interp1(Curvj,Momj,Curv_yield_ex);
My_jac = interp1(Curvj,Momj,Curv_yield_jac);
%
215
%---ULTIMATE CONDITION--- (eci = ecu confined or esi = esu, which reach
first)
% ultimate curvature by steel strain
length1ex = find(Steel_Strain_ex(1,:)<=-esu,1,'first'); % find the
first esu
if isempty(length1ex)
length1ex=length(Steel_Strain_ex);
end
length1jac = find(Steel_Strain_jac(1,:)<=-esu_j,1,'first'); % find the
first esu
if isempty(length1jac)
length1jac=length(Steel_Strain_jac);
end
Curv_ults_ex = Curvj(length1ex-1); %existing rebars
Curv_ults_jac = Curvj(length1jac-1); %jacketing rebars
%
% ultimate curvature by core strain
length2jac = find(Core_Strain_new(end,:)>=ecu_ma_core,1,'first'); %
find the first ecu_ma_core
if isempty(length2jac)
length2jac=length(Core_Strain_new);
end
Curv_ultc_jac = Curvj(length2jac-1); %core
%
%ultimate curvature
Curv_ult_jac = min([Curv_ults_ex Curv_ults_jac Curv_ultc_jac]);
M_ult_jac = Momj(min([length1ex length1jac length2jac])-1);
%
%---NOMINAL CONDITION--- (eci = 0.003 or esi = esu_r)
Curv_nom_jac = findcurv_fun(Cover_Strain_jac,Curvj,ecu);
Mne_jac = interp1(Curvj,Momj,Curv_nom_jac);
esaux_jac = interp1(Momj,Steel_Strain_jac(1,:),Mne_jac);
if esaux_jac <= -esu_rj
Mne_jac = interp1(Steel_Strain_jac(1,:),Momj,-esu_rj);
end
%
%---Neutral Axis Location---
c_yieldj = interp1(Curvj,cj,Curv_yield_jac);
c_ultj = interp1(Curvj,cj,Curv_ult_jac);
%
case 2
% Call the new MC Relationship of existing section
curv_in = interp1(Mom,Curv,Mi); % initial curvature minor dir
[Curv_ex,Mom_ex] = mc_initial_fun(Curv,Mom,curv_in,Mi); % Initial MC
Relation
%
% Calculate the initial strain based on initial curvature
ei_cover = findstrain_newfun(Curv_i,Cover_Strain,Curv_ex);
ei_core = findstrain_newfun(Curv_i,Core_Strain,Curv_ex);
ei_steel = findstrain_newfun(Curv_i,Steel_Strain,Curv_ex);
%
%---DISTANCE OF LAYERS FROM TOP FIBER---
216
arm_uncon_ex = arm_uncon(13:96)+tj; % existing cover layers
arm_uncon_jac= Bj-MULXj(:,1); % jacketing cover layers
arm_core = arm_conf+tj; % inner core layers
arm_incov = arm_uncon+tj; % inner cover layers
arm_injac = Bj-MCLXj(:,1); % inner jacket layers
arm_st_ex = arm_st+tj; % existing rebar layers
arm_st_jac = Bj-MLRXj(:,1); % jacket rebar layers
%
%---ITERATION TO FIND NEUTRAL AXIS---
c1j = c1;
c2j = c2;
%
cj = zeros(size(increj));
Cover_Strain_ex = zeros(length(arm_uncon_ex),length(increj));
Cover_Strain_jac = zeros(length(arm_uncon_jac),length(increj));
Core_Strain_new = zeros(length(arm_core),length(increj));
Incov_Strain = zeros(length(arm_incov),length(increj));
Injac_Strain = zeros(length(arm_injac),length(increj));
Steel_Strain_ex = zeros(length(arm_st_ex),length(increj));
Steel_Strain_jac = zeros(length(arm_st_jac),length(increj));
fc_uncon_ex = zeros(length(arm_uncon_ex),length(increj));
fc_uncon_jac = zeros(length(arm_uncon_jac),length(increj));
fc_core = zeros(length(arm_core),length(increj));
fc_incov = zeros(length(arm_incov),length(increj));
fc_injac = zeros(length(arm_injac),length(increj));
f_st_ex = zeros(length(arm_st_ex),length(increj));
f_st_jac = zeros(length(arm_st_jac),length(increj));
F_UNCON_ex = zeros(length(arm_uncon_ex),length(increj));
F_UNCON_jac = zeros(length(arm_uncon_jac),length(increj));
F_CORE = zeros(length(arm_core),length(increj));
F_INCOV = zeros(length(arm_incov),length(increj));
F_INJAC = zeros(length(arm_injac),length(increj));
F_STEEL_ex = zeros(length(arm_st_ex),length(increj));
F_STEEL_jac = zeros(length(arm_st_jac),length(increj));
%
for i = 1:length(increj)
%%%--------------------------c1-----------------------------%%%
%---Existing Unconfined Segment (existing internal cover)
eci_uncon_ex1 = strainjac_fun(c1j,arm_uncon_ex,increj(i),...
ei_cover(13:96,find(Curv_ex==curv_in,1,'first')));
fc_uncon_ex1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon_ex1,'unconfined');
F_uncon_ex1 = force_fun(fc_uncon_ex1,excovX(:,2));
%---Jacketing Unconfined Segment
eci_uncon_jac1 = strainjac_fun(c1j,arm_uncon_jac,increj(i),...
Cover_Strain_jac(:,i))*slip_ratio;
fc_uncon_jac1 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_uncon_jac1,'unconfined');
F_uncon_jac1 = force_fun(fc_uncon_jac1,MULXj(:,2));
%---Core Segment
eci_core1 = strainjac_fun(c1j,arm_core,increj(i),...
ei_core(:,find(Curv_ex==curv_in,1,'first')));
217
fc_core1 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_core1,'confined');
F_core1 = force_fun(fc_core1,MCLX(:,2));
%---Inner Cover Segment (existing external cover)
eci_incov1 = strainjac_fun(c1j,arm_incov,increj(i),...
ei_cover(:,find(Curv_ex==curv_in,1,'first')));
fc_incov1 = stress_fun(eco,espall,ecc_incov,ecu_ma_incov,...
fco,fcc_incov,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_incov1,'confined');
F_incov1 = force_fun(fc_incov1,incovX(:,2));
%---Inner Jacket Segment
eci_injac1 = strainjac_fun(c1j,arm_injac,increj(i),...
Injac_Strain(:,i))*slip_ratio;
fc_injac1 = stress_fun(eco,espall,ecc_injac,ecu_ma_injac,...
fco_j,fcc_injac,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_injac1,'confined');
F_injac1 = force_fun(fc_injac1,MCLXj(:,2));
%---Existing Reinforcement
esi_st_ex1 = strainjac_fun(c1j,arm_st_ex,increj(i),...
ei_steel(:,find(Curv_ex==curv_in,1,'first')));
f_st_ex1 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st_ex1,'steel');
F_st_ex1 = force_fun(f_st_ex1,MLRX(:,2));
%---Jacket Reinforcement
esi_st_jac1 = strainjac_fun(c1j,arm_st_jac,increj(i),...
Steel_Strain_jac(:,i))*slip_ratio;
f_st_jac1 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
esi_st_jac1,'steel');
F_st_jac1 = force_fun(f_st_jac1,MLRXj(:,2));
%---sum of forces
SUMF_c1j = sum(F_uncon_ex1)+sum(F_uncon_jac1)+sum(F_core1)+...
sum(F_incov1)+sum(F_injac1)+sum(F_st_ex1)+sum(F_st_jac1)-Pj;
%
%%%---------------------------c2----------------------------%%%
%---Existing Unconfined Segment (existing internal cover)
eci_uncon_ex2 = strainjac_fun(c2j,arm_uncon_ex,increj(i),...
ei_cover(13:96,find(Curv_ex==curv_in,1,'first')));
fc_uncon_ex2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon_ex2,'unconfined');
F_uncon_ex2 = force_fun(fc_uncon_ex2,excovX(:,2));
%---Jacketing Unconfined Segment
eci_uncon_jac2 = strainjac_fun(c2j,arm_uncon_jac,increj(i),...
Cover_Strain_jac(:,i))*slip_ratio;
fc_uncon_jac2 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_uncon_jac2,'unconfined');
F_uncon_jac2 = force_fun(fc_uncon_jac2,MULXj(:,2));
%---Core Segment
eci_core2 = strainjac_fun(c2j,arm_core,increj(i),...
ei_core(:,find(Curv_ex==curv_in,1,'first')));
fc_core2 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
218
fco,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_core2,'confined');
F_core2 = force_fun(fc_core2,MCLX(:,2));
%---Inner Cover Segment (existing external cover)
eci_incov2 = strainjac_fun(c2j,arm_incov,increj(i),...
ei_cover(:,find(Curv_ex==curv_in,1,'first')));
fc_incov2 = stress_fun(eco,espall,ecc_incov,ecu_ma_incov,...
fco,fcc_incov,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_incov2,'confined');
F_incov2 = force_fun(fc_incov2,incovX(:,2));
%---Inner Jacket Segment
eci_injac2 = strainjac_fun(c2j,arm_injac,increj(i),...
Injac_Strain(:,i))*slip_ratio;
fc_injac2 = stress_fun(eco,espall,ecc_injac,ecu_ma_injac,...
fco_j,fcc_injac,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_injac2,'confined');
F_injac2 = force_fun(fc_injac2,MCLXj(:,2));
%---Existing Reinforcement
esi_st_ex2 = strainjac_fun(c2j,arm_st_ex,increj(i),...
ei_steel(:,find(Curv_ex==curv_in,1,'first')));
f_st_ex2 = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st_ex2,'steel');
F_st_ex2 = force_fun(f_st_ex2,MLRX(:,2));
%---Jacket Reinforcement
esi_st_jac2 = strainjac_fun(c2j,arm_st_jac,increj(i),...
Steel_Strain_jac(:,i))*slip_ratio;
f_st_jac2 = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
esi_st_jac2,'steel');
F_st_jac2 = force_fun(f_st_jac2,MLRXj(:,2));
%---sum of forces
SUMF_c2j = sum(F_uncon_ex2)+sum(F_uncon_jac2)+sum(F_core2)+...
sum(F_incov2)+sum(F_injac2)+sum(F_st_ex2)+sum(F_st_jac2)-Pj;
%
iterj = 0;
maxiterj = 50;
tolj = 1.0e-3;
while (1)
crj = (c1j+c2j)/2;
iterj = iterj + 1;
%---Existing Unconfined Segment (existing internal cover)
eci_uncon_exr = strainjac_fun(crj,arm_uncon_ex,increj(i),...
ei_cover(13:96,find(Curv_ex==curv_in,1,'first')));
fc_uncon_exr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,eci_uncon_exr,'unconfined');
F_uncon_exr = force_fun(fc_uncon_exr,excovX(:,2));
%---Jacketing Unconfined Segment
eci_uncon_jacr = strainjac_fun(crj,arm_uncon_jac,increj(i),...
Cover_Strain_jac(:,i))*slip_ratio;
fc_uncon_jacr = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_uncon_jacr,'unconfined');
F_uncon_jacr = force_fun(fc_uncon_jacr,MULXj(:,2));
219
%---Core Segment
eci_corer = strainjac_fun(crj,arm_core,increj(i),...
ei_core(:,find(Curv_ex==curv_in,1,'first')));
fc_corer = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_corer,'confined');
F_corer = force_fun(fc_corer,MCLX(:,2));
%---Inner Cover Segment (existing external cover)
eci_incovr = strainjac_fun(crj,arm_incov,increj(i),...
ei_cover(:,find(Curv_ex==curv_in,1,'first')));
fc_incovr = stress_fun(eco,espall,ecc_incov,ecu_ma_incov,...
fco,fcc_incov,esh_j,esu_j,fy_j,fsu_j,Ec,Es_j,...
eci_incovr,'confined');
F_incovr = force_fun(fc_incovr,incovX(:,2));
%---Inner Jacket Segment
eci_injacr = strainjac_fun(crj,arm_injac,increj(i),...
Injac_Strain(:,i))*slip_ratio;
fc_injacr = stress_fun(eco,espall,ecc_injac,ecu_ma_injac,...
fco_j,fcc_injac,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
eci_injacr,'confined');
F_injacr = force_fun(fc_injacr,MCLXj(:,2));
%---Existing Reinforcement
esi_st_exr = strainjac_fun(crj,arm_st_ex,increj(i),...
ei_steel(:,find(Curv_ex==curv_in,1,'first')));
f_st_exr = stress_fun(eco,espall,ecc,ecu_ma,fco,fcc,esh,...
esu,fy,fsu,Ec,Es,esi_st_exr,'steel');
F_st_exr = force_fun(f_st_exr,MLRX(:,2));
%---Jacket Reinforcement
esi_st_jacr = strainjac_fun(crj,arm_st_jac,increj(i),...
Steel_Strain_jac(:,i))*slip_ratio;
f_st_jacr = stress_fun(eco,espall,ecc_core,ecu_ma_core,...
fco_j,fcc_core,esh_j,esu_j,fy_j,fsu_j,Ec_j,Es_j,...
esi_st_jacr,'steel');
F_st_jacr = force_fun(f_st_jacr,MLRXj(:,2));
%---sum of forces
SUMF_crj = sum(F_uncon_exr)+sum(F_uncon_jacr)+sum(F_corer)+....
sum(F_incovr)+sum(F_injacr)+sum(F_st_exr)+sum(F_st_jacr)-Pj;
%
if abs(SUMF_crj) <= tolj || iterj >= maxiterj
break
end
if sign(SUMF_c1j) == sign(SUMF_crj)
c1j = crj;
else
c2j = crj;
end
end
c1j = c1;
c2j = c2;
cj(:,i) = crj;
Cover_Strain_ex(:,i) = eci_uncon_exr;
Cover_Strain_jac(:,i)= eci_uncon_jacr;
Core_Strain_new(:,i) = eci_corer;
220
Incov_Strain(:,i) = eci_incovr;
Injac_Strain(:,i) = eci_injacr;
Steel_Strain_ex(:,i) = esi_st_exr;
Steel_Strain_jac(:,i)= esi_st_jacr;
fc_uncon_ex(:,i) = fc_uncon_exr;
fc_uncon_jac(:,i)= fc_uncon_jacr;
fc_core(:,i) = fc_corer;
fc_incov(:,i)= fc_incovr;
fc_injac(:,i)= fc_injacr;
f_st_ex(:,i) = f_st_exr;
f_st_jac(:,i)= f_st_jacr;
F_UNCON_ex(:,i) = F_uncon_exr;
F_UNCON_jac(:,i)= F_uncon_jacr;
F_CORE(:,i) = F_corer;
F_INCOV(:,i)= F_incovr;
F_INJAC(:,i)= F_injacr;
F_STEEL_ex(:,i) = F_st_exr;
F_STEEL_jac(:,i)= F_st_jacr;
end
%---MOMENT-CURVATURE RELATIONSHIP---
%adding the initial condition for post-jacketing curvature and moment
Curvj = increj*1e3+curv_in;
Momj = (sum((Bj/2-arm_uncon_ex).*F_UNCON_ex)+sum((Bj/2-
arm_uncon_jac).*...
F_UNCON_jac)+sum((Bj/2-arm_core).*F_CORE)+sum((Bj/2-
arm_incov).*F_INCOV)+...
sum((Bj/2-arm_injac).*F_INJAC)+sum((Bj/2-arm_st_ex).*F_STEEL_ex)+...
sum((Bj/2-arm_st_jac).*F_STEEL_jac))./1e6;
Curvj(1) = curv_in; % 1st incre should be initial curvature
Momj(1) = Mi; % 1st incre should be initial moment
%
%---CRACK CONDITION--- (eci = ecr, tension)
ecr_jac = fr_j/Ec_j;
length_crack_jac= find(Cover_Strain_jac(1,:)<=-ecr_jac,1,'first');
Curv_crack_jac = Curvj(length_crack_jac+1);
Mcr_jac = Momj(length_crack_jac+1);
%
%---YIELD CONDITION--- (esi = ey, tension)
Curv_yield_ex = interp1(Steel_Strain_ex(1,:),Curvj,-fy/Es);
%existing rebars
Curv_yield_jac = interp1(Steel_Strain_jac(1,:),Curvj,-fy_j/Es_j);
%jacketing rebars
My_ex = interp1(Curvj,Momj,Curv_yield_ex);
My_jac = interp1(Curvj,Momj,Curv_yield_jac);
%
%---ULTIMATE CONDITION--- (eci = ecu confined or esi = esu, which reach
first)
% ultimate curvature by steel strain
length1ex = find(Steel_Strain_ex(1,:)<=-esu,1,'first'); % find the
first esu
if isempty(length1ex)
length1ex=length(Steel_Strain_ex);
end
221
length1jac = find(Steel_Strain_jac(1,:)<=-esu_j,1,'first'); % find the
first esu
if isempty(length1jac)
length1jac=length(Steel_Strain_jac);
end
Curv_ults_ex = Curvj(length1ex-1); %existing rebars
Curv_ults_jac = Curvj(length1jac-1); %jacketing rebars
%
% ultimate curvature by core strain
length2jac = find(Core_Strain_new(end,:)>=ecu_ma_core,1,'first'); %
find the first ecu_ma_core
if isempty(length2jac)
length2jac=length(Core_Strain_new);
end
Curv_ultc_jac = Curvj(length2jac-1);
%
%ultimate curvature
Curv_ult_jac = min([Curv_ults_ex Curv_ults_jac Curv_ultc_jac]);
M_ult_jac = Momj(min([length1ex length1jac length2jac])-1);
%
%---NOMINAL CONDITION--- (eci = 0.003 or esi = esu_r)
Curv_nom_jac = findcurv_fun(Cover_Strain_jac,Curvj,ecu);
Mne_jac = interp1(Curvj,Momj,Curv_nom_jac);
esaux_jac = interp1(Momj,Steel_Strain_jac(1,:),Mne_jac);
if esaux_jac <= -esu_rj
Mne_jac = interp1(Steel_Strain_jac(1,:),Momj,-esu_r);
end
%
%---Neutral Axis Location---
c_yieldj = interp1(Curvj,cj,Curv_yield_jac);
c_ultj = interp1(Curvj,cj,Curv_ult_jac);
%
otherwise
disp('please define major or minor'); return;
end
%
mcj = min([length1ex,length1jac,length2jac]);
Curv_jac = unique([Curv_ex,Curvj],'stable');
Mom_jac = unique([Mom_ex,Momj],'stable');
%
%---MOMENT-CURVATURE BILINEARIZATION---
[EI_eff_jac,Mp_jac,Curv_yield_eqj] = equivalentyield_fun_jac(Curvj(1:mcj),...
Momj(1:mcj),curv_in,Mi,Curv_yield_jac,My_jac,Curv_ult_jac);
%
%---CURVATURE DUCTILITY---
Curvature_Ductility_jac = Curv_ult_jac/min([Curv_yield_eq,Curv_yield_eqj]);
%
%---PLOT M-C Curve---
%
if Mi < My
Curvbilin = [0 curv_in]; %existing bilinierization with max at initial
Mombilin = [0 Mi]; %existing bilinierization with max at initial
Curvbilin_jac = [curv_in Curv_yield_eqj Curv_ult_jac];
222
Mombilin_jac = [Mi Mp_jac Mp_jac];
%
figure;
plot(Curv_i,Mom_i,'r:',Curvbilin,Mombilin,'k--');
hold on;
plot(Curv_jac,Mom_jac,'m-',Curvbilin_jac,Mombilin_jac,'b--');
hold on;
plot(Curv_crack,Mcr,'kx',curv_in,Mi,'rx',Curv_yield_ex,My_ex,'ko',Curv_yield_jac,M
y_jac,'ro');
hold on;
plot(((Mne_jac-Mi)/EI_eff_jac)+curv_in,Mne_jac,'md');
hold on;
plot(Curv_yield_eqj,Mp_jac,'bs','MarkerEdgeColor','b','MarkerFaceColor','b');
hold on;
plot(Curv_ult_jac,M_ult_jac,'r*');
grid on;
ylabel('Moment [kN-m]','FontSize',10);
xlabel('Curvature [1/m]','FontSize',10);
lgd = legend('Pre-Jacketing MC-Relation','Pre-Jacketing Moment-Curvature
Bilinearization',...
'Post-Jacketing MC-Relation','Post-Jacketing Moment-Curvature
Bilinearization','Location','south');
set(lgd,'color','none');
title('Moment - Curvature Relation RC Hollow Section with
Jacketing','FontSize',12);
%
elseif Mi >= My
Curvbilin= [0,Curv_yield,curv_in]; %pre-jacketing bilinierization with max at
initial
Mombilin = [0,My,Mi]; %pre-jacketing bilinierization with max at
initial
Curvbilin_jac = [curv_in Curv_yield_eqj Curv_ult_jac];
Mombilin_jac = [Mi Mp_jac Mp_jac];
%
figure;
plot(Curv_i,Mom_i,'r:',Curvbilin,Mombilin,'k--');
hold on;
plot(Curv_jac,Mom_jac,'m-',Curvbilin_jac,Mombilin_jac,'b--');
hold on;
plot(Curv_crack,Mcr,'kx',Curv_yield,My,'ko',curv_in,Mi,'rx',Curv_yield_ex,My_ex,'k
o',Curv_yield_jac,My_jac,'ro');
hold on;
plot(((Mne_jac-Mi)/EI_eff_jac)+curv_in,Mne_jac,'md');
hold on;
plot(Curv_yield_eqj,Mp_jac,'bs','MarkerEdgeColor','b','MarkerFaceColor','b');
hold on;
plot(Curv_ult_jac,M_ult_jac,'r*');
grid on;
ylabel('Moment [kN-m]','FontSize',10);
xlabel('Curvature [1/m]','FontSize',10);
223
lgd = legend('Pre-Jacketing MC-Relation','Pre-Jacketing Moment-Curvature
Bilinearization',...
'Post-Jacketing MC-Relation','Post-Jacketing Moment-Curvature
Bilinearization','Location','south');
set(lgd,'color','none');
title('Moment - Curvature Relation RC Hollow Section with
Jacketing','FontSize',12);
else
disp('error in defining Mi and My');
end
%
%---PLOT STRAIN PROFILE---
if dirj == 1
Cover_Strain_ex = [ei_cover(13:116,1:end-1) Cover_Strain_ex];
Cover_Strain_jac = [zeros(size(Cover_Strain_jac,1),length(Curv_ex)-1)
Cover_Strain_jac];
Core_Strain_new = [ei_core(:,1:end-1) Core_Strain_new];
Incov_Strain = [ei_cover(:,1:end-1) Incov_Strain];
Injac_Strain = [zeros(size(Injac_Strain,1),length(Curv_ex)-1)
Injac_Strain];
Steel_Strain_ex = [ei_steel(:,1:end-1) Steel_Strain_ex];
Steel_Strain_jac = [zeros(size(Steel_Strain_jac,1),length(Curv_ex)-1)
Steel_Strain_jac];
%
figure;
subplot(2,2,1)
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_crack_jac,Hj);
title('Strain Profile at Jacketing Crack Point');
subplot(2,2,2);
if isnan(Curv_yield_ex)
Curv_yield_exx = Curv_yield;
else
Curv_yield_exx = Curv_yield_ex;
end
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_yield_exx,Hj);
title('Strain Profile at Existing Yield Reinforcement');
subplot(2,2,3);
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_yield_jac,Hj);
title('Strain Profile at Jacketing Yield Reinforcement');
subplot(2,2,4);
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_ult_jac,Hj);
224
title('Strain Profile at Ultimate Point');
else
Cover_Strain_ex = [ei_cover(13:96,1:end-1) Cover_Strain_ex];
Cover_Strain_jac = [zeros(size(Cover_Strain_jac,1),length(Curv_ex)-1)
Cover_Strain_jac];
Core_Strain_new = [ei_core(:,1:end-1) Core_Strain_new];
Incov_Strain = [ei_cover(:,1:end-1) Incov_Strain];
Injac_Strain = [zeros(size(Injac_Strain,1),length(Curv_ex)-1)
Injac_Strain];
Steel_Strain_ex = [ei_steel(:,1:end-1) Steel_Strain_ex];
Steel_Strain_jac = [zeros(size(Steel_Strain_jac,1),length(Curv_ex)-1)
Steel_Strain_jac];
%
figure;
subplot(2,2,1)
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_crack_jac,Bj);
title('Strain Profile at Jacketing Crack Point');
subplot(2,2,2);
if isnan(Curv_yield_ex)
Curv_yield_exx = Curv_yield;
else
Curv_yield_exx = Curv_yield_ex;
end
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_yield_exx,Bj);
title('Strain Profile at Existing Yield Reinforcement');
subplot(2,2,3);
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_yield_jac,Bj);
title('Strain Profile at Jacketing Yield Reinforcement');
subplot(2,2,4);
strainprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,Cover_Strain_ex,Cover_Strain_jac,Core_Strain_new,Incov_Strain,Inja
c_Strain,Steel_Strain_ex,Steel_Strain_jac,Curv_ex,Curv_jac,Curv_ult_jac,Bj);
title('Strain Profile at Ultimate Point');
end
%
%---PLOT STRESS PROFILE---
fi_cover = findstrain_newfun(Curv_i,fc_uncon,Curv_ex);
fi_core = findstrain_newfun(Curv_i,fc_conf,Curv_ex);
fi_steel = findstrain_newfun(Curv_i,f_st,Curv_ex);
%
if dirj == 1
fc_uncon_ex = [fi_cover(13:116,1:end-1) fc_uncon_ex];
fc_uncon_jac = [zeros(size(fc_uncon_jac,1),length(Curv_ex)-1) fc_uncon_jac];
225
fc_core = [fi_core(:,1:end-1) fc_core];
fc_incov = [fi_cover(:,1:end-1) fc_incov];
fc_injac = [zeros(size(fc_injac,1),length(Curv_ex)-1) fc_injac];
f_st_ex = [fi_steel(:,1:end-1) f_st_ex];
f_st_jac = [zeros(size(f_st_jac,1),length(Curv_ex)-1) f_st_jac];
%
figure;
subplot(2,2,1)
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_crack_jac,Hj);
title('Stress Profile at Jacketing Crack Point');
subplot(2,2,2);
if isnan(Curv_yield_ex)
Curv_yield_exx = Curv_yield;
else
Curv_yield_exx = Curv_yield_ex;
end
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_yield_exx,Hj);
title('Stress Profile at Existing Yield Reinforcement');
subplot(2,2,3);
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_yield_jac,Hj);
title('Stress Profile at Jacketing Yield Reinforcement');
subplot(2,2,4);
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_ult_jac,Hj);
title('Stress Profile at Ultimate Point');
else
fc_uncon_ex = [fi_cover(13:96,1:end-1) fc_uncon_ex];
fc_uncon_jac = [zeros(size(fc_uncon_jac,1),length(Curv_ex)-1) fc_uncon_jac];
fc_core = [fi_core(:,1:end-1) fc_core];
fc_incov = [fi_cover(:,1:end-1) fc_incov];
fc_injac = [zeros(size(fc_injac,1),length(Curv_ex)-1) fc_injac];
f_st_ex = [fi_steel(:,1:end-1) f_st_ex];
f_st_jac = [zeros(size(f_st_jac,1),length(Curv_ex)-1) f_st_jac];
%
figure;
subplot(2,2,1)
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_crack_jac,Bj);
title('Stress Profile at Jacketing Crack Point');
subplot(2,2,2);
226
if isnan(Curv_yield_ex)
Curv_yield_exx = Curv_yield;
else
Curv_yield_exx = Curv_yield_ex;
end
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_yield_exx,Bj);
title('Stress Profile at Existing Yield Reinforcement');
subplot(2,2,3);
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_yield_jac,Bj);
title('Stress Profile at Jacketing Yield Reinforcement');
subplot(2,2,4);
stressprofilejac_fun(arm_uncon_ex,arm_uncon_jac,arm_core,arm_incov,arm_injac,arm_s
t_ex,arm_st_jac,fc_uncon_ex,fc_uncon_jac,fc_core,fc_incov,fc_injac,f_st_ex,f_st_ja
c,Curv_jac,Curv_ult_jac,Bj);
title('Stress Profile at Ultimate Point');
end
%
%---MOMENT-ROTATION---
%---Plastic Hinge Length (Priestley et al.)
switch lower(bending)
case 'single'
Lp_jac = max(0.08*LBE+0.022*fy_j*Dbj,0.044*fy_j*Dbj); % Plastic hinge
length
case 'double'
Lp_jac = max(0.08*LBE+0.022*fy_j*Dbj,0.044*fy_j*Dbj); % Plastic hinge
length
otherwise
disp('bending should be specified as single or double');
end
%
%---Rotation (theta)
%
if Mi < My
Theta_pj = Lp_jac/1e3*(Curv_ult_jac-Curv_yield_eqj); % plastic rotation
Theta_yieldj = Lp_jac/1e3*Curv_yield_eqj; % yield rotation
Theta_ultj = Lp_jac/1e3*Curv_ult_jac; % ultimate
rotation
Theta_20j = 1.2*Theta_pj; % rotation at
0.2Mp
Theta_50j = 1.5*Theta_pj; % rotation at
0.2Mp
CPj = Theta_pj;
LSj = 0.75*(CPj-Theta_yieldj)+Theta_yieldj;
IOj = (LSj-Theta_yieldj)/3+Theta_yieldj;
slopej = (Mp_jac-Mne_jac)/(Theta_pj-Theta_yieldj);
%
227
elseif Mi >= My
Theta_pj = Lp_jac/1e3*(Curv_ult_jac-Curv_yield_eqj); % plastic rotation
Theta_yieldj = Lp_jac/1e3*Curv_yield_eqj; % yield rotation
Theta_ultj = Lp_jac/1e3*Curv_ult_jac; % ultimate
rotation
Theta_20j = 1.2*Theta_pj; % rotation at
0.2Mp
Theta_50j = 1.5*Theta_pj; % rotation at
0.2Mp
theta_in = Lp_jac/1e3*curv_in; % initial rotation
%normalized rotation from initial rotation
Theta_pj = Theta_pj-theta_in; % normalized
plastic rotation
Theta_yieldj = Theta_yieldj-theta_in; % normalized yield
rotation
Theta_ultj = Theta_ultj-theta_in; % normalized
ultimate rotation
Theta_20j = Theta_20j-theta_in; % rotation at
0.2Mp
Theta_50j = Theta_50j-theta_in; % rotation at
0.2Mp
CPj = Theta_pj;
LSj = 0.75*(CPj-Theta_yieldj)+Theta_yieldj;
IOj = (LSj-Theta_yieldj)/3+Theta_yieldj;
M_B = Mne_jac-Mi;
M_C = Mp_jac-Mi;
slopej = (M_C-M_B)/(Theta_pj-Theta_yieldj);
else
disp('error in defining Mi and My');
end
%
%---Plot M-Theta Curve
if Mi < My
figure;
plot([0 Theta_yieldj Theta_pj Theta_20j Theta_50j],[0 Mne_jac Mp_jac
0.2*Mp_jac 0.2*Mp_jac],'k-s');
hold on;
plot(IOj,(IOj-Theta_yieldj)*slopej+Mne_jac,'k+');
hold on;
plot(LSj,(LSj-Theta_yieldj)*slopej+Mne_jac,'k+');
grid on;
ylabel('Moment [kN-m]','FontSize',10);
xlabel('\theta [rad]','FontSize',10);
legend('Moment - Rotation','Location','best');
title('Generalized Load-Deformation Relation','FontSize',12);
elseif Mi >= My
figure;
plot([0 Theta_yieldj Theta_pj Theta_20j Theta_50j],[0 M_B M_C 0.2*M_C
0.2*M_C],'k-s');
hold on;
plot(IOj,(IOj-Theta_yieldj)*slopej+M_B,'k+');
hold on;
plot(LSj,(LSj-Theta_yieldj)*slopej+M_B,'k+');
228
grid on;
ylabel('Moment [kN-m]','FontSize',10);
xlabel('\theta [rad]','FontSize',10);
legend('Moment - Rotation','Location','best');
title('Generalized Load-Deformation Relation','FontSize',12);
else
disp('error in defining Mi and My');
end
%
%---Displacement
Disp_yield_jac= Curv_yield_eqj*(LBE/1e3)^2/3; % yield displacement
Disp_ult_jac = Curv_ult_jac*(LBE/1e3)^2/3; % ultimate
displacement
Disp_20_jac = 1.2*Disp_ult_jac; % ultimate
displacement
Disp_50_jac = 1.5*Disp_ult_jac; % ultimate
displacement
229
Mni_jac = zeros(1,size(z_jac,2)); % pre-allocated vector of
moments
for ii = 1:length(z_jac)
%---Existing Unconfined Segment
ec_pm_uncon_ex = strainjac_fun(yc_jac(ii),arm_uncon_ex,yc_curv_jac(ii),...
ei_cover(13:116,find(Curv_ex==curv_in,1,'first')));
fc_pm_uncon_ex =
stress_fun_interp(ecun_mu,fcun_mu,ec_pm_uncon_ex,'unconfined');
F_pm_uncon_ex = force_fun(fc_pm_uncon_ex,excovY(:,2));
%---Jacketing Unconfined Segment
ec_pm_uncon_jac = strain_fun(yc_jac(ii),arm_uncon_jac,yc_curv_jac(ii));
fc_pm_uncon_jac =
stress_fun_interp(ecun_muj,fcun_muj,ec_pm_uncon_jac,'unconfined');
F_pm_uncon_jac = force_fun(fc_pm_uncon_jac,MULYj(:,2));
%---Core Segment
ec_pm_core_jac = strainjac_fun(yc_jac(ii),arm_core,yc_curv_jac(ii),...
ei_core(:,find(Curv_ex==curv_in,1,'first')));
fc_pm_core_jac =
stress_fun_interp(ecc_ma_core,fcc_ma_core,ec_pm_core_jac,'confined');
F_pm_core_jac = force_fun(fc_pm_core_jac,MCLY(:,2));
%---Inner Cover Segment
ec_pm_incov_jac = strainjac_fun(yc_jac(ii),arm_incov,yc_curv_jac(ii),...
ei_cover(:,find(Curv_ex==curv_in,1,'first')));
fc_pm_incov_jac =
stress_fun_interp(ecc_ma_incov,fcc_ma_incov,ec_pm_incov_jac,'confined');
F_pm_incov_jac = force_fun(fc_pm_incov_jac,incovY(:,2));
%---Inner Jacket Segment
ec_pm_injac = strain_fun(yc_jac(ii),arm_injac,yc_curv_jac(ii));
fc_pm_injac =
stress_fun_interp(ecc_ma_injac,fcc_ma_injac,ec_pm_injac,'confined');
F_pm_injac = force_fun(fc_pm_injac,MCLYj(:,2));
%---Existing Reinforcement
es_pm_st_ex = strainjac_fun(yc_jac(ii),arm_st_ex,yc_curv_jac(ii),...
ei_steel(:,find(Curv_ex==curv_in,1,'first')));
f_pm_st_ex = stress_fun_interp(es,fs,es_pm_st_ex,'steel');
F_pm_st_ex = pmsteelforce_fun(fco,f_pm_st_ex,MLRY(:,2));
%---Jacket Reinforcement
es_pm_st_jac = strain_fun(yc_jac(ii),arm_st_jac,yc_curv_jac(ii));
f_pm_st_jac = stress_fun_interp(esj,fsj,es_pm_st_jac,'steel');
F_pm_st_jac = pmsteelforce_fun(fco_j,f_pm_st_jac,MLRYj(:,2));
%---Pn,Mn
Pni_jac(ii) =
(sum(F_pm_uncon_ex)+sum(F_pm_uncon_jac)+sum(F_pm_core_jac)+...
sum(F_pm_incov_jac)+sum(F_pm_injac)+sum(F_pm_st_ex)+sum(F_pm_st_jac))/1e3;
Mni_jac(ii) = (sum((Hj/2-arm_uncon_ex).*F_pm_uncon_ex)+sum((Hj/2-
arm_uncon_jac).*...
F_pm_uncon_jac)+sum((Hj/2-arm_core).*F_pm_core_jac)+sum((Hj/2-
arm_incov).*F_pm_incov_jac)+...
sum((Hj/2-arm_injac).*F_pm_injac)+sum((Hj/2-
arm_st_ex).*F_pm_st_ex)+...
sum((Hj/2-arm_st_jac).*F_pm_st_jac))./1e6;
end
230
else
dj = Bj-tcj-dtj-Dbj/2;
xc_jac = (ecu./(ecu+z_jac))*dj; % vector of neutral axis
xc_curv_jac = ecu./xc_jac; % vector of curvature
Pni_jac = zeros(1,size(z_jac,2)); % pre-allocated vector of
axial forces
Mni_jac = zeros(1,size(z_jac,2)); % pre-allocated vector of
moments
for ii = 1:length(z_jac)
%---Unconfined Segment
%---Existing Unconfined Segment
ec_pm_uncon_ex = strainjac_fun(xc_jac(ii),arm_uncon_ex,xc_curv_jac(ii),...
ei_cover(13:96,find(Curv_ex==curv_in2,1,'first')));
fc_pm_uncon_ex =
stress_fun_interp(ecun_mu,fcun_mu,ec_pm_uncon_ex,'unconfined');
F_pm_uncon_ex = force_fun(fc_pm_uncon_ex,excovX(:,2));
%---Jacketing Unconfined Segment
ec_pm_uncon_jac = strain_fun(xc_jac(ii),arm_uncon_jac,xc_curv_jac(ii));
fc_pm_uncon_jac =
stress_fun_interp(ecun_muj,fcun_muj,ec_pm_uncon_jac,'unconfined');
F_pm_uncon_jac = force_fun(fc_pm_uncon_jac,MULXj(:,2));
%---Core Segment
ec_pm_core_jac = strainjac_fun(xc_jac(ii),arm_core,xc_curv_jac(ii),...
ei_core(:,find(Curv_ex==curv_in2,1,'first')));
fc_pm_core_jac =
stress_fun_interp(ecc_ma_core,fcc_ma_core,ec_pm_core_jac,'confined');
F_pm_core_jac = force_fun(fc_pm_core_jac,MCLX(:,2));
%---Inner Cover Segment
ec_pm_incov_jac = strainjac_fun(xc_jac(ii),arm_incov,xc_curv_jac(ii),...
ei_cover(:,find(Curv_ex==curv_in2,1,'first')));
fc_pm_incov_jac =
stress_fun_interp(ecc_ma_incov,fcc_ma_incov,ec_pm_incov_jac,'confined');
F_pm_incov_jac = force_fun(fc_pm_incov_jac,incovX(:,2));
%---Inner Jacket Segment
ec_pm_injac = strain_fun(xc_jac(ii),arm_injac,xc_curv_jac(ii));
fc_pm_injac =
stress_fun_interp(ecc_ma_injac,fcc_ma_injac,ec_pm_injac,'confined');
F_pm_injac = force_fun(fc_pm_injac,MCLXj(:,2));
%---Existing Reinforcement
es_pm_st_ex = strainjac_fun(xc_jac(ii),arm_st_ex,xc_curv_jac(ii),...
ei_steel(:,find(Curv_ex==curv_in2,1,'first')));
f_pm_st_ex = stress_fun_interp(es,fs,es_pm_st_ex,'steel');
F_pm_st_ex = pmsteelforce_fun(fco,f_pm_st_ex,MLRX(:,2));
%---Jacket Reinforcement
es_pm_st_jac = strain_fun(xc_jac(ii),arm_st_jac,xc_curv_jac(ii));
f_pm_st_jac = stress_fun_interp(esj,fsj,es_pm_st_jac,'steel');
F_pm_st_jac = pmsteelforce_fun(fco_j,f_pm_st_jac,MLRXj(:,2));
%---Pn,Mn
Pni_jac(ii) =
(sum(F_pm_uncon_ex)+sum(F_pm_uncon_jac)+sum(F_pm_core_jac)+...
sum(F_pm_incov_jac)+sum(F_pm_injac)+sum(F_pm_st_ex)+sum(F_pm_st_jac))/1e3;
231
Mni_jac(ii) = (sum((Hj/2-arm_uncon_ex).*F_pm_uncon_ex)+sum((Hj/2-
arm_uncon_jac).*...
F_pm_uncon_jac)+sum((Hj/2-arm_core).*F_pm_core_jac)+sum((Hj/2-
arm_incov).*F_pm_incov_jac)+...
sum((Hj/2-arm_injac).*F_pm_injac)+sum((Hj/2-
arm_st_ex).*F_pm_st_ex)+...
sum((Hj/2-arm_st_jac).*F_pm_st_jac))./1e6;
end
end
%
P_curve_jac = [Pco_jac Pni_jac -Pto_jac]; % axial forces interaction
data
M_curve_jac = [0 Mni_jac 0]; % moment interaction data
P_bal_jac = Pni_jac(Mni_jac==max(Mni_jac)); % axial force at balanced
failure
M_bal_jac = max(Mni_jac); % moment at balanced
failure
M_0_jac = interp1(P_curve_jac,M_curve_jac,0); % moment at P=0
%
%---Pushover Data (PMM-Interaction Curves) --> for input in MIDAS CIVIL Hinges
%---Compression
PMc_Aj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;P_bal_jac+0.2*(Pco_jac-
P_bal_jac),P_bal_jac+0.2*(Pco_jac-P_bal_jac)]);
PMc_Bj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;P_bal_jac+0.4*(Pco_jac-
P_bal_jac),P_bal_jac+0.4*(Pco_jac-P_bal_jac)]);
PMc_Cj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;P_bal_jac+0.6*(Pco_jac-
P_bal_jac),P_bal_jac+0.6*(Pco_jac-P_bal_jac)]);
PMc_Dj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;P_bal_jac+0.8*(Pco_jac-
P_bal_jac),P_bal_jac+0.8*(Pco_jac-P_bal_jac)]);
%---Tension
PMt_Aj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;-
Pto_jac+0.2*(Pto_jac+P_bal_jac),-Pto_jac+0.2*(Pto_jac+P_bal_jac)]);
PMt_Bj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;-
Pto_jac+0.4*(Pto_jac+P_bal_jac),-Pto_jac+0.4*(Pto_jac+P_bal_jac)]);
PMt_Cj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;-
Pto_jac+0.6*(Pto_jac+P_bal_jac),-Pto_jac+0.6*(Pto_jac+P_bal_jac)]);
PMt_Dj = InterX([M_curve_jac;P_curve_jac],[0,M_bal_jac;-
Pto_jac+0.8*(Pto_jac+P_bal_jac),-Pto_jac+0.8*(Pto_jac+P_bal_jac)]);
PM_Interaction_jac =
[[0,Pco_jac];PMc_Dj';PMc_Cj';PMc_Bj';PMc_Aj';M_bal_jac,P_bal_jac;PMt_Dj';...
PMt_Cj';PMt_Bj';PMt_Aj';[0,-Pto_jac]];
PM_Interaction_ratio_jac =
[PM_Interaction_jac(1:end,1)/M_bal_jac,PM_Interaction_jac(1:end,2)/Pco_jac];
%
%---Plot PMM Interaction Diagram
figure;
%plot(M_curve,P_curve,'*','MarkerIndices',1:length(M_curve));
%hold on;
plot(M_curve_jac,P_curve_jac,'k-
',0,Pco_jac,'rx',M_bal_jac,P_bal_jac,'r+',M_0_jac,0,'ro',0,-Pto_jac,'rx');
hold on;
plot(PM_Interaction_jac(1:end,1),PM_Interaction_jac(1:end,2));
hold on;
232
plot(PMc_Aj(1,1),PMc_Aj(2,1),'bo',PMt_Aj(1,1),PMt_Aj(2,1),'bx');
hold on;
plot(PMc_Bj(1,1),PMc_Bj(2,1),'mo',PMt_Bj(1,1),PMt_Bj(2,1),'mx');
hold on;
plot(PMc_Cj(1,1),PMc_Cj(2,1),'ko',PMt_Cj(1,1),PMt_Cj(2,1),'kx');
hold on;
plot(PMc_Dj(1,1),PMc_Dj(2,1),'go',PMt_Dj(1,1),PMt_Dj(2,1),'gx');
grid on;
ylabel('Pn [kN]','FontSize',10);
xlabel('Mn [kN-m]','FontSize',10);
lgd = legend('PM Interaction Curve','Full Compression','Balanced','at P=0',...
'Full Tension','Pushover/NLTHA PM Interaction
Curve','A(c)','A(t)','B(c)','B(t)','C(c)',...
'C(t)','D(c)','D(t)','Location','southeastoutside');
title(lgd,'Legend:');
title('P-M Interaction Diagram','FontSize',12);
233
Lampiran C Properti Inelastik Elemen Struktur
235
Momen-rotasi pilar eksisting – arah minor
236
Momen-rotasi pilar jacketing beton – top-i, arah major
237
Momen-rotasi pilar tanpa perkuatan jacketing beton – base-j, arah major
238
C.2.3. Elemen dengan perkuatan jacketing baja
239
Momen-rotasi pilar jacketing baja – top-i, arah minor
C.3. Pilar P3
C.3.1. Bagian Bawah
240
C.3.2. Bagian atas
C.4. Pilar P4
241
Momen-rotasi pilar eksisting – arah minor
242
C.5. Pierhead
Momen-rotasi pierhead
C.6. PCI-Girder
243
Momen-rotasi PCI-Girder bentang P4-P5
244