k-Wave: Toolbox MATLAB untuk Simulasi Gelombang Akustik dalam Domain Waktu

Dalam dunia sains dan rekayasa, memahami bagaimana gelombang suara (gelombang akustik) merambat melalui berbagai media sangat penting. Misalnya, dalam bidang medis, gelombang suara digunakan untuk pencitraan ultrasound. Dalam teknik, simulasi akustik digunakan untuk merancang speaker, sonar, atau sistem deteksi bawah air.

Untuk melakukan simulasi seperti itu, para peneliti sering membutuhkan alat yang akurat, fleksibel, dan mudah digunakan. Di sinilah k-Wave hadir sebagai solusi.


Apa itu k-Wave?

k-Wave adalah toolbox MATLAB open-source yang dirancang untuk melakukan simulasi gelombang akustik dalam domain waktu (time-domain).
Toolbox ini dikembangkan oleh tim di University College London (UCL) dan telah digunakan luas di berbagai bidang, mulai dari medis, teknik suara, hingga riset fisika gelombang.

Dengan k-Wave, pengguna dapat mensimulasikan bagaimana gelombang suara merambat, memantul, dibiaskan, atau diserap oleh objek di sekitarnya — baik dalam dua dimensi (2D) maupun tiga dimensi (3D).


Mengapa Disebut “Domain Waktu”?

Dalam simulasi akustik, ada dua pendekatan utama:

  1. Domain frekuensi, yang berfokus pada analisis gelombang berdasarkan spektrum frekuensi.

  2. Domain waktu, yang melacak perubahan gelombang dari waktu ke waktu.

k-Wave menggunakan pendekatan domain waktu, artinya ia menghitung bagaimana tekanan suara, kecepatan partikel, dan parameter lainnya berubah setiap saat dalam proses propagasi gelombang.

Pendekatan ini sangat berguna untuk mempelajari fenomena yang melibatkan gelombang tak linier, refleksi kompleks, atau media heterogen — yaitu media dengan sifat akustik yang tidak seragam.


Fitur Utama k-Wave

  1. Simulasi 1D, 2D, dan 3D
    Anda bisa memilih dimensi sesuai kebutuhan — simulasi 1D untuk eksperimen sederhana, 2D untuk studi bidang gelombang, atau 3D untuk kasus realistis seperti pencitraan medis.

  2. Model Akustik Linear dan Nonlinear
    k-Wave dapat memodelkan gelombang suara biasa (linear) maupun gelombang dengan efek nonlinier seperti distorsi amplitudo yang sering terjadi pada intensitas tinggi.

  3. Dukungan untuk Medium Heterogen
    Toolbox ini memungkinkan Anda mendefinisikan peta kecepatan suara, densitas, dan atenuasi (peredaman) yang berbeda-beda di setiap titik. Dengan begitu, Anda bisa mensimulasikan kondisi realistis seperti jaringan tubuh manusia atau material kompleks.

  4. Absorbing Boundary Conditions (PML)
    Untuk mencegah gelombang pantulan palsu di tepi domain simulasi, k-Wave dilengkapi dengan Perfectly Matched Layer (PML), yaitu lapisan buatan yang menyerap gelombang keluar seolah-olah domainnya tak terbatas.

  5. Sumber dan Sensor Fleksibel
    Anda bisa menentukan lokasi sumber suara (seperti transduser ultrasound) dan sensor penerima dengan mudah. k-Wave juga memungkinkan simulasi multi-sumber dan multi-sensor.

  6. Antarmuka MATLAB yang Ramah
    Karena dibangun di atas MATLAB, pengguna dapat dengan mudah memvisualisasikan hasil simulasi dalam bentuk grafik, animasi, atau peta tekanan suara secara real-time.


Bagaimana Cara Kerjanya?

Konsep dasar k-Wave didasarkan pada Persamaan Gelombang Akustik, yang menggambarkan hubungan antara tekanan suara, kecepatan partikel, dan sifat medium.

Langkah umum penggunaannya adalah sebagai berikut:

  1. Menentukan domain simulasi
    Tentukan ukuran ruang, resolusi grid, dan waktu simulasi.

  2. Menetapkan parameter medium
    Seperti kecepatan suara (m/s), densitas (kg/m³), dan koefisien atenuasi.

  3. Menambahkan sumber suara
    Misalnya sumber tekanan sinusoidal atau pulsa pendek.

  4. Menentukan sensor penerima
    Untuk merekam tekanan suara di titik tertentu atau sepanjang bidang tertentu.

  5. Menjalankan simulasi
    Dengan fungsi utama seperti kspaceFirstOrder2D atau kspaceFirstOrder3D.

  6. Menganalisis hasil
    Hasil simulasi dapat divisualisasikan untuk melihat pola gelombang, amplitudo, atau efek pantulan dan interferensi.

Contoh sederhana (2D) di MATLAB:

kgrid = makeGrid(128, 0.1e-3, 128, 0.1e-3);
medium.sound_speed = 1500;
source.p0 = makeCircle(128, 128, 20, 128, 64);
sensor.mask = makeCircle(128, 128, 60);
sensor_data = kspaceFirstOrder2D(kgrid, medium, source, sensor);

Kode di atas membuat simulasi sederhana gelombang dari lingkaran sumber dan mendeteksinya di area sekitarnya.


Kelebihan dan Kegunaan Nyata

  • Bidang medis: untuk simulasi ultrasound, fotoakustik, dan terapi gelombang kejut.

  • Bidang teknik: analisis kebisingan, desain akustik ruangan, atau sistem sonar.

  • Bidang riset: mempelajari propagasi gelombang pada material kompleks seperti batuan, jaringan biologis, atau fluida.

Selain itu, karena bersifat open-source, komunitas global aktif mengembangkan skrip tambahan, contoh simulasi, dan dokumentasi yang terus diperbarui.


Kesimpulan

k-Wave bukan sekadar toolbox MATLAB biasa. Ia adalah alat ilmiah yang kuat untuk memahami dan memvisualisasikan dunia gelombang akustik.
Dengan kemampuannya mensimulasikan propagasi gelombang dalam berbagai kondisi — linear maupun non-linear, homogen maupun heterogen — k-Wave membuka peluang besar bagi riset, pengajaran, dan inovasi di banyak bidang.

Bagi pelajar, peneliti, maupun praktisi yang ingin memahami akustik secara mendalam tanpa harus membangun model fisik yang mahal, k-Wave adalah pilihan ideal. Cukup dengan MATLAB dan sedikit kode, Anda bisa “melihat” bagaimana suara benar-benar bekerja di dalam dunia nyata.


Infrastruktur IT yang kuat adalah kunci produktivitas perusahaan. Dengan mathworks indonesia, Anda bisa mendapatkan solusi IT lengkap yang sesuai dengan kebutuhan Anda. iLogo Indonesia sebagai mitra terpercaya siap mengintegrasikan semuanya agar bisnis Anda tetap berjalan lancar dan aman.
Hubungi kami sekarang atau kunjungi mathworks.ilogoindonesia.id untuk informasi lebih lanjut!