{"id":19249,"date":"2026-10-12T06:26:49","date_gmt":"2026-10-12T06:26:49","guid":{"rendered":"https:\/\/ccitonline.com\/wp\/?p=19249"},"modified":"2026-10-12T06:26:49","modified_gmt":"2026-10-12T06:26:49","slug":"tugas-besar-komputasi-teknik-tasya-ulya-2306266104","status":"publish","type":"post","link":"https:\/\/ccitonline.com\/wp\/2026\/10\/12\/tugas-besar-komputasi-teknik-tasya-ulya-2306266104\/","title":{"rendered":"Tugas Besar Komputasi Teknik &#8211; Tasya Ulya (2306266104)"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>A.Judul Proyek<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pengembangan dan Analisis Kalkulator Energy Efficiency Existing Ship Index (EEXI) Berbasis Web .<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>B. Nama Lengkap Penulis<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tasya Ulya &#8211; 2306266104<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C. Afiliasi<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Departemen Teknik Mesin, Fakultas Teknik, Universitas Indonesia<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>D. Abstrak<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Energy Efficiency Existing Ship Index (EEXI) merupakan salah satu indikator yang digunakan untuk menilai efisiensi energi kapal yang telah beroperasi. Perhitungan EEXI melibatkan berbagai parameter teknis, seperti kapasitas kapal, kecepatan referensi, daya mesin, konsumsi bahan bakar spesifik, serta faktor emisi karbon. Seiring berkembangnya teknologi digital, kalkulator EEXI berbasis web dapat membantu pengguna melakukan perhitungan secara lebih praktis. Namun, kalkulator yang hanya berfokus pada hasil akhir berpotensi membatasi pemahaman pengguna terhadap proses perhitungan, pengaruh setiap parameter, dan alternatif peningkatan efisiensi kapal.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Proyek ini bertujuan mengembangkan kalkulator EEXI berbasis web dengan fitur yang lebih komprehensif, meliputi perhitungan otomatis, validasi masukan, penjelasan tahapan perhitungan, analisis sensitivitas parameter, serta perbandingan beberapa skenario peningkatan efisiensi energi kapal. Pengembangan dilakukan menggunakan pendekatan DAI5 yang mengintegrasikan kesadaran, niat, pemikiran awal, idealisasi, instruksi, dan implementasi dalam proses penyelesaian masalah. Hasil yang diharapkan adalah sebuah prototipe kalkulator yang tidak hanya menghasilkan nilai EEXI, tetapi juga mendukung pemahaman teknis dan evaluasi alternatif penghematan energi kapal. Akurasi hasil akan dievaluasi melalui pembandingan dengan perhitungan acuan berdasarkan ketentuan yang relevan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kata kunci: EEXI, efisiensi energi kapal, kalkulator berbasis web, analisis sensitivitas, metode numerik, DAI5.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>E. Deklarasi Penulis<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Deep Awareness (Kesadaran Mendalam)<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dalam mengembangkan kalkulator EEXI, saya menyadari bahwa perhitungan efisiensi energi kapal tidak hanya berkaitan dengan penerapan persamaan matematis, tetapi juga dengan tanggung jawab dalam menghasilkan informasi teknis yang akurat dan dapat dipahami. Kesalahan dalam memasukkan parameter atau menerapkan persamaan dapat menghasilkan nilai yang tidak sesuai dan berpotensi menimbulkan kesimpulan yang keliru.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Saya juga menyadari bahwa teknologi komputasi seharusnya tidak hanya digunakan untuk mempercepat perhitungan, tetapi juga untuk membantu manusia memahami suatu permasalahan secara lebih baik. Oleh karena itu, pengembangan kalkulator ini diarahkan untuk mengintegrasikan ketelitian perhitungan, transparansi proses, dan tanggung jawab dalam penggunaan hasil.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Niat Kegiatan Proyek<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Niat dari proyek ini adalah mengembangkan kalkulator EEXI berbasis web yang dapat melakukan perhitungan secara otomatis sekaligus memberikan pemahaman yang lebih mendalam mengenai faktor-faktor yang memengaruhi efisiensi energi kapal.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kalkulator akan dirancang dengan fitur yang memungkinkan pengguna melihat tahapan perhitungan, mengetahui kontribusi parameter terhadap hasil EEXI, serta membandingkan hasil dari beberapa skenario perubahan parameter atau strategi peningkatan efisiensi. Dengan demikian, proyek ini diharapkan dapat menjadi sarana pembelajaran dan evaluasi awal bagi pengguna dalam memahami efisiensi energi kapal.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>F. Pendahuluan<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Energy Efficiency Existing Ship Index (EEXI) merupakan indikator efisiensi energi yang diterapkan pada kapal yang telah beroperasi. Perhitungan EEXI digunakan untuk menilai efisiensi energi kapal berdasarkan karakteristik teknis dan kemampuan transportasinya. Dalam proses perhitungannya, sejumlah parameter perlu diperhatikan, termasuk daya mesin utama, daya mesin bantu, konsumsi bahan bakar spesifik, faktor konversi emisi karbon, kapasitas kapal, dan kecepatan referensi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Perhitungan yang melibatkan banyak parameter tersebut dapat dibantu melalui penggunaan kalkulator berbasis web. Pengguna dapat memasukkan data kapal dan memperoleh hasil perhitungan tanpa harus melakukan seluruh proses secara manual. Meskipun demikian, kalkulator yang dikembangkan dalam proyek ini tidak hanya ditujukan untuk menghasilkan nilai EEXI, tetapi juga untuk memberikan pengalaman perhitungan yang lebih transparan, interaktif, dan informatif.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pengembangan dilakukan dengan memanfaatkan pemrograman web dan prinsip komputasi teknik. Persamaan matematis digunakan untuk merepresentasikan proses perhitungan EEXI, sedangkan pemrograman digunakan untuk mengolah masukan, menjalankan perhitungan, memvalidasi data, dan menyajikan hasil kepada pengguna.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Pemikiran Awal (Initial Thinking)<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>a. Menganalisis Masalah Secara Sistematis<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Langkah pertama adalah memahami permasalahan yang muncul dalam penggunaan kalkulator EEXI berbasis web. Kalkulator yang hanya menampilkan hasil akhir dapat menyulitkan pengguna dalam memahami asal nilai yang diperoleh dan hubungan antara parameter kapal dengan hasil perhitungan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Selain itu, pengguna mungkin perlu melakukan perhitungan berulang secara manual ketika ingin membandingkan beberapa kondisi kapal. Hal tersebut dapat membuat proses evaluasi menjadi kurang praktis, terutama ketika terdapat banyak parameter yang perlu diperiksa. Oleh karena itu, diperlukan kalkulator yang mampu menggabungkan proses perhitungan, pemeriksaan data, penjelasan hasil, dan evaluasi alternatif dalam satu sistem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>b. Menyoroti Penelitian dan Kesenjangan yang Ada<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pengembangan kalkulator EEXI perlu mempertimbangkan metode perhitungan yang telah ditetapkan dalam regulasi dan pedoman teknis terkait. Kalkulator yang tersedia secara daring dapat digunakan sebagai referensi untuk memahami bentuk masukan, keluaran, dan alur perhitungan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kesenjangan yang ingin ditangani dalam proyek ini adalah kebutuhan akan alat bantu perhitungan yang tidak hanya berorientasi pada hasil, tetapi juga mendukung pemahaman pengguna terhadap proses dan implikasi hasil tersebut.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Fokus pengembangan meliputi:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Penyajian tahapan perhitungan secara transparan.<\/li>\n\n\n\n<li>Pemeriksaan kelengkapan dan kewajaran data masukan.<\/li>\n\n\n\n<li>Perbandingan hasil perhitungan pada beberapa skenario.<\/li>\n\n\n\n<li>Visualisasi pengaruh perubahan parameter terhadap nilai EEXI.<\/li>\n\n\n\n<li>Penyajian status terhadap persyaratan EEXI yang berlaku.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Fitur-fitur tersebut merupakan sasaran pengembangan prototipe, bukan klaim bahwa seluruh kalkulator EEXI daring yang tersedia tidak memilikinya.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>c. Menguraikan Masalah<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Permasalahan utama diuraikan menjadi beberapa bagian yang lebih spesifik.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Permasalahan perhitungan<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Kalkulator harus mampu menerapkan persamaan EEXI secara konsisten berdasarkan parameter dan metode perhitungan yang sesuai dengan ketentuan yang dipilih.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Permasalahan masukan data<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Kesalahan dalam memasukkan daya mesin, kecepatan, kapasitas kapal, atau konsumsi bahan bakar dapat memengaruhi hasil. Sistem perlu memeriksa kelengkapan, satuan, dan kewajaran masukan.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Permasalahan interpretasi hasil<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Nilai EEXI yang diperoleh perlu disertai informasi mengenai EEXI yang dipersyaratkan (required EEXI) dan status pemenuhannya, apabila data yang diperlukan tersedia.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Permasalahan evaluasi efisiensi<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Pengguna perlu mengetahui bagaimana perubahan parameter tertentu dapat memengaruhi nilai EEXI. Untuk itu, kalkulator perlu menyediakan fasilitas perbandingan skenario.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>d. Dekonstruksi ke Prinsip-Prinsip Dasar<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Permasalahan pengembangan kalkulator EEXI dapat diuraikan menjadi tiga prinsip dasar.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Prinsip teknik perkapalan: memahami karakteristik kapal, kapasitas transportasi, daya penggerak, dan kecepatan referensi.<\/li>\n\n\n\n<li>Prinsip matematis: menerapkan persamaan perhitungan EEXI, konversi satuan, serta perhitungan nilai pembanding.<\/li>\n\n\n\n<li>Prinsip komputasi: mengubah persamaan matematis menjadi algoritma yang dapat dijalankan oleh program komputer.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Secara konseptual, nilai attained EEXI dinyatakan sebagai rasio antara emisi CO\u2082 yang diperhitungkan dan kapasitas transportasi kapal berdasarkan metode yang berlaku. Bentuk persamaan sederhananya adalah:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"396\" height=\"86\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-454-edited.png\" alt=\"\" class=\"wp-image-19269\" style=\"aspect-ratio:5.72093023255814;width:246px;height:auto\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-454-edited.png 396w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-454-edited-300x65.png 300w\" sizes=\"auto, (max-width: 396px) 100vw, 396px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Persamaan tersebut merupakan gambaran konseptual. Implementasi kalkulator harus menggunakan formulasi lengkap, faktor koreksi, komponen daya, serta ketentuan lain yang relevan dengan jenis kapal dan metode perhitungan yang dipilih.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>e. Analisis State-of-the-Art<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Perkembangan teknologi komputasi memungkinkan perhitungan teknis dilakukan melalui aplikasi berbasis web. Dalam konteks EEXI, pendekatan ini dapat dikembangkan lebih jauh dari sekadar kalkulator numerik menjadi alat bantu analisis.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kalkulator yang dirancang dalam proyek ini akan menggabungkan beberapa kemampuan, yaitu perhitungan otomatis, visualisasi hasil, penjelasan parameter, analisis sensitivitas, dan perbandingan skenario.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Salah satu fitur utama yang direncanakan adalah kemampuan untuk mengubah nilai parameter tertentu dan melihat perubahan hasil perhitungan secara langsung. Dengan demikian, pengguna dapat mengevaluasi pengaruh perubahan daya mesin, kecepatan referensi, atau parameter lain yang relevan tanpa harus mengulang seluruh proses secara manual.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pengembangan tetap mengacu pada regulasi dan pedoman teknis EEXI yang berlaku. Fitur tambahan ditujukan untuk meningkatkan kemudahan penggunaan dan kualitas analisis, bukan mengubah dasar perhitungan yang ditetapkan oleh regulasi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>G. Metode dan Langkah-Langkah Solusi<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Idealisasi (Idealization)<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada tahap idealisasi, permasalahan perhitungan Energy Efficiency Existing Ship Index (EEXI) disederhanakan menjadi suatu model komputasi yang dapat menerima data teknis kapal sebagai input dan menghasilkan nilai <em>attained EEXI<\/em> sebagai output.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Model idealisasi dibangun berdasarkan hubungan antara parameter utama kapal dengan nilai EEXI. Parameter yang digunakan dapat meliputi kapasitas kapal, kecepatan referensi, daya mesin utama, daya mesin bantu, konsumsi bahan bakar spesifik, faktor konversi emisi, serta parameter lain yang diperlukan berdasarkan metode perhitungan yang digunakan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada tahap ini juga ditentukan batasan model agar perhitungan dapat diterapkan secara konsisten dalam MATLAB dan selanjutnya diimplementasikan ke dalam kalkulator berbasis web. Model awal yang terbentuk kemudian digunakan sebagai <em>baseline<\/em> untuk proses simulasi dan pengembangan kalkulator.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Instruksi (Instruction \/ Set)<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Proses penyelesaian dilakukan secara bertahap mulai dari penentuan kebutuhan sistem hingga implementasi dan validasi kalkulator.<\/p>\n\n\n\n<ol style=\"list-style-type:lower-alpha\" class=\"wp-block-list\">\n<li><strong>Menentukan Persyaratan Sistem<\/strong><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Tahap pertama dilakukan dengan menentukan parameter yang diperlukan dalam perhitungan EEXI serta keluaran yang ingin dihasilkan oleh sistem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Parameter input dapat meliputi:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>kapasitas kapal;<\/li>\n\n\n\n<li>kecepatan referensi;<\/li>\n\n\n\n<li>daya mesin utama;<\/li>\n\n\n\n<li>daya mesin bantu;<\/li>\n\n\n\n<li><em>Specific Fuel Oil Consumption<\/em> (SFOC);<\/li>\n\n\n\n<li>jenis bahan bakar;<\/li>\n\n\n\n<li>faktor emisi CO\u2082; dan<\/li>\n\n\n\n<li>parameter koreksi atau parameter tambahan yang diperlukan.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Sementara itu, keluaran sistem meliputi nilai <em>attained EEXI<\/em>, <em>required EEXI<\/em>, perbandingan keduanya, serta interpretasi terhadap hasil perhitungan.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Menentukan Komponen Kalkulator<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Kalkulator EEXI dibagi menjadi beberapa komponen agar proses perhitungan dapat dilakukan secara terstruktur. Komponen yang digunakan meliputi:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Input Module, untuk memasukkan data teknis kapal.<\/li>\n\n\n\n<li>Validation Module, untuk memeriksa kelengkapan, satuan, dan kewajaran data.<\/li>\n\n\n\n<li>Calculation Module, untuk menjalankan persamaan EEXI.<\/li>\n\n\n\n<li>Comparison Module, untuk membandingkan <em>attained EEXI<\/em> dengan <em>required EEXI<\/em>.<\/li>\n\n\n\n<li>Sensitivity Analysis Module, untuk menganalisis pengaruh perubahan parameter terhadap EEXI.<\/li>\n\n\n\n<li>Scenario Analysis Module, untuk membandingkan beberapa kondisi atau skenario kapal.<\/li>\n\n\n\n<li>Result Visualization Module, untuk menampilkan hasil dalam bentuk tabel dan grafik.<\/li>\n\n\n\n<li>User Interface, sebagai antarmuka pengguna dalam menjalankan kalkulator.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Pembagian komponen tersebut memungkinkan pengembangan dilakukan secara bertahap dan memudahkan penyempurnaan sistem berdasarkan hasil pengujian.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Menyusun Model Matematis<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Persamaan EEXI yang digunakan berdasarkan regulasi dan metode perhitungan yang telah ditentukan kemudian diterjemahkan menjadi model matematis. Model matematis tersebut digunakan untuk menghubungkan parameter input dengan nilai EEXI. Pada tahap awal, perhitungan dilakukan menggunakan kondisi <em>baseline<\/em> sehingga dapat diperoleh hasil awal yang nantinya menjadi acuan dalam proses simulasi.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Simulasi Menggunakan MATLAB<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Model matematis yang telah dibuat kemudian disimulasikan menggunakan MATLAB.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Simulasi dilakukan dengan memberikan variasi terhadap parameter tertentu untuk mengetahui pengaruhnya terhadap nilai EEXI. Salah satu contoh simulasi adalah melakukan variasi daya mesin utama dalam rentang tertentu, kemudian menghitung kembali nilai EEXI untuk setiap kondisi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil simulasi MATLAB digunakan untuk:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>memeriksa penerapan persamaan;<\/li>\n\n\n\n<li>menguji hubungan antara input dan output;<\/li>\n\n\n\n<li>mengetahui sensitivitas EEXI terhadap parameter tertentu;<\/li>\n\n\n\n<li>membandingkan beberapa kondisi kapal; dan<\/li>\n\n\n\n<li>menjadi dasar dalam menentukan fitur kalkulator yang perlu dikembangkan.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil simulasi dapat ditampilkan dalam bentuk tabel dan grafik agar perubahan nilai EEXI terhadap parameter tertentu dapat diamati dengan lebih mudah.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Validasi Model Awal<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil simulasi MATLAB dibandingkan dengan perhitungan manual atau perhitungan acuan menggunakan parameter kapal yang sama. Validasi dilakukan untuk memastikan bahwa model matematis telah diterapkan dengan benar sebelum digunakan sebagai dasar pengembangan kalkulator berbasis web. Apabila ditemukan perbedaan antara hasil MATLAB dan perhitungan acuan, persamaan, satuan, parameter, atau algoritma akan diperiksa dan diperbaiki.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Proses Iteratif dan Penyempurnaan Desain<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Pengembangan kalkulator dilakukan secara iteratif. Hasil simulasi dan umpan balik digunakan sebagai dasar untuk memperbaiki desain sistem pada setiap tahap.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada iterasi pertama, dikembangkan kalkulator EEXI dasar yang berfungsi menerima data kapal dan menghasilkan nilai <em>attained EEXI<\/em>. Setelah dilakukan simulasi menggunakan MATLAB, dilakukan evaluasi terhadap hasil dan tampilan kalkulator. Apabila hasil hanya memberikan nilai akhir tanpa memberikan informasi mengenai proses perhitungan, maka dilakukan penyempurnaan pada iterasi berikutnya.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada iterasi kedua, ditambahkan rincian proses perhitungan sehingga pengguna dapat mengetahui bagaimana nilai EEXI diperoleh dari parameter yang dimasukkan. Selanjutnya, hasil simulasi MATLAB digunakan untuk melakukan analisis sensitivitas. Apabila pengguna membutuhkan informasi mengenai parameter yang paling berpengaruh terhadap EEXI, maka pada iterasi ketiga ditambahkan fitur <em>sensitivity analysis<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pada tahap berikutnya, dilakukan pengembangan <em>scenario analysis<\/em> untuk memungkinkan pengguna membandingkan kondisi <em>baseline<\/em> dengan beberapa kondisi alternatif. Setiap perubahan desain kemudian diuji kembali menggunakan MATLAB dan dibandingkan dengan hasil kalkulator berbasis web. Dengan demikian, proses pengembangan membentuk siklus:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Model \u2192 Simulasi \u2192 Evaluasi \u2192 Feedback \u2192 Perbaikan \u2192 Simulasi ulang.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Proses tersebut dilakukan hingga diperoleh desain kalkulator yang memiliki perhitungan konsisten, mudah digunakan, dan mampu memberikan informasi yang lebih lengkap dibandingkan kalkulator dasar.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Implementasi Model Akhir<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Model yang telah melalui proses simulasi dan iterasi kemudian diimplementasikan menjadi kalkulator EEXI berbasis web. HTML digunakan untuk membangun struktur halaman, CSS digunakan untuk mengatur tampilan antarmuka, sedangkan JavaScript digunakan untuk menjalankan algoritma perhitungan dan interaksi pengguna. Model MATLAB digunakan sebagai model referensi untuk memastikan bahwa perhitungan yang diterapkan dalam JavaScript tetap konsisten dengan model matematis yang telah diuji.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Validasi Kalkulator Akhir<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Tahap terakhir dilakukan dengan membandingkan hasil dari tiga pendekatan:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>perhitungan acuan;<\/li>\n\n\n\n<li>simulasi MATLAB; dan<\/li>\n\n\n\n<li>kalkulator EEXI berbasis web.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Data kapal yang sama digunakan dalam ketiga pendekatan tersebut. Hasil dibandingkan untuk mengetahui konsistensi nilai yang dihasilkan. Selain validasi numerik, dilakukan pengujian terhadap fungsi input, validasi data, analisis sensitivitas, perbandingan skenario, dan visualisasi hasil.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>H. Hasil dan Diskusi<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil yang diharapkan dari proyek ini adalah sebuah prototipe kalkulator EEXI berbasis web yang tidak hanya melakukan perhitungan, tetapi juga memberikan informasi tambahan untuk membantu pengguna memahami dan mengevaluasi hasil perhitungan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. Hasil Model MATLAB<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Model MATLAB menghasilkan nilai EEXI berdasarkan parameter kapal yang dimasukkan. Model tersebut juga dapat digunakan untuk melakukan variasi parameter secara sistematis. Hasil variasi digunakan untuk melihat hubungan antara parameter tertentu dengan nilai EEXI dan menjadi dasar dalam pengembangan fitur analisis sensitivitas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Hasil Simulasi dan Analisis Sensitivitas<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil simulasi menunjukkan perubahan nilai EEXI akibat variasi parameter yang diuji. Sebagai contoh, daya mesin utama dapat divariasikan dalam beberapa kondisi dan setiap kondisi dihitung nilai EEXI-nya. Hasil tersebut kemudian dapat disajikan dalam bentuk grafik sehingga kecenderungan perubahan EEXI dapat diamati. Analisis ini digunakan untuk mengetahui parameter yang memiliki pengaruh terhadap hasil EEXI dan membantu pengguna memahami konsekuensi perubahan parameter tersebut.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3. Hasil Proses Iteratif *mau dibenerin jadi lebih detail<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Proses iteratif menghasilkan beberapa tahap penyempurnaan kalkulator. Tahap awal menghasilkan kalkulator dengan fungsi dasar. Berdasarkan hasil simulasi dan evaluasi, sistem kemudian dikembangkan dengan penambahan rincian perhitungan, validasi input, analisis sensitivitas, dan perbandingan skenario.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dengan demikian, fitur akhir kalkulator tidak hanya ditentukan berdasarkan rancangan awal, tetapi dikembangkan berdasarkan hasil pengujian dan feedback yang diperoleh selama proses pengembangan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>4. Hasil Kalkulator EEXI Berbasis Web<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kalkulator akhir memungkinkan pengguna memasukkan data teknis kapal dan memperoleh hasil perhitungan secara otomatis.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hasil yang ditampilkan dapat meliputi:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><em>attained EEXI<\/em>;<\/li>\n\n\n\n<li><em>required EEXI<\/em>;<\/li>\n\n\n\n<li>status perbandingan;<\/li>\n\n\n\n<li>rincian perhitungan;<\/li>\n\n\n\n<li>grafik sensitivitas; dan<\/li>\n\n\n\n<li>perbandingan beberapa skenario.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Hal tersebut diharapkan memberikan pengalaman penggunaan yang lebih informatif dibandingkan kalkulator yang hanya memberikan satu nilai EEXI sebagai hasil akhir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>5. Validasi Hasil<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Validasi dilakukan dengan membandingkan hasil kalkulator berbasis web terhadap hasil model MATLAB dan perhitungan acuan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Apabila terdapat perbedaan, dilakukan pemeriksaan terhadap persamaan, satuan, pembulatan, dan algoritma program. Hasil validasi digunakan untuk memastikan bahwa fitur tambahan yang diberikan tidak mengubah ketepatan perhitungan dasar EEXI.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>6. Keterbatasan<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kinerja kalkulator tetap bergantung pada ketepatan dan kelengkapan data yang dimasukkan pengguna. Selain itu, hasil simulasi parameter atau skenario tidak secara otomatis menunjukkan bahwa suatu perubahan dapat diterapkan pada kapal secara nyata. Implementasi perubahan teknis tetap membutuhkan evaluasi lebih lanjut berdasarkan karakteristik kapal, keselamatan, operasional, dan ketentuan yang berlaku.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>I. Kesimpulan, Penutup, dan Rekomendasi<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Proyek ini menghasilkan rancangan pengembangan kalkulator EEXI berbasis web dengan pendekatan komputasi teknik yang mengintegrasikan model matematis, simulasi MATLAB, proses iteratif, dan implementasi perangkat lunak.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">MATLAB digunakan sebagai sarana untuk menguji model matematis, melakukan variasi parameter, menganalisis sensitivitas, dan mengevaluasi beberapa skenario. Hasil simulasi kemudian digunakan sebagai dasar untuk menyempurnakan desain kalkulator secara bertahap melalui proses evaluasi dan feedback.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kalkulator akhir dirancang tidak hanya untuk menghasilkan nilai EEXI, tetapi juga memberikan rincian perhitungan, validasi input, analisis sensitivitas, dan perbandingan skenario. Dengan pendekatan tersebut, kalkulator diharapkan dapat menjadi alat bantu yang lebih informatif untuk memahami dan mengevaluasi efisiensi energi kapal.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pengembangan selanjutnya dapat dilakukan dengan memperluas jenis kapal yang dapat dianalisis, menambahkan parameter dan faktor koreksi yang relevan, memperbarui basis regulasi, serta meningkatkan fitur visualisasi dan analisis.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>J. Ucapan Terima Kasih<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Penulis mengucapkan terima kasih kepada dosen pembimbing dan pihak-pihak yang telah memberikan arahan, masukan, serta dukungan selama proses pembelajaran dan pengembangan proyek kalkulator EEXI.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Penulis juga mengucapkan terima kasih kepada pihak yang menyediakan regulasi, pedoman teknis, dan sumber pembelajaran yang digunakan sebagai dasar dalam memahami perhitungan efisiensi energi kapal.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>K. Referensi<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Referensi yang digunakan dalam pengembangan proyek meliputi regulasi, pedoman teknis, literatur mengenai efisiensi energi kapal, metode numerik, serta dokumentasi perangkat lunak yang digunakan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Referensi utama yang dapat digunakan meliputi:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>International Maritime Organization (IMO), <em>International Convention for the Prevention of Pollution from Ships (MARPOL) Annex VI: Regulations for the Prevention of Air Pollution from Ships<\/em>.<\/li>\n\n\n\n<li>International Maritime Organization (IMO), <em>2022 Guidelines on the Method of Calculation of the Attained Energy Efficiency Existing Ship Index (EEXI)<\/em>, Resolution MEPC.350(78).<\/li>\n\n\n\n<li>Dokumentasi MATLAB yang digunakan sebagai dasar pengembangan model dan simulasi numerik.<\/li>\n\n\n\n<li>Dokumentasi HTML, CSS, dan JavaScript yang digunakan dalam pengembangan kalkulator berbasis web.<\/li>\n\n\n\n<li>Literatur dan sumber akademik terkait efisiensi energi kapal, EEXI, dan metode komputasi teknik.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Referensi dan edisi regulasi akan disesuaikan kembali dengan dokumen yang benar-benar digunakan dalam proses perhitungan dan pengembangan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>L. Lampiran<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Kode MATLAB untuk simulasi kalkulator EEXI<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>\nclc;\nclear;\nclose all;\n\ndisp('==========================================');\ndisp('       SMART EEXI CALCULATOR');\ndisp('==========================================');\n\n%% 1. INPUT DATA KAPAL\ncapacity = inputPositif('Kapasitas kapal (ton): ');\nVref     = inputPositif('Kecepatan referensi (knot): ');\nPME      = inputPositif('Daya mesin utama (kW): ');\nSFCME    = inputPositif('SFC mesin utama (g\/kWh): ');\nPAE      = inputPositif('Daya mesin bantu (kW): ');\nSFCAE    = inputPositif('SFC mesin bantu (g\/kWh): ');\nCF       = inputPositif('Faktor emisi (gCO2\/g bahan bakar): ');\nRequired = inputPositif('Required EEXI (satuan konsisten): ');\n\nfprintf('\\n--- Batas Teknis untuk Pencarian ---\\n');\nPME_min = inputPositif('Daya minimum mesin utama (kW): ');\n\nif PME_min &gt;= PME\n    error('Daya minimum harus lebih kecil dari daya awal.');\nend\n\n%% 2. PERHITUNGAN KONDISI AWAL\nEEXI_awal = hitungEEXI(PME, PAE, SFCME, SFCAE, ...\n                       CF, capacity, Vref);\n\nEmisi_ME = CF * SFCME * PME;\nEmisi_AE = CF * SFCAE * PAE;\n\nfprintf('\\n========== KONDISI AWAL ==========\\n');\nfprintf('Emisi mesin utama : %.2f gCO2\/jam\\n', Emisi_ME);\nfprintf('Emisi mesin bantu : %.2f gCO2\/jam\\n', Emisi_AE);\nfprintf('Attained EEXI     : %.6f\\n', EEXI_awal);\nfprintf('Required EEXI     : %.6f\\n', Required);\n\nif EEXI_awal &lt;= Required\n    disp('Status model: MEMENUHI target.');\nelse\n    disp('Status model: BELUM MEMENUHI target.');\nend\n\n%% 3. ANALISIS SENSITIVITAS\npengurangan = 0:5:30;\nEEXI_sens = zeros(size(pengurangan));\n\nfor i = 1:length(pengurangan)\n    PME_baru = PME * (1 - pengurangan(i)\/100);\n\n    EEXI_sens(i) = hitungEEXI(PME_baru, PAE, ...\n        SFCME, SFCAE, CF, capacity, Vref);\nend\n\nfprintf('\\n========== SENSITIVITAS ==========\\n');\ndisp(table(pengurangan', EEXI_sens', ...\n    'VariableNames', {'PenguranganDayaPersen','AttainedEEXI'}));\n\nfigure;\nplot(pengurangan, EEXI_sens, '-o', 'LineWidth', 1.5);\nhold on;\nyline(Required, '--r', 'Required EEXI');\nxlabel('Pengurangan daya mesin utama (%)');\nylabel('Attained EEXI');\ntitle('Sensitivitas EEXI terhadap Daya Mesin Utama');\nlegend('Attained EEXI', 'Required EEXI', 'Location', 'best');\ngrid on;\n\n%% 4. PERBANDINGAN SKENARIO (-10% DAYA)\nPME_skenario = PME * 0.90;\n\nEEXI_skenario = hitungEEXI(PME_skenario, PAE, ...\n    SFCME, SFCAE, CF, capacity, Vref);\n\nperubahan = (EEXI_skenario - EEXI_awal) ...\n            \/ EEXI_awal * 100;\n\nfprintf('\\n========== SKENARIO -10%% ==========\\n');\nfprintf('EEXI kondisi awal : %.6f\\n', EEXI_awal);\nfprintf('EEXI skenario     : %.6f\\n', EEXI_skenario);\nfprintf('Perubahan EEXI    : %.2f%%\\n', perubahan);\n\n%% 5. PENCARIAN ITERATIF\n% Cari daya terbesar yang memenuhi target model.\n% Langkah pencarian dapat diubah sesuai kebutuhan.\n\nlangkah = 1;  % Resolusi pencarian dalam kW\nmaks_iterasi = 100000;\nPME_coba = PME;\niterasi = 0;\nditemukan = false;\n\nfprintf('\\n========== PENCARIAN ITERATIF ==========\\n');\n\nwhile PME_coba &gt;= PME_min &amp;&amp; iterasi &lt; maks_iterasi\n    iterasi = iterasi + 1;\n\n    EEXI_coba = hitungEEXI(PME_coba, PAE, ...\n        SFCME, SFCAE, CF, capacity, Vref);\n\n    if EEXI_coba &lt;= Required\n        ditemukan = true;\n        break;\n    end\n\n    PME_coba = PME_coba - langkah;\nend\n\nif ditemukan\n    fprintf('Solusi ditemukan pada iterasi ke-%d\\n', iterasi);\n    fprintf('Kandidat daya mesin utama : %.2f kW\\n', PME_coba);\n    fprintf('Attained EEXI kandidat    : %.6f\\n', EEXI_coba);\n    fprintf('Required EEXI             : %.6f\\n', Required);\n    fprintf('Pengurangan daya          : %.2f%%\\n', ...\n        (PME - PME_coba)\/PME*100);\nelse\n    fprintf('Tidak ditemukan solusi dalam batas pencarian.\\n');\n    fprintf('Periksa target dan batas minimum daya.\\n');\nend\n\n%% 6. GRAFIK HASIL PENCARIAN\nPME_range = linspace(PME_min, PME, 100);\nEEXI_range = zeros(size(PME_range));\n\nfor i = 1:length(PME_range)\n    EEXI_range(i) = hitungEEXI(PME_range(i), PAE, ...\n        SFCME, SFCAE, CF, capacity, Vref);\nend\n\nfigure;\nplot(PME_range, EEXI_range, 'b-', 'LineWidth', 1.5);\nhold on;\nyline(Required, '--r', 'Required EEXI');\n\nif ditemukan\n    plot(PME_coba, EEXI_coba, 'ko', ...\n        'MarkerFaceColor', 'g', 'MarkerSize', 8);\n    legend('Attained EEXI', 'Required EEXI', ...\n        'Kandidat iteratif', 'Location', 'best');\nelse\n    legend('Attained EEXI', 'Required EEXI', ...\n        'Location', 'best');\nend\n\nxlabel('Daya mesin utama (kW)');\nylabel('Attained EEXI');\ntitle('Pencarian Daya Mesin Utama');\ngrid on;\n\ndisp(' ');\ndisp('Perhitungan selesai.');\n\n%% FUNGSI PERHITUNGAN EEXI MODEL\nfunction hasil = hitungEEXI(PME, PAE, SFCME, SFCAE, ...\n                             CF, capacity, Vref)\n    emisi = CF * SFCME * PME + CF * SFCAE * PAE;\n    hasil = emisi \/ (capacity * Vref);\nend\n\n%% FUNGSI VALIDASI INPUT\nfunction nilai = inputPositif(pesan)\n    while true\n        nilai = input(pesan);\n\n        if isnumeric(nilai) &amp;&amp; isscalar(nilai) ...\n                &amp;&amp; isfinite(nilai) &amp;&amp; nilai &gt; 0\n            break;\n        end\n\n        disp('Masukkan satu angka positif yang valid.');\n    end\nend\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">2. Hasil simulasi MATLAB (tampilan perhitungan, grafik sensitivitas,dll)<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"583\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-464-edited-1024x583.png\" alt=\"\" class=\"wp-image-19272\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-464-edited-1024x583.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-464-edited-300x171.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-464-edited-768x438.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-464-edited-1536x875.png 1536w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-464-edited.png 1899w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"573\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-465-edited-1024x573.png\" alt=\"\" class=\"wp-image-19274\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-465-edited-1024x573.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-465-edited-300x168.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-465-edited-768x430.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-465-edited-1536x860.png 1536w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-465-edited.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"579\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-466-edited-1024x579.png\" alt=\"\" class=\"wp-image-19276\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-466-edited-1024x579.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-466-edited-300x170.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-466-edited-768x434.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-466-edited-1536x868.png 1536w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-466-edited.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"604\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-467-edited-1024x604.png\" alt=\"\" class=\"wp-image-19278\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-467-edited-1024x604.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-467-edited-300x177.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-467-edited-768x453.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-467-edited-1536x906.png 1536w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-467-edited.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"601\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-468-edited-1024x601.png\" alt=\"\" class=\"wp-image-19282\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-468-edited-1024x601.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-468-edited-300x176.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-468-edited-768x451.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-468-edited-1536x902.png 1536w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-468-edited.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"601\" src=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-469-edited-1024x601.png\" alt=\"\" class=\"wp-image-19280\" srcset=\"https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-469-edited-1024x601.png 1024w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-469-edited-300x176.png 300w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-469-edited-768x451.png 768w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-469-edited-1536x902.png 1536w, https:\/\/ccitonline.com\/wp\/wp-content\/uploads\/2026\/10\/Screenshot-469-edited.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">3. Perbandingan tampilan kalkulator EEXI yang menggunakan HTML,CSS, dan JavaScript<\/p>\n\n\n\n<style data-wp-block-html=\"css\">\n\n#smart-eexi {\n  --ex-ink: #243247;\n  --ex-muted: #627188;\n  --ex-border: #cbd5e1;\n  --ex-input-bg: #e8eff7;\n  --ex-blue: #2356a8;\n  --ex-navy: #172b4d;\n  --ex-green: #167647;\n  --ex-red: #b42318;\n\n  max-width: 100%;\n  margin: 24px auto;\n  padding: 24px;\n  background: #f6f8fc;\n  border: 1px solid #dce4ef;\n  border-radius: 16px;\n  color: var(--ex-ink);\n  font-family: Arial, Helvetica, sans-serif;\n  font-size: 15px;\n  line-height: 1.6;\n  box-sizing: border-box;\n}\n\n#smart-eexi *,\n#smart-eexi *::before,\n#smart-eexi *::after {\n  box-sizing: border-box;\n}\n\n#smart-eexi [hidden] {\n  display: none !important;\n}\n\n#smart-eexi .eexi-header {\n  padding: 26px;\n  margin: -24px -24px 22px;\n  background: linear-gradient(135deg, #172b4d, #285ca5);\n  color: #ffffff;\n  border-radius: 15px 15px 0 0;\n}\n\n#smart-eexi .eexi-header h2 {\n  color: #ffffff;\n  font-size: 28px;\n  line-height: 1.25;\n  margin: 0 0 8px;\n}\n\n#smart-eexi .eexi-header p {\n  color: #e1eaf8;\n  margin: 0 0 14px;\n}\n\n#smart-eexi .eexi-tag {\n  display: inline-block;\n  padding: 5px 10px;\n  background: #ffffff;\n  color: #172b4d;\n  border-radius: 20px;\n  font-size: 12px;\n  font-weight: 700;\n}\n\n#smart-eexi h3 {\n  color: #172b4d;\n  font-size: 19px;\n  margin: 28px 0 15px;\n}\n\n#smart-eexi .eexi-notice {\n  background: #fff4d6;\n  border-left: 4px solid #d69a18;\n  border-radius: 8px;\n  padding: 13px 16px;\n  margin-bottom: 24px;\n  color: #594317;\n}\n\n#smart-eexi .eexi-notice p {\n  margin: 4px 0 0;\n  color: #594317;\n}\n\n#smart-eexi .eexi-grid {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 16px;\n}\n\n#smart-eexi .eexi-field {\n  min-width: 0;\n}\n\n#smart-eexi .eexi-field label {\n  display: block;\n  color: #243247;\n  font-size: 14px;\n  font-weight: 700;\n  margin-bottom: 6px;\n}\n\n#smart-eexi input {\n  display: block;\n  width: 100%;\n  min-height: 46px;\n  padding: 11px 13px;\n  background: var(--ex-input-bg) !important;\n  color: #172b4d !important;\n  -webkit-text-fill-color: #172b4d !important;\n  border: 1px solid #aebed2 !important;\n  border-radius: 8px;\n  font-family: inherit;\n  font-size: 15px;\n  font-weight: 600;\n  box-shadow: inset 0 1px 2px rgba(23, 43, 77, 0.06);\n  opacity: 1;\n}\n\n#smart-eexi input::placeholder {\n  color: #627188 !important;\n  -webkit-text-fill-color: #627188 !important;\n  opacity: 1;\n}\n\n#smart-eexi input:focus {\n  outline: 3px solid rgba(35, 86, 168, 0.2);\n  border-color: #2356a8 !important;\n  background: #edf3fb !important;\n}\n\n#smart-eexi .eexi-field small {\n  display: block;\n  margin-top: 5px;\n  color: #627188;\n  font-size: 12px;\n}\n\n#smart-eexi .eexi-actions {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 10px;\n  margin-top: 22px;\n}\n\n#smart-eexi .ex-btn {\n  min-height: 44px;\n  padding: 11px 18px;\n  border: 1px solid transparent;\n  border-radius: 8px;\n  font-size: 14px;\n  font-weight: 700;\n  cursor: pointer;\n  transition: filter 0.15s ease;\n}\n\n#smart-eexi .ex-btn:hover {\n  filter: brightness(0.94);\n}\n\n#smart-eexi .ex-primary {\n  background: #2356a8;\n  color: #ffffff;\n}\n\n#smart-eexi .ex-light {\n  background: #e3eaf3;\n  border-color: #c5d1e0;\n  color: #243247;\n}\n\n#smart-eexi .ex-error {\n  margin-top: 18px;\n  padding: 12px 15px;\n  border: 1px solid #e5a5a1;\n  border-radius: 8px;\n  background: #fff0ef;\n  color: #8d2018;\n}\n\n#smart-eexi .eexi-result-grid {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 13px;\n}\n\n#smart-eexi .ex-result-card {\n  padding: 17px;\n  background: #ffffff;\n  border: 1px solid #d9e2ee;\n  border-radius: 10px;\n  min-width: 0;\n}\n\n#smart-eexi .ex-result-card span {\n  display: block;\n  color: #627188;\n  font-size: 13px;\n  margin-bottom: 7px;\n}\n\n#smart-eexi .ex-result-card strong {\n  display: block;\n  color: #172b4d;\n  font-size: 23px;\n  overflow-wrap: anywhere;\n}\n\n#smart-eexi .ex-result-card small {\n  color: #627188;\n  font-size: 12px;\n}\n\n#smart-eexi .ex-status {\n  margin-top: 15px;\n  padding: 13px 15px;\n  border-radius: 8px;\n  font-weight: 700;\n}\n\n#smart-eexi .ex-status.ex-pass {\n  color: #155d3b;\n  background: #e5f5eb;\n  border: 1px solid #a8dabb;\n}\n\n#smart-eexi .ex-status.ex-fail {\n  color: #8d2018;\n  background: #fff0ef;\n  border: 1px solid #e5a5a1;\n}\n\n#smart-eexi .ex-description {\n  margin: 0 0 13px;\n  color: #627188;\n  font-size: 13px;\n}\n\n#smart-eexi .ex-chart-wrap {\n  padding: 14px;\n  background: #ffffff;\n  border: 1px solid #d9e2ee;\n  border-radius: 10px;\n  margin: 14px 0;\n}\n\n#smart-eexi #ex-chart {\n  display: block;\n  width: 100%;\n  height: 250px;\n}\n\n#smart-eexi .ex-table-wrap {\n  width: 100%;\n  overflow-x: auto;\n  margin-top: 12px;\n}\n\n#smart-eexi table {\n  width: 100%;\n  border-collapse: collapse;\n  background: #ffffff;\n  font-size: 13px;\n}\n\n#smart-eexi th,\n#smart-eexi td {\n  padding: 10px 12px;\n  text-align: left;\n  border: 1px solid #d9e2ee;\n  color: #243247;\n}\n\n#smart-eexi th {\n  background: #e5edf7;\n  color: #172b4d;\n  font-weight: 700;\n}\n\n#smart-eexi .ex-scenario,\n#smart-eexi .ex-iteration {\n  padding: 16px;\n  background: #ffffff;\n  border: 1px solid #d9e2ee;\n  border-radius: 10px;\n  color: #243247;\n}\n\n#smart-eexi .ex-scenario p,\n#smart-eexi .ex-iteration p {\n  margin: 6px 0;\n}\n\n#smart-eexi .ex-footnote {\n  margin-top: 22px;\n  padding-top: 14px;\n  border-top: 1px solid #d9e2ee;\n  color: #627188;\n  font-size: 12px;\n}\n\n@media (max-width: 600px) {\n  #smart-eexi {\n    padding: 16px;\n    border-radius: 12px;\n  }\n\n  #smart-eexi .eexi-header {\n    margin: -16px -16px 18px;\n    padding: 21px 16px;\n  }\n\n  #smart-eexi .eexi-header h2 {\n    font-size: 23px;\n  }\n\n  #smart-eexi .eexi-grid,\n  #smart-eexi .eexi-result-grid {\n    grid-template-columns: 1fr;\n  }\n\n  #smart-eexi .eexi-actions {\n    flex-direction: column;\n  }\n\n  #smart-eexi .ex-btn {\n    width: 100%;\n  }\n}\n\n<\/style>\n\n<script data-wp-block-html=\"js\">\n\n(function () {\n  \"use strict\";\n\n  function initEEXI() {\n    const root = document.getElementById(\"smart-eexi\");\n    if (!root || root.dataset.eexiInitialized === \"true\") return;\n\n    const form = root.querySelector(\"#eexi-form\");\n    const results = root.querySelector(\"#ex-results\");\n    const errorBox = root.querySelector(\"#ex-error\");\n    const resetButton = root.querySelector(\"#ex-reset\");\n\n    if (!form || !results || !errorBox) return;\n\n    root.dataset.eexiInitialized = \"true\";\n\n    const $ = (id) => root.querySelector(\"#\" + id);\n\n    const fields = {\n      capacity: $(\"ex-capacity\"),\n      vref: $(\"ex-vref\"),\n      pme: $(\"ex-pme\"),\n      sfcme: $(\"ex-sfcme\"),\n      pae: $(\"ex-pae\"),\n      sfcae: $(\"ex-sfcae\"),\n      cf: $(\"ex-cf\"),\n      required: $(\"ex-required\"),\n      pmin: $(\"ex-pmin\")\n    };\n\n    function getInputs() {\n      const values = {};\n\n      for (const [key, element] of Object.entries(fields)) {\n        const value = element.valueAsNumber;\n\n        if (!Number.isFinite(value)) {\n          throw new Error(\"Semua input harus berisi angka yang valid.\");\n        }\n\n        values[key] = value;\n      }\n\n      const strictlyPositive = [\n        \"capacity\", \"vref\", \"pme\", \"sfcme\",\n        \"sfcae\", \"cf\", \"required\", \"pmin\"\n      ];\n\n      for (const key of strictlyPositive) {\n        if (values[key] <= 0) {\n          throw new Error(\n            \"Nilai \" + fields[key].previousElementSibling.textContent +\n            \" harus lebih besar dari nol.\"\n          );\n        }\n      }\n\n      if (values.pae < 0) {\n        throw new Error(\"Daya mesin bantu tidak boleh negatif.\");\n      }\n\n      if (values.pmin >= values.pme) {\n        throw new Error(\n          \"Daya minimum mesin utama harus lebih kecil dari daya awal.\"\n        );\n      }\n\n      return values;\n    }\n\n    \/\/ Model matematis yang sama dengan script MATLAB.\n    function calculateEEXI(pme, d) {\n      const emissionME = d.cf * d.sfcme * pme;\n      const emissionAE = d.cf * d.sfcae * d.pae;\n      const totalEmission = emissionME + emissionAE;\n\n      return {\n        emissionME,\n        emissionAE,\n        totalEmission,\n        eexi: totalEmission \/ (d.capacity * d.vref)\n      };\n    }\n\n    function formatNumber(value, digits = 4) {\n      return value.toLocaleString(\"en-US\", {\n        minimumFractionDigits: digits,\n        maximumFractionDigits: digits\n      });\n    }\n\n    function showError(message) {\n      errorBox.textContent = message;\n      errorBox.hidden = false;\n      results.hidden = true;\n    }\n\n    function clearError() {\n      errorBox.textContent = \"\";\n      errorBox.hidden = true;\n    }\n\n    function renderSensitivity(d) {\n      const reductions = [0, 5, 10, 15, 20, 25, 30];\n\n      const rows = reductions.map((reduction) => {\n        const power = d.pme * (1 - reduction \/ 100);\n        const result = calculateEEXI(power, d);\n\n        return {\n          reduction,\n          power,\n          eexi: result.eexi\n        };\n      });\n\n      const table = `\n        <table>\n          <thead>\n            <tr>\n              <th>Power reduction<\/th>\n              <th>Main engine power (kW)<\/th>\n              <th>Attained EEXI (model)<\/th>\n              <th>Status<\/th>\n            <\/tr>\n          <\/thead>\n          <tbody>\n            ${rows.map((row) => `\n              <tr>\n                <td>${row.reduction}%<\/td>\n                <td>${formatNumber(row.power, 2)}<\/td>\n                <td>${formatNumber(row.eexi, 6)}<\/td>\n                <td>${row.eexi <= d.required ? \"Meets model target\" : \"Above target\"}<\/td>\n              <\/tr>\n            `).join(\"\")}\n          <\/tbody>\n        <\/table>\n      `;\n\n      $(\"ex-sensitivity-table\").innerHTML = table;\n      drawChart(rows, d.required);\n    }\n\n    \/\/ Gambar grafik menggunakan Canvas, tanpa library eksternal.\n    function drawChart(rows, required) {\n      const canvas = $(\"ex-chart\");\n      if (!canvas) return;\n\n      const rect = canvas.getBoundingClientRect();\n      const width = Math.max(280, Math.round(rect.width || 500));\n      const height = 250;\n      const ratio = window.devicePixelRatio || 1;\n\n      canvas.width = width * ratio;\n      canvas.height = height * ratio;\n      canvas.style.height = height + \"px\";\n\n      const ctx = canvas.getContext(\"2d\");\n      ctx.setTransform(ratio, 0, 0, ratio, 0, 0);\n      ctx.clearRect(0, 0, width, height);\n\n      const pad = { left: 58, right: 18, top: 20, bottom: 45 };\n      const plotW = width - pad.left - pad.right;\n      const plotH = height - pad.top - pad.bottom;\n\n      const values = rows.map((r) => r.eexi).concat([required]);\n      let minY = Math.min(...values);\n      let maxY = Math.max(...values);\n\n      if (minY === maxY) {\n        minY -= 1;\n        maxY += 1;\n      }\n\n      const margin = (maxY - minY) * 0.12;\n      minY = Math.max(0, minY - margin);\n      maxY += margin;\n\n      const x = (i) => pad.left + (i \/ (rows.length - 1)) * plotW;\n      const y = (v) => pad.top + (maxY - v) \/ (maxY - minY) * plotH;\n\n      ctx.font = \"11px Arial\";\n      ctx.textAlign = \"right\";\n      ctx.textBaseline = \"middle\";\n      ctx.strokeStyle = \"#dce4ef\";\n      ctx.fillStyle = \"#627188\";\n      ctx.lineWidth = 1;\n\n      for (let i = 0; i <= 4; i++) {\n        const value = minY + (maxY - minY) * i \/ 4;\n        const yy = y(value);\n\n        ctx.beginPath();\n        ctx.moveTo(pad.left, yy);\n        ctx.lineTo(width - pad.right, yy);\n        ctx.stroke();\n\n        ctx.fillText(formatNumber(value, 2), pad.left - 8, yy);\n      }\n\n      ctx.strokeStyle = \"#b42318\";\n      ctx.setLineDash([5, 4]);\n      ctx.beginPath();\n      ctx.moveTo(pad.left, y(required));\n      ctx.lineTo(width - pad.right, y(required));\n      ctx.stroke();\n      ctx.setLineDash([]);\n\n      ctx.fillStyle = \"#b42318\";\n      ctx.textAlign = \"left\";\n      ctx.fillText(\"Required\", pad.left + 4, Math.max(10, y(required) - 10));\n\n      ctx.strokeStyle = \"#2356a8\";\n      ctx.lineWidth = 2;\n      ctx.beginPath();\n\n      rows.forEach((row, i) => {\n        if (i === 0) ctx.moveTo(x(i), y(row.eexi));\n        else ctx.lineTo(x(i), y(row.eexi));\n      });\n\n      ctx.stroke();\n\n      rows.forEach((row, i) => {\n        ctx.fillStyle = \"#2356a8\";\n        ctx.beginPath();\n        ctx.arc(x(i), y(row.eexi), 3.5, 0, Math.PI * 2);\n        ctx.fill();\n\n        ctx.fillStyle = \"#243247\";\n        ctx.textAlign = \"center\";\n        ctx.textBaseline = \"top\";\n        ctx.fillText(row.reduction + \"%\", x(i), height - pad.bottom + 10);\n      });\n\n      ctx.fillStyle = \"#243247\";\n      ctx.textAlign = \"center\";\n      ctx.textBaseline = \"bottom\";\n      ctx.fillText(\"Main engine power reduction\", pad.left + plotW \/ 2, height - 2);\n    }\n\n    function renderScenario(d, base) {\n      const scenarioPower = d.pme * 0.90;\n      const scenario = calculateEEXI(scenarioPower, d);\n      const change = (scenario.eexi - base.eexi) \/ base.eexi * 100;\n\n      $(\"ex-scenario\").innerHTML = `\n        <p><strong>Initial main engine power:<\/strong> ${formatNumber(d.pme, 2)} kW<\/p>\n        <p><strong>Scenario main engine power:<\/strong> ${formatNumber(scenarioPower, 2)} kW<\/p>\n        <p><strong>Initial attained EEXI:<\/strong> ${formatNumber(base.eexi, 6)}<\/p>\n        <p><strong>Scenario attained EEXI:<\/strong> ${formatNumber(scenario.eexi, 6)}<\/p>\n        <p><strong>Change in EEXI:<\/strong> ${formatNumber(change, 2)}%<\/p>\n        <p><strong>Model comparison:<\/strong> ${\n          scenario.eexi <= d.required\n            ? \"Meets the entered model target\"\n            : \"Does not meet the entered model target\"\n        }<\/p>\n        <p><strong>Minimum-power check:<\/strong> ${\n          scenarioPower >= d.pmin\n            ? \"Within the entered minimum-power boundary\"\n            : \"Below the entered minimum-power boundary\"\n        }<\/p>\n      `;\n    }\n\n    function renderIteration(d) {\n      let power = d.pme;\n      let count = 0;\n      const step = 1;\n      const maxIterations = 100000;\n      const log = [];\n      let found = false;\n      let answer = null;\n\n      while (power >= d.pmin && count < maxIterations) {\n        count++;\n\n        const result = calculateEEXI(power, d);\n\n        if (log.length < 5 || count % 1000 === 0) {\n          log.push({\n            iteration: count,\n            power,\n            eexi: result.eexi\n          });\n        }\n\n        if (result.eexi <= d.required) {\n          found = true;\n          answer = {\n            power,\n            eexi: result.eexi,\n            iteration: count\n          };\n          break;\n        }\n\n        power -= step;\n      }\n\n      if (found) {\n        $(\"ex-iteration\").innerHTML = `\n          <p><strong>Search status:<\/strong> Candidate found<\/p>\n          <p><strong>Iterations:<\/strong> ${answer.iteration}<\/p>\n          <p><strong>Candidate main engine power:<\/strong> ${formatNumber(answer.power, 2)} kW<\/p>\n          <p><strong>Candidate attained EEXI:<\/strong> ${formatNumber(answer.eexi, 6)}<\/p>\n          <p><strong>Power reduction:<\/strong> ${formatNumber((d.pme - answer.power) \/ d.pme * 100, 2)}%<\/p>\n          <p><strong>Entered minimum power:<\/strong> ${formatNumber(d.pmin, 2)} kW<\/p>\n        `;\n      } else {\n        $(\"ex-iteration\").innerHTML = `\n          <p><strong>Search status:<\/strong> No candidate found within the search limits.<\/p>\n          <p>Check the required EEXI, minimum power, and model inputs.<\/p>\n          <p>Iterations checked: ${count}<\/p>\n        `;\n      }\n\n      $(\"ex-iteration-table\").innerHTML = `\n        <table>\n          <thead>\n            <tr>\n              <th>Iteration<\/th>\n              <th>Main engine power (kW)<\/th>\n              <th>Attained EEXI<\/th>\n            <\/tr>\n          <\/thead>\n          <tbody>\n            ${log.map((row) => `\n              <tr>\n                <td>${row.iteration}<\/td>\n                <td>${formatNumber(row.power, 2)}<\/td>\n                <td>${formatNumber(row.eexi, 6)}<\/td>\n              <\/tr>\n            `).join(\"\")}\n            ${found ? `\n              <tr>\n                <td>${answer.iteration}<\/td>\n                <td>${formatNumber(answer.power, 2)}<\/td>\n                <td>${formatNumber(answer.eexi, 6)}<\/td>\n              <\/tr>\n            ` : \"\"}\n          <\/tbody>\n        <\/table>\n        <p class=\"ex-description\">\n          Log menampilkan beberapa iterasi awal dan sampel setiap 1.000 iterasi.\n          Baris terakhir menampilkan kandidat jika ditemukan.\n        <\/p>\n      `;\n    }\n\n    form.addEventListener(\"submit\", function (event) {\n      event.preventDefault();\n      clearError();\n\n      try {\n        const d = getInputs();\n        const base = calculateEEXI(d.pme, d);\n\n        $(\"ex-attained\").textContent = formatNumber(base.eexi, 6);\n        $(\"ex-required-result\").textContent = formatNumber(d.required, 6);\n        $(\"ex-emission-me\").textContent = formatNumber(base.emissionME, 2);\n        $(\"ex-emission-ae\").textContent = formatNumber(base.emissionAE, 2);\n\n        const status = $(\"ex-status\");\n\n        if (base.eexi <= d.required) {\n          status.className = \"ex-status ex-pass\";\n          status.textContent = \"Model result: attained EEXI is at or below the entered target.\";\n        } else {\n          status.className = \"ex-status ex-fail\";\n          status.textContent = \"Model result: attained EEXI is above the entered target.\";\n        }\n\n        renderSensitivity(d);\n        renderScenario(d, base);\n        renderIteration(d);\n\n        results.hidden = false;\n      } catch (error) {\n        showError(error.message || \"Terjadi kesalahan saat menghitung.\");\n      }\n    });\n\n    resetButton.addEventListener(\"click\", function () {\n      form.reset();\n      clearError();\n      results.hidden = true;\n    });\n  }\n\n  \/\/ Mendukung pemuatan setelah DOM tersedia.\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", initEEXI);\n  } else {\n    initEEXI();\n  }\n})();\n\n<\/script>\n\n\n<div id=\"smart-eexi\">\n  <div class=\"eexi-header\">\n    <h2>Smart EEXI Calculator<\/h2>\n    <p>Ship Energy Efficiency Analysis Tool<\/p>\n    <span class=\"eexi-tag\">Calculation \u00b7 Sensitivity \u00b7 Iteration<\/span>\n  <\/div>\n\n  <div class=\"eexi-notice\">\n    <strong>Model perhitungan awal<\/strong>\n    <p>\n      Kalkulator ini digunakan untuk analisis dan pembelajaran.\n      Hasilnya belum merupakan verifikasi kepatuhan EEXI resmi IMO.\n    <\/p>\n  <\/div>\n\n  <form id=\"eexi-form\">\n    <h3>1. Ship Particulars<\/h3>\n\n    <div class=\"eexi-grid\">\n      <div class=\"eexi-field\">\n        <label for=\"ex-capacity\">Capacity (ton)<\/label>\n        <input id=\"ex-capacity\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"6005\" required>\n        <small>Kapasitas kapal sesuai basis perhitungan.<\/small>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-vref\">Reference speed (knot)<\/label>\n        <input id=\"ex-vref\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"12.5\" required>\n        <small>Kecepatan referensi kapal.<\/small>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-pme\">Main engine power (kW)<\/label>\n        <input id=\"ex-pme\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"4500\" required>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-sfcme\">Main engine SFC (g\/kWh)<\/label>\n        <input id=\"ex-sfcme\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"185\" required>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-pae\">Auxiliary engine power (kW)<\/label>\n        <input id=\"ex-pae\" type=\"number\" min=\"0\"\n          step=\"any\" value=\"300\" required>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-sfcae\">Auxiliary engine SFC (g\/kWh)<\/label>\n        <input id=\"ex-sfcae\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"200\" required>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-cf\">Fuel emission factor, CF<\/label>\n        <input id=\"ex-cf\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"3.206\" required>\n        <small>Contoh nilai untuk bahan bakar tertentu. Verifikasi jenis bahan bakarnya.<\/small>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-required\">Required EEXI (model)<\/label>\n        <input id=\"ex-required\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"12\" required>\n        <small>Masukkan nilai batas pembanding yang sudah diverifikasi.<\/small>\n      <\/div>\n\n      <div class=\"eexi-field\">\n        <label for=\"ex-pmin\">Minimum main engine power (kW)<\/label>\n        <input id=\"ex-pmin\" type=\"number\" min=\"0.000001\"\n          step=\"any\" value=\"2500\" required>\n        <small>Batas teknis untuk pencarian iteratif.<\/small>\n      <\/div>\n    <\/div>\n\n    <div class=\"eexi-actions\">\n      <button type=\"submit\" class=\"ex-btn ex-primary\">\n        Calculate EEXI\n      <\/button>\n      <button type=\"button\" id=\"ex-reset\" class=\"ex-btn ex-light\">\n        Reset\n      <\/button>\n    <\/div>\n  <\/form>\n\n  <div id=\"ex-error\" class=\"ex-error\" role=\"alert\" hidden><\/div>\n\n  <section id=\"ex-results\" hidden>\n    <h3>2. Calculation Results<\/h3>\n\n    <div class=\"eexi-result-grid\">\n      <div class=\"ex-result-card\">\n        <span>Attained EEXI (model)<\/span>\n        <strong id=\"ex-attained\">\u2014<\/strong>\n      <\/div>\n      <div class=\"ex-result-card\">\n        <span>Required EEXI (model)<\/span>\n        <strong id=\"ex-required-result\">\u2014<\/strong>\n      <\/div>\n      <div class=\"ex-result-card\">\n        <span>Main engine CO\u2082 rate<\/span>\n        <strong id=\"ex-emission-me\">\u2014<\/strong>\n        <small>gCO\u2082\/hour<\/small>\n      <\/div>\n      <div class=\"ex-result-card\">\n        <span>Auxiliary engine CO\u2082 rate<\/span>\n        <strong id=\"ex-emission-ae\">\u2014<\/strong>\n        <small>gCO\u2082\/hour<\/small>\n      <\/div>\n    <\/div>\n\n    <div id=\"ex-status\" class=\"ex-status\" role=\"status\"><\/div>\n\n    <h3>3. Sensitivity Analysis<\/h3>\n    <p class=\"ex-description\">\n      Menguji pengurangan daya mesin utama sebesar 0% hingga 30%,\n      dengan parameter lain tetap.\n    <\/p>\n    <div class=\"ex-chart-wrap\">\n      <canvas id=\"ex-chart\" height=\"250\"><\/canvas>\n    <\/div>\n    <div id=\"ex-sensitivity-table\" class=\"ex-table-wrap\"><\/div>\n\n    <h3>4. Scenario Comparison<\/h3>\n    <p class=\"ex-description\">\n      Membandingkan kondisi awal dengan skenario daya mesin utama\n      dikurangi 10%. Ini adalah simulasi, bukan rekomendasi perubahan daya.\n    <\/p>\n    <div id=\"ex-scenario\" class=\"ex-scenario\"><\/div>\n\n    <h3>5. Iterative Search<\/h3>\n    <p class=\"ex-description\">\n      Mencari daya mesin utama tertinggi yang memenuhi target model,\n      dengan langkah pencarian 1 kW dan batas minimum daya yang dimasukkan.\n    <\/p>\n    <div id=\"ex-iteration\" class=\"ex-iteration\"><\/div>\n    <div id=\"ex-iteration-table\" class=\"ex-table-wrap\"><\/div>\n\n    <p class=\"ex-footnote\">\n      Seluruh status \u201cmemenuhi\u201d pada halaman ini hanya mengacu pada\n      model matematis sederhana dan nilai required EEXI yang dimasukkan.\n      Status ini bukan sertifikasi atau penetapan kepatuhan IMO.\n    <\/p>\n  <\/section>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>A.Judul Proyek Pengembangan dan Analisis Kalkulator Energy Efficiency Existing Ship Index (EEXI) Berbasis Web . B. Nama Lengkap Penulis Tasya Ulya &#8211; 2306266104 C. Afiliasi Departemen Teknik Mesin, Fakultas Teknik, Universitas Indonesia D. Abstrak Energy Efficiency Existing Ship Index (EEXI) merupakan salah satu indikator yang digunakan untuk menilai efisiensi energi kapal yang telah beroperasi. Perhitungan [&hellip;]<\/p>\n","protected":false},"author":655,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-19249","post","type-post","status-publish","format-standard","hentry","category-general"],"_links":{"self":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts\/19249","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/users\/655"}],"replies":[{"embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/comments?post=19249"}],"version-history":[{"count":10,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts\/19249\/revisions"}],"predecessor-version":[{"id":19332,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/posts\/19249\/revisions\/19332"}],"wp:attachment":[{"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/media?parent=19249"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/categories?post=19249"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ccitonline.com\/wp\/wp-json\/wp\/v2\/tags?post=19249"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}