TUGAS BESAR – AGUS NURBILLAH

OPTIMASI KOMPUTASI DAN ANALISIS TERMOMEKANIS PADA EVAPORATOR SURYA ANTARMUKA BERBASIS KOMPOSIT HIDROGEL-BIOCHAR UNTUK DESALINASI EFISIEN

Agus Nurbillah

Department of Mechanical Engineering, Faculty of Engineering, Universitas Indonesia, Depok, 16424, Indonesia

ABSTRAK

Tugas ini mengembangkan dan mensimulasikan material Interfacial Solar Evaporator (ISE) berbasis biomassa (jerami padi) dan hidrogel sodium alginate untuk mengatasi inefisiensi pada desalinasi surya konvensional. Tantangan utama dalam teknologi ini adalah menemukan keseimbangan (trade-off) antara laju evaporasi tinggi dan stabilitas mekanis struktur. Menggunakan pendekatan Computational Thinking, penelitian ini menerapkan metode numerik (Interpolasi Spline, Newton-Raphson, dan Finite Difference Method) untuk memodelkan perilaku termodinamika dan transport massa garam. Hasil simulasi menunjukkan bahwa varian material CAM0.8 (konsentrasi biochar 0.8 wt%) merupakan titik optimal, menghasilkan laju evaporasi ~2.45 kg/mยฒ/h dengan efisiensi konversi energi tinggi, sembari mempertahankan integritas struktur dari degradasi akibat gelombang air dan kristalisasi garam.

AUTHOR DECLARATION

https://drive.google.com/drive/folders/1nWYMl2s4O8sTc6_25nZ4CCeC8FuHX3ah?usp=sharing

The DAI5 Framework

1. Deep Awareness of I (Kesadaran Diri)

Sebagai peneliti dan hamba, saya menyadari sepenuhnya bahwa “Aku” (Diri) hanyalah pengamat yang mencoba membaca algoritma alam semesta yang telah ditetapkan oleh Sang Pencipta (The Divine Algorithm). Kompleksitas struktur pori biochar, dinamika fluida, dan hukum termodinamika yang saya teliti bukanlah ciptaan saya, melainkan Sunnatullah yang tersembunyi di alam. Kesadaran ini menempatkan saya pada posisi kerendahan hati (tawadhu); bahwa teknologi dan kode pemrograman yang saya bangun hanyalah alat bantu (wasilah) untuk menyingkap solusi air bersih yang sejatinya telah disediakan-Nya. Penelitian ini adalah bentuk dzikir intelektual untuk memahami kebesaran-Nya melalui sains.

2. Intention (Niat & Tujuan)

Intensi proyek ini melampaui sekadar pencapaian akademis. Tujuannya adalah untuk menghadirkan solusi kemanusiaan yang nyata bagi krisis air bersih global menggunakan material yang berkelanjutan dan melimpah (limbah pertanian). Dengan mengintegrasikan Computational Thinking (AgusAI), saya berniat mempercepat proses penemuan material baru yang efisien, murah, dan ramah lingkungan. Ini adalah manifestasi tanggung jawab saya sebagai Khalifah fil ardh untuk menjaga bumi dan memberikan manfaat seluas-luasnya (Rahmatan lil ‘alamin) melalui inovasi teknologi yang memuliakan kehidupan.

3. Initial Thinking (Pemikiran Awal – Dekomposisi & Pola)

Proses berpikir ini bermula dari keresahan terhadap inefisiensi desalinasi konvensional yang memanaskan seluruh volume air (bulk heating). Melalui fase Dekomposisi, saya memecah masalah kompleks ini menjadi subsistem: optik (penyerapan cahaya), termal (lokalisasi panas), dan fluida (suplai air).

Dalam fase Pengenalan Pola, saya mengamati adanya paradoks desain (trade-off): material dengan porositas tinggi sangat baik untuk evaporasi namun sangat lemah secara struktur (mudah hancur oleh ombak). Pemikiran awal saya adalah: “Bagaimana kita bisa menemukan titik keseimbangan (sweet spot) antara efisiensi termal dan kekuatan mekanis tanpa harus melakukan ribuan eksperimen trial-and-error yang memboroskan sumber daya?”

4. Idealization (Idealisasi – Abstraksi Model)

Untuk menjawab pertanyaan di atas, saya melakukan Abstraksi dengan mengubah realitas fisik yang rumit menjadi model matematis yang dapat dihitung:

  • Material: Struktur acak jerami padi dan rantai polimer diidealisasikan sebagai Continuum Medium dengan parameter porositas efektif (phi) dan densitas crosslinking (“Egg-box structure”).
  • Termodinamika: Evaporator tidak dianggap sekadar benda basah, melainkan sebuah mesin konversi energi di mana:
  • Transport Garam: Fenomena penyumbatan pori (clogging) diidealisasikan menjadi pertarungan satu dimensi antara kecepatan air naik (Adveksi, u) dan kecepatan garam turun (Difusi, D).

5. Instruction Set (Set Instruksi – Desain Algoritma)

Berdasarkan idealisasi tersebut, saya menyusun Set Instruksi (Algoritma Numerik) untuk menyelesaikan masalah secara komputasi:

  • Langkah 1 (Pre-processing): Lakukan Interpolasi Spline Kubik pada data eksperimen diskrit untuk mendapatkan fungsi properti material yang kontinu.
  • Langkah 2 (Solver): Gunakan metode Newton-Raphson untuk menyelesaikan persamaan kesetimbangan energi non-linear dan menemukan suhu permukaan (Tsurf).
  • Langkah 3 (Evaluasi): Jalankan simulasi Finite Difference Method (FDM) untuk memprediksi profil konsentrasi garam dan risiko penyumbatan.
  • Langkah 4 (Optimasi): Terapkan algoritma Grid Search dengan Penalty Function; jika desain terdeteksi rapuh atau tersumbat, berikan skor nol. Jika aman, pilih desain dengan Water Yield tertinggi (kg/mยฒ/hari).

INTRODUCTION

Initial Thinking about the Problem

Krisis air bersih global menuntut inovasi teknologi desalinasi yang tidak hanya efisien energi tetapi juga berkelanjutan. Namun, pengembangan material maju seringkali terhambat oleh proses trial-and-error yang lambat dan mahal. Proyek ini mendekati permasalahan Interfacial Solar Evaporator (ISE) berbasis biomassa melalui lensa Computational Thinking, yang mentransformasi tantangan fisik menjadi model komputasi yang terstruktur melalui empat tahapan kognitif:

1. Dekomposisi (Decomposition): Memecah Kompleksitas

Langkah awal penyelesaian masalah dimulai dengan memecah sistem desalinasi surya yang rumit menjadi subsistem-subsistem yang lebih kecil dan terkelola:

  • Subsistem Termal (Heat Localization): Mengidentifikasi inefisiensi solar still konvensional yang memanaskan seluruh volume air (bulk heating). Fokus dipecah menjadi: bagaimana melokalisasi panas hanya pada antarmuka air-udara.
  • Subsistem Material (Sustainability): Memisahkan masalah biaya dan ekologi. Bagaimana mengganti penyerap cahaya berbasis logam mulia (plasmonik) dengan limbah biomassa (jerami padi) tanpa mengorbankan performa?
  • Subsistem Fluida (Anti-Clogging): Memecah masalah durabilitas menjadi manajemen garam. Bagaimana mendesain jalur kapiler yang memungkinkan air naik, tetapi mencegah garam menumpuk dan menyumbat pori?

2. Pengenalan Pola (Pattern Recognition): Identifikasi Trade-off

Berdasarkan analisis data eksperimental terdahulu, pola perilaku material yang berulang berhasil diidentifikasi:

  • Pola Optik vs. Mekanik: Penambahan biochar meningkatkan penyerapan cahaya (pola positif), namun secara simultan menurunkan integritas struktur akibat peningkatan porositas (pola negatif). Terdapat titik kritis di mana material menjadi terlalu rapuh untuk menahan gelombang air.
  • Pola Kristalisasi: Akumulasi garam cenderung terjadi saat laju evaporasi melebihi kecepatan difusi balik garam ke badan air. Pola ini mengindikasikan perlunya struktur pori yang terarah (aligned channels) untuk menyeimbangkan adveksi dan difusi.

3. Abstraksi (Abstraction): Penyederhanaan Model

Untuk mensimulasikan realitas fisik yang acak (struktur jerami dan rantai polimer) ke dalam komputer, dilakukan proses generalisasi dan penghilangan detail yang tidak perlu:

  • Model Poroelastik: Struktur mikroskopis biochar-alginat yang rumit diabstraksikan menjadi Continuum Medium dengan parameter kunci: Porositas Efektif (phi), Konduktivitas Termal (k), dan Densitas Crosslinking.
  • Model “Egg-Box”: Interaksi kimia ion Ca2+ dan Alginate disederhanakan menjadi parameter kekakuan pegas dalam simulasi mekanika, mengabaikan interaksi atomik individu namun tetap menangkap perilaku makroskopis material (viskoelastisitas).

4. Desain Algoritma (Algorithm Design): Solusi Numerik

Berdasarkan ketiga tahap sebelumnya, solusi dirancang bukan melalui eksperimen fisik semata, melainkan melalui langkah-langkah komputasi logis (Algoritma AgusAI):

  • Sistem dimodelkan menggunakan persamaan kesetimbangan energi non-linear dan persamaan diferensial transport massa.
  • Algoritma optimasi diterapkan untuk mencari “Titik Tengah” (Sweet Spot)โ€”yaitu komposisi material (misal: CAM0.8) yang memaksimalkan laju evaporasi sekaligus mempertahankan stabilitas mekanis di atas ambang batas keamanan, meniadakan kebutuhan akan ribuan eksperimen fisik.

METHODS & PROCEDURES

Numerical Framework & Algorithm Design

Metodologi penelitian ini dirancang sebagai simulasi komputasi terpadu (Integrated Computational Simulation) yang berjalan di atas kerangka kerja “AgusAI Solver”. Prosedur penyelesaian masalah dibagi menjadi tiga fase algoritmik utama: Pre-processing (Input Data), Core Simulation (Proses Fisika), dan Optimization (Pengambilan Keputusan).

Berikut adalah detail implementasi numerik untuk setiap fase.

Phase 1: Data Pre-processing (Arsitektur Interpolasi)

Sebelum simulasi dijalankan, data eksperimental diskrit dari karakterisasi material (FTIR, SEM, dan Uji Tarik) harus diubah menjadi fungsi kontinu agar dapat diproses oleh algoritma optimasi.

  • Masalah: Data laboratorium bersifat diskrit (misal: hanya tersedia data pada konsentrasi Biochar 0%, 10%, 20%). Simulasi membutuhkan nilai pada titik sembarang (misal: 15.5%).
  • Metode Numerik: Interpolasi Spline Kubik (Cubic Spline Interpolation).
  • Implementasi: Metode ini menghubungkan titik-titik data eksperimen dengan polinomial derajat tiga yang mulus S(x), menjamin kontinuitas turunan pertama dan kedua.
    • Output fungsi: a(x) untuk absorptivitas optik dan S(x) untuk kekuatan mekanik, di mana x adalah persentase massa biochar.

Phase 2: Core Physics Engine (Solver Termodinamika & Transport)

Ini adalah inti dari simulasi yang memodelkan perilaku evaporator saat beroperasi di bawah sinar matahari.

1. Penyelesaian Kesetimbangan Energi (Thermodynamic Solver)

  • Masalah: Menentukan Suhu Permukaan Tsurf memenuhi Hukum Kekekalan Energi. Persamaan ini sangat non-linear karena melibatkan suku radiasi (T^4) dan tekanan uap eksponensial.
  • Metode Numerik: Metode Newton-Raphson (Root Finding).
  • Implementasi: Algoritma melakukan iterasi pencarian akar dengan pendekatan garis singgung (gradien) hingga residual energy mendekati nol (Error < 10-6). Input berupa intensitas surya (qsolar) dan properti material hasil interpolasi.

2. Simulasi Transport Garam (Anti-Clogging Analysis)

  • Masalah: Memprediksi risiko penyumbatan pori akibat kristalisasi garam. Garam bergerak naik karena adveksi air (u) dan turun karena difusi (D).
  • Metode Numerik: Metode Beda Hingga (Finite Difference Method – FDM).
  • Implementasi: Persamaan Diferensial Parsial (PDE) adveksi-difusi didiskritisasi ke dalam grid spasial 1D sepanjang ketebalan hidrogel (z).

Simulasi dijalankan terhadap waktu (time-marching) untuk melihat apakah konsentrasi permukaan (C z=0) melampaui batas saturasi (C = 360 g/L).

Phase 3: Performance Evaluation & Optimization (Pengambilan Keputusan)

Fase terakhir bertujuan mengevaluasi total produktivitas dan memilih desain material terbaik.

1. Perhitungan Total Yield Air (Productivity Calculation)

  • Masalah: Laju evaporasi berubah sepanjang hari mengikuti siklus intensitas matahari (profil sinusoidal dari 06:00 – 18:00).
  • Metode Numerik: Integrasi Numerik Aturan Trapesium (Trapezoidal Rule).
  • Implementasi: Membagi kurva laju evaporasi harian (\dot{m} vs waktu) menjadi segmen-segmen trapesium kecil dan menjumlahkan luasnya untuk mendapatkan total massa air (kg/mยฒ/hari).

2. Optimasi Desain Material (Decision Algorithm)

  • Masalah: Mencari komposisi biochar optimal yang menyeimbangkan evaporasi tinggi dan stabilitas struktur (menyelesaikan trade-off).
  • Metode Numerik: Grid Search dengan Fungsi Penalti (Penalty Function).
  • Implementasi: Algoritma memindai seluruh ruang parameter (misal: Biochar 0% – 50%). Pada setiap titik iterasi, fungsi penalti diterapkan:
    • Penalty 1: Jika FDM mendeteksi kristalisasi (C_surf ย > C_sat), Skor Yield = 0.
    • Penalty 2: Jika Indeks Stabilitas Mekanik < Ambang Batas Aman, Status = REJECT.
    • Selection: Dari kandidat yang lolos penalti, algoritma memilih komposisi dengan Total Yield tertinggi (Global Maximum).

RESULTS & DISCUSSION

Computational Analysis & Design Optimization

1. Karakterisasi Material & Transformasi Data (Arsitektur Interpolasi)

Langkah fundamental dalam simulasi ini adalah menjembatani data eksperimen diskrit dengan kebutuhan input kontinu model komputasi.

  • Analisis Fisik: Data FTIR menunjukkan peningkatan intensitas gugus fungsi hidrofilik (-OH pada 3250 cm-1 dan C=O pada 1621 cm-1 seiring penambahan oksidasi biochar. Hal ini berkorelasi langsung dengan peningkatan wettability. Citra SEM memvalidasi terbentuknya struktur aligned channels yang memfasilitasi kapilaritas.
  • Implementasi Numerik (Cubic Spline Interpolation): Data diskrit absorptivitas (a) dan parameter mekanis (S) pada variasi biochar (x_0, x_1, โ€ฆ., x_n) diinterpolasi menjadi fungsi kontinu S(x). Pada setiap interval [x_i, x_{i+1}], fungsi didefinisikan sebagai polinomial derajat tiga:

Implikasi Hasil: Penggunaan metode ini menjamin kontinuitas turunan pertama (S’_i(x)) dan kedua (S”_i(x)) di titik sambungan (knots). Hasilnya, simulasi perpindahan panas berjalan mulus tanpa lonjakan error numerik saat variabel konsentrasi biochar diubah secara gradual dalam algoritma optimasi.

2. Analisis Kinerja Termal vs. Mekanis (Core Solver)

Simulasi inti mengungkapkan fenomena trade-off kritis antara efisiensi termal dan integritas struktur, yang diselesaikan melalui dua solver berbeda.

  • Aspek Termal (Metode Newton-Raphson):

Simulasi menunjukkan bahwa penambahan biochar 0% hingga 1.0% meningkatkan suhu permukaan (Tsurf) secara drastis. Solver ini mencari akar (Tsurf) dari persamaan kesetimbangan energi non-linear:

Algoritma memperbarui tebakan suhu (T_k) secara iteratif menggunakan turunan fungsi (f'(T)):

Analisis Hasil: Konvergensi tercapai dalam < 5 iterasi, membuktikan efisiensi algoritma. Hasil fisik menunjukkan bahwa biochar bertindak sebagai phonon generator yang efektif, meningkatkan efisiensi fototermal hingga >90% dengan meminimalkan Q_{loss} ke badan air di bawahnya.

  • Aspek Transport Garam & Stabilitas (Metode FDM):

Risiko penyumbatan (clogging) dimodelkan menggunakan persamaan Adveksi-Difusi 1D. Persamaan diferensial parsial ini didiskritisasi menggunakan skema Forward-Time Central-Space (FTCS):

Dimana:

  • Term D: Difusi balik garam ke bawah (mengurangi konsentrasi permukaan).
  • Term u: Adveksi garam ke atas oleh aliran air (menambah konsentrasi).

Analisis Hasil: Pada konsentrasi biochar tinggi (>1.2 wt%), porositas berlebih menyebabkan laju evaporasi dan aliran air (u) meningkat drastis, mendominasi laju difusi (u >> D). FDM memprediksi akumulasi garam (C_surf > C_sat) dalam waktu < 4 jam operasi, yang memicu penalti pada desain tersebut.

3. Optimasi Desain: The “Sweet Spot” (Arsitektur Optimasi)

Tahap akhir menggunakan algoritma pengambilan keputusan untuk menentukan komposisi material terbaik.

  • Penemuan Titik Optimal (Grid Search + Penalty Function):

Fungsi objektif (J) dimaksimalkan dengan kendala penalti (penalty constraints):

Dimana fungsi penalti biner didefinisikan sebagai:

Analisis Hasil: Algoritma mengidentifikasi CAM0.8 (0.8 wt% Biochar) sebagai titik optimal (sweet spot). Sampel dengan biochar lebih tinggi (CAM1.0) memberikan evaporasi sedikit lebih tinggi tetapi terkena penalti P_mech = 0 (gagal struktur), sedangkan sampel lebih rendah (CAM0.5) tidak optimal secara termal.

  • Kalkulasi Yield Akhir (Integrasi Trapesium):

Total produksi air harian (Y_{total}) untuk desain terpilih dihitung dengan mengintegrasikan laju evaporasi instan (\dot{m}) terhadap waktu (t):

CONCLUSION

1. Sintesis Metodologi: Integrasi Sains Material dan Komputasi

Penelitian ini berhasil membuktikan bahwa pengembangan material maju untuk desalinasi air laut tidak lagi harus bergantung sepenuhnya pada metode trial-and-error yang lambat. Melalui pendekatan Computational Thinking (CT), kompleksitas fisik dari material komposit Sodium Alginate dan Biochar Jerami Padi berhasil didekomposisi dan diabstraksikan menjadi model matematika yang presisi. Integrasi lima metode numerik utama, Interpolasi Spline untuk data material, Newton-Raphson untuk termodinamika, FDM untuk transport garam, Integrasi Trapesium untuk kalkulasi yield, dan Optimasi Penalti untuk pengambilan keputusanโ€”telah membentuk kerangka kerja simulasi “AgusAI” yang robust dalam memprediksi perilaku material di dunia nyata.

2. Resolusi Paradoks Desain (The Trade-off Resolution)

Temuan fundamental dari studi ini adalah identifikasi dan penyelesaian konflik antara efisiensi termal dan stabilitas struktural.

  • Secara fisik, penambahan biochar terbukti meningkatkan penyerapan cahaya dan konversi fototermal secara drastis (mengubah foton menjadi fonon).
  • Namun, simulasi FDM dan uji stabilitas mengungkap batas kritis: konsentrasi biochar yang berlebihan menyebabkan porositas ekstrem yang memicu akumulasi garam (clogging) karena laju adveksi melebihi difusi, serta kelemahan struktural terhadap gelombang air.

3. Penemuan Titik Optimal (The “Sweet Spot”)

Berdasarkan algoritma optimasi, varian CAM0.8 (0.8 wt% Biochar) ditetapkan sebagai desain material paling optimal. Desain ini menawarkan keseimbangan terbaik:

  • Produktivitas Tinggi: Menghasilkan uap air bersih dengan laju ~2.45 kg/mยฒ/h, melampaui batas teoritis evaporasi air murni berkat pemanfaatan entalpi penguapan rendah pada hidrogel.
  • Keberlanjutan Sistem: Struktur pori aligned channels pada komposisi ini menjamin mekanisme self-cleaning yang efektif (Difusi Garam > Adveksi Air) dan mempertahankan integritas mekanis “Egg-box structure” yang dikunci oleh ion Ca+2.

4. Implikasi Luas dan Filosofis

Secara teknis, penelitian ini menawarkan solusi teknologi tepat guna yang mengubah limbah pertanian (jerami padi) menjadi alat pemanen air bersih yang efisien energi. Secara filosofis, keberhasilan simulasi ini menegaskan kembali kesadaran penulis (Deep Awareness) bahwa tugas peneliti hanyalah menyingkap algoritma alam (Sunnatullah) yang sudah ada. Pendekatan komputasi ini tidak hanya menghemat sumber daya riset, tetapi juga merupakan manifestasi tanggung jawab ekologis untuk menghadirkan teknologi yang ramah lingkungan dan berkelanjutan bagi kemanusiaan.

ACKNOWLEDGMENTS

Author mengucapkan terimakasih kepada Profesor Ahmad Indra serta teman teman di kelas komputasi teknik semester gasal 2025/2026 Teknik mesin UI. Author juga berterimakasih terhadap AIDAI5 yang memungkinkan pembuatan AI agent.

REFERENCES

Proyek ini dibuat dengan bantuan Gemini AI.

APPENDICES

Code

import numpy as np

import matplotlib.pyplot as plt

from scipy.interpolate import CubicSpline

from scipy.optimize import newton

# ==============================================================================

# KELAS UTAMA: SOLVER NUMERIK EVAPORATOR

# ==============================================================================

class BiocharEvaporatorSolver:

    def __init__(self):

        # — KONSTANTA FISIKA & LINGKUNGAN —

        self.sigma = 5.67e-8    # Konstanta Stefan-Boltzmann (W/m2.K4)

        self.h_conv = 10.0      # Koefisien konveksi udara (W/m2.K)

        self.T_amb = 298.15     # Suhu ambien 25ยฐC (Kelvin)

        self.L_vap = 2260e3     # Entalpi penguapan air (J/kg)

        self.C_salt_sea = 35.0  # Konsentrasi garam laut (g/L)

        self.C_sat = 360.0      # Batas saturasi garam (g/L) – Clogging point

        # — 1. DATA EKSPERIMEN (Pre-Processing) —

        # Data diskrit dari Lab (misal: Biochar 0%, 10%, 20%, 30%, 40%, 50%)

        self.biochar_samples = np.array([0, 10, 20, 30, 40, 50])

        # Absorptivitas Cahaya (Meningkat seiring biochar)

        self.absorb_data = np.array([0.60, 0.85, 0.92, 0.96, 0.97, 0.98])

        # Kekuatan Tarik/Stabilitas (Menurun seiring biochar – rapuh)

        # Skala 0-1 (1 = Sangat Kuat, 0 = Hancur)

        self.mech_data = np.array([1.0, 0.95, 0.85, 0.60, 0.30, 0.10])

        # — 2. METODE NUMERIK: INTERPOLASI (Cubic Spline) —

        # Mengubah data diskrit menjadi fungsi kontinu f(x)

        self.f_absorb = CubicSpline(self.biochar_samples, self.absorb_data)

        self.f_mech = CubicSpline(self.biochar_samples, self.mech_data)

    def get_material_properties(self, biochar_pct):

        “””Mendapatkan properti material hasil interpolasi.”””

        # Clip agar tidak keluar batas fisik

        alpha = np.clip(self.f_absorb(biochar_pct), 0, 1.0)

        stability = np.clip(self.f_mech(biochar_pct), 0, 1.0)

        return alpha, stability

    def energy_balance_eq(self, T_surf, alpha, Solar_Intensity):

        “””

        Persamaan Non-Linear Kesetimbangan Energi (f(T) = 0).

        Q_in = Q_evap + Q_rad + Q_conv

        “””

        # Q Input

        Q_in = alpha * Solar_Intensity

        # Q Radiasi (Hukum Stefan-Boltzmann)

        epsilon = 0.95 # Emisivitas hidrogel basah

        Q_rad = epsilon * self.sigma * (T_surf**4 – self.T_amb**4)

        # Q Konveksi (Hukum Pendinginan Newton)

        Q_conv = self.h_conv * (T_surf – self.T_amb)

        # Q Evaporasi

        # Pendekatan: Laju evaporasi fungsi eksponensial dari suhu (Simplified)

        # Menggunakan Antoine Equation sederhana untuk tekanan uap

        P_sat = 1000 * np.exp(20.386 – (5132 / T_surf)) # mmHg to Pascal approx logic

        m_dot = 1e-6 * (P_sat) # Koefisien transfer massa sederhana

        Q_evap = m_dot * self.L_vap

        # Residual (Harus = 0 saat setimbang)

        return Q_in – (Q_rad + Q_conv + Q_evap)

    def solve_surface_temp(self, biochar_pct, solar_intensity):

        “””

        — 3. METODE NUMERIK: ROOT FINDING (Newton-Raphson) —

        Mencari T_surf yang memenuhi kesetimbangan energi.

        “””

        alpha, _ = self.get_material_properties(biochar_pct)

        try:

            # Tebakan awal (Initial Guess) = T_ambien + 10K

            T_guess = self.T_amb + 10

            # Solver Newton-Raphson

            T_surf = newton(self.energy_balance_eq, T_guess, args=(alpha, solar_intensity))

            return T_surf

        except RuntimeError:

            return self.T_amb # Jika gagal konvergen, return suhu ruang

    def check_salt_clogging_fdm(self, evap_rate, duration_hours=10):

        “””

        — 4. METODE NUMERIK: FINITE DIFFERENCE METHOD (FDM) —

        Simulasi 1D difusi garam untuk cek clogging.

        Persamaan: dC/dt = D * d2C/dz2 + u * dC/dz

        “””

        # Parameter Grid

        Nz = 20           # Jumlah node kedalaman

        L = 0.02          # Ketebalan hidrogel 2 cm

        dz = L / Nz

        dt = 100          # Time step (detik)

        steps = int(duration_hours * 3600 / dt)

        # Properti Transport

        D_salt = 1.5e-9   # Difusivitas garam di air (m2/s)

        u_water = evap_rate / 1000 # Kecepatan aliran air ke atas (m/s)

        # Inisialisasi Array Konsentrasi (C)

        C = np.ones(Nz) * self.C_salt_sea # Awalnya semua air laut (35 g/L)

        # Loop Waktu (Time Marching)

        is_clogged = False

        for n in range(steps):

            C_new = C.copy()

            # FDM Scheme (Upwind untuk Adveksi, Central untuk Difusi)

            for i in range(1, Nz-1):

                diffusion = D_salt * (C[i+1] – 2*C[i] + C[i-1]) / (dz**2)

                advection = u_water * (C[i] – C[i+1]) / dz

                C_new[i] = C[i] + dt * (diffusion + advection)

            # Boundary Condition

            # Bawah (Sumber Air Laut): Konsentrasi tetap

            C_new[-1] = self.C_salt_sea

            # Atas (Permukaan): Akumulasi garam karena air hilang

            C_new[0] = C_new[0] + (u_water * C_new[1] / dz) * dt

            C = C_new

            # Cek Clogging

            if C[0] > self.C_sat:

                is_clogged = True

                break

        return is_clogged, C[0]

    def simulate_daily_cycle(self, biochar_pct):

        “””

        — 5. METODE NUMERIK: INTEGRASI (Trapezoidal Rule) —

        Menghitung total yield air dalam satu hari (06:00 – 18:00).

        “””

        hours = np.linspace(6, 18, 13) # Jam 6 pagi sampai 6 sore

        evap_rates = []

        for h in hours:

            # Model Intensitas Matahari Sinusoidal (Puncak jam 12)

            intensity = 1000 * np.sin(np.pi * (h – 6) / 12)

            if intensity < 0: intensity = 0

            # Hitung Suhu Permukaan (Newton Solver)

            T_surf = self.solve_surface_temp(biochar_pct, intensity)

            # Hitung Laju Evaporasi (kg/m2s)

            P_sat = 1000 * np.exp(20.386 – (5132 / T_surf))

            m_dot = 1e-6 * P_sat

            evap_rates.append(m_dot * 3600) # Convert to kg/m2/hour

        # Integrasi Numerik (Area di bawah kurva)

        total_yield = np.trapz(evap_rates, hours) # kg/m2/day

        # Cek Kualitas Mekanik & Clogging (Penalti)

        _, stability = self.get_material_properties(biochar_pct)

        # Ambil rate rata-rata untuk cek clogging

        avg_rate = np.mean(evap_rates) / 3600

        clogged, salt_conc = self.check_salt_clogging_fdm(avg_rate)

        return total_yield, stability, clogged

# ==============================================================================

# EKSEKUSI UTAMA (MAIN)

# ==============================================================================

solver = BiocharEvaporatorSolver()

# Range Biochar yang akan diuji (Optimasi Grid Search)

biochar_range = np.linspace(0, 50, 51)

results_yield = []

results_stability = []

valid_designs = []

print(f”{‘Biochar(%)’:<12} | {‘Yield(kg/m2)’:<15} | {‘Stabilitas’:<12} | {‘Status’:<10}”)

print(“-” * 60)

for bc in biochar_range:

    yld, stab, is_clogged = solver.simulate_daily_cycle(bc)

    results_yield.append(yld)

    results_stability.append(stab)

    # Kriteria Desain (Design Logic / Penalty Function)

    status = “OK”

    if is_clogged:

        status = “CLOGGED” # Gagal karena garam

        yld = 0 # Penalti

    elif stab < 0.4:

        status = “RAPUH”   # Gagal karena mekanik

    else:

        valid_designs.append((bc, yld))

    if bc % 10 == 0: # Print setiap kelipatan 10

        print(f”{bc:<12.1f} | {yld:<15.2f} | {stab:<12.2f} | {status:<10}”)

# — VISUALISASI HASIL —

fig, ax1 = plt.subplots(figsize=(10, 6))

ax1.set_xlabel(‘Kandungan Biochar (%)’, fontsize=12)

ax1.set_ylabel(‘Total Yield Harian (kg/mยฒ)’, color=’blue’, fontsize=12)

ax1.plot(biochar_range, results_yield, color=’blue’, linewidth=2, label=’Water Yield’)

ax1.tick_params(axis=’y’, labelcolor=’blue’)

ax1.grid(True, alpha=0.3)

ax2 = ax1.twinx() 

ax2.set_ylabel(‘Indeks Stabilitas Mekanik (0-1)’, color=’red’, fontsize=12)

ax2.plot(biochar_range, results_stability, color=’red’, linestyle=’–‘, linewidth=2, label=’Stabilitas’)

ax2.tick_params(axis=’y’, labelcolor=’red’)

ax2.axhline(0.4, color=’red’, linestyle=’:’, label=’Batas Aman’)

plt.title(‘Optimasi Numerik: Trade-off Evaporasi vs Stabilitas’, fontsize=14)

plt.show()

# Rekomendasi

if valid_designs:

    best_design = max(valid_designs, key=lambda x: x[1])

    print(“\n” + “=”*40)

    print(f”REKOMENDASI AGUS.AI: Biochar {best_design[0]}%”)

    print(f”Estimasi Produksi Air: {best_design[1]:.2f} kg/mยฒ/hari”)     print(“=”*40)


Leave a Reply

Your email address will not be published. Required fields are marked *