Jumat, 10 Mei 2024

tahap upgrade versi Python pada module glassBox

pada tahun terdahulu sya banyak membuat module desain struktural yg dinamakan glassBox, karena Python yg digunakan versi lama maka diperlukan upgrades untuk peningkatan performances dan sya perhatikan sekilas sudah lebih cepat dibanding sebelumnya. Selain terhadap versi bahasa pemrograman yg digunakan maka perlu juga untuk peraturan perencanaan terbaru, karena selama ini bermigrasi kepada math paper based yaitu SMath Studio.

.


.


.

sya terapkan pada salah satu modul perencanaan balok pesegi beton bertulang ternyata cukup cepat migrasi dari Python versi 2.x menjadi versi 3.x, tidak banyak berubah hanya pada tambahan tanda kurung menampilkan hasil dilayar saja seeprti yg sudah sya posting sebelumnya.

.


;

pada module program diagram interaksi kolom beton bertulang dua, tiga, empat dan lima lapis,

.

.

.


.

.

.


.
pada module program pelat beton bertulang
.

.

.

.
cara sya menampilkan hasil atau style format diatas lebih mirip bahasa  C/C++ atau Fortran, sedangkan jika ingin seperti C# atau Calcpad juga dapat disesuaikan seperti berikut. Tampilan subtitusi variabel terhadap persamaan dapat diberikan opsi pilihan tampil atau tidak untuk mempersingkat, style yg terakhir kelihatannya lebih baik karena rumus dan hasil dibuat terpisah sehingga cukup jelas namun tetap ringkas.
.

.
diatas sya menggunakan Python IDE yaitu Thonny yg hanya cocok untuk pemula, untuk yg lebih advanced ada Wing IDE 101/Personal atau Visual Studio Code namun sya coba agak sulit untuk dukungan IronPython. Sebagai pilihan ada Geany yg pernah dibahas sebelumnya dan dapat dilakukan costumized untuk tujuan tersebut seperti berikut bekerja dengan interpreter yaitu IronPython versi 3.4, sehingga penggunaan bahasa dan library dotNet juga dapat langsung digunakan.
.

.


.
kelihatannya format keluaran dengan fungsi round pada IronPython 3.4 masih terdapat bugs tampilannya tidak sesuai, hal ini tidak terjadi pada Python 3.11 sehingga baiknya menggunakan format tampilan gaya lama klasik. Migrasi script menjadi code bahasa Ansi C/C++ atau Fortran juga akan lebih mudah adaptasinya. 
.

.

.


.

Senin, 06 Mei 2024

pencabangan dan iterasi pada Calcpad

.

.

dalam perhitungan perencanaan desain struktural pastinya banyak didapati pencabangan dari suatu kondisi cara analitis, sedangkan iterasi biasanya adalah untuk metode numerik mencari pemenuhan suatu kondisi. Kedua fungsi tersebut sudah tersedia dalam banyak bahasa pemrograma seperti Python, C/C++ atau C#. Program bantu perhitungan berjenis scripting seperti Calcpad juga menyediakan, tampilannya dapat disembunyikan jika terlihat panjang dan membuat tidak fokus.

.

.


.

dibawah adalah contoh penggunaan iterasi atau looping, namun belum berhasil dan ini mungkin akibat hierarki urutan padahal kelihatannya sudah sesuai dengan Python dulu yg pernah sya buat. 

.


.


.
setelah ditelusuri ulang tenyata hal tersebut akibat penentuan default sudut pada Calpad yaitu dalam degrees (D) bukan radians(R) setelah opsi tersebut disesuaikan maka akan berhasil dengan cukup cepat walau masih versi lama yaitu 5.8.9 berjalan pada MS Windows 7 karena ketergantungan NetFramework versi tertinggi yg didukung. Pastinya updates untuk Calcpad versi terbaru akan berjalan jauh lebih cepat untuk proses iterasi, dapat berguna misal untuk metode numerik kolom biaksial beton bertulang bentuk sederhana seperti pesegi dengan prinsip kesetimbangan gaya tekan beton dengan gaya tarik tulangan. Kelihatannya akan cukup menarik karena walaupun cara numerik namun langkah perhitungan lain tetap dapat ditampilkan sehingga terlihat seperti analitis. 
.

.
fungsi iterasi juga dapat digunakan untuk generate tabel seperti contoh berikut,
.

.


.
sebagai catatan tambahan dibawah adalah tahapan sya mengkonversi dari lembar kerja SMath Studio menjadikan lembar kerja perhitungan Calcpad dalam hal ini sya menggunakan transisi format LaTeX.
.

.

.
untuk dapat lebih cepat dalam editing maka perlu sedikit familiar dengan bahasa tersebut, sehingga memudahkan dalam penggunaan find and replace pada text editor seperti SciTE.
.


.

.
dokumen LaTeX hasil konversi dari SMath Studio secara default sudah menampilkan hasil angka perhitungan maka perlu dihapus sedangkan satuan hasil tetap digunakan. 
.

.
berikut hasilnya setelah dilakukan sedikit editing dalam tahap akhir, jauh lebih baik dan cepat dibandingkan mengetik atau membuat ulang serta menjaga konsitensi rumus menghindari kesalahan ketik. 
.

.
Kelihatannya juga konversi lain dari bahasa scripting seperti Python masih terjangkau dan cukup mudah untuk dilakukan konversi.  Perbedaan pada satuan atau units yg mana script yg sebelumnya sya buat tidak menggunakan library khusus sehingga untuk kemudahan tahap awal pada Calcpad adalah disamakan .
.

.

.

.
bahasa script pada Calcpad juga cukup sederhana karena berbasis plain text kecuali pada Greek symbol, dapat digunakan sebagai mock up untuk konversi lanjut program dengan performance kecepatan tinggi seperti C++,Fortran atau C# dengan perubahan adaptasi yg tidak terlalu banyak. Kelebihannya adalah rumus yg dijaga konsitensinya serta pengecekan ulang yg mudah. 

Sabtu, 04 Mei 2024

model material pada diagram interaksi kolom beton bertulang

.

.

program analisa penampang beton bertulang dan baja komposit saat ini menyediakan banyak pilihan pada pemodelan material untuk beton dan baja tulangan, yg paling sederhana dan biasa digunakan pada cara analitis perhitungan tangan adalah blok beton pesegi Whitney dan elasto plastis ideal mengabaikan strain hardening. Model tingkat lanjut seperti blok beton parabolik, kuat tarik beton  dan multilinear baja dapat digunakan, pengguna cukup mudah hanya dengan menentukan beberapa parameter tambahan untuk model material tersebut. Program dengan feature advanced tersebut diantaranya adalah ETABS/SAP2000, OpenSees, Response 2000, spColumn, CSiCol, dll. Diatas adalah contoh perbandingan plot diagram interaksi kolom cara analitis dan hasil keluaran Response 2000 pada kondisi kuat nominal belum termasuk faktor reduksi kekuatan.

.

.

hasil dibawah adalah model material baja tulangan dengan mengabakan strain hardening, terlihat hasilnya hampir sama dengan analitis pada kondisi rasio tekan kecil sampai kondisi tarik dominan. Pada kondisi dominan tekan terdapat perbedaan model beton blok pesegi Whitney dengan model parabolik. Dilampirkan juga plot grafik diagram interaksi hasil anlitis untuk kuat nominal dan kuat rencana yg sya ambil dari buku ajar beton bertulang.

.


.

.

.

(source: Ali Asroni, 2010)
.
program Response 2000 mempunyai kekurangan untuk analisa kolom beton karena keterbatasannya pada kondisi Biaxial walau untuk kolom pesegi dengan tulangan merata kedua sisi sudah cukup dengan pendekatan dari Bresler dan Parme. Program bantu lain seperti OpenSees atau lainnya diperlukan untuk kondisi biaksial dan juga baja komposit, data masukan dan hasil ditunjukan sebagai berikut.
.

.

.

.

.
sya ada yg terlewat pada saat menentukan regangan beton ultimit diatas, seharusnya bernilai 0.003 jika mengikuti peraturan negara Indonesia dan Amerika. Nilai default sebesar 0.0035 biasa digunakan pada peraturan negara Eropa.
.

.
.
biasanya program analisa penampang beton bertulang dan komposit dengan material nonlinear menyediakan keluaaran grafik hubungan momen kurvatur, dapat berguna untuk mengetahui tingkat daktilitas pengaruh rasio beban aksial tekan seperti hasil dibawah kondisi beban konstan -1000kN
.
.
berikut hasil dengan perbaikan kesesuian nilai regangan ultimit beton yaitu sebesar 0.003 yang menunjukan sedikit lebih mendekati dari sebelumnya. 
.


.
selanjutnya jika ingin didapat kuat rencana (design strength) maka perlu menggunakan reduksi kuat material (material strength factors) pada baja tulangan dan beton. Terlihat saat dibandingkan dengan rujukan cara analitis yg mengacu peraturan beton SNI-1726-2002 hasilnya sedikit lebih besar dikarenakan pada daerah dominan tarik nilai faktor reduksi yg dgunakan adalah sebesar 0.8 sedangkan peraturan terbaru sebesar 0.9, nilai yg sya gunakan default CSA A23.3-14 yaitu sebesar 0.85. Hal ini sudah cukup meeberikan gambaran perhitungan kuat desain kolom menggunakan faktor reduksi kekuatan (strength reduction fator) cara analitis dan reduksi kuat material (material strength factors) pada cara numerik program analisa penaampang nonlinear seperti OpenSees, Response 2000, dll.
.


.
.
untuk sengkang biasa bukan spiral ACI 318 merekomendasikan nilai faktor reduksi kuat material untuk beton yaitu sebesar 0.60, sedangkan untuk baja tulangan sebesar 0.90 namun pada SNI 2847 adalah sebesar 0.80. Berikut plot hasil penggunaan nilai faktor tersebut dibandingkan dengan analitis yg menunjukkan lebih mendekati hasil sebelumnya.
.


.
.

sedikit catatan saat sya membaca sebuah artikel terkait, penggunaan model blok tekan beton pada program OpenSees dapat dibuat hasilnya mendekati blok tekan Whitney, hal ini perlu ditinjau lanjut mengenai pendekatannya model concrete01 walau sekilas terlihat dengan menentukan concrete crushing strength (fpcu) adalah nul dan lainnya adalah kondisi batasaan rasio tekan sebesar 85% 
.


.