Friday, February 2, 2007

Python untuk Menggambarkan Partikel dalam Potensial Kotak Tak Hingga

Python untuk Menggambarkan Partikel dalam Potensial Kotak Tak Hingga

Tulisan ini adalah percikan permenungan masa silam—sebuah sketsa yang pertama kali saya renungkan sekitar tahun 1992 dan saya plot ulang pada 2007—kini disajikan kembali dengan Python agar mudah direplikasi di komputer mana pun. Kita akan meninjau teori singkat “partikel dalam potensial kotak tak hingga” (infinite square well) dan lalu mem-plot bentuk fungsi gelombangnya untuk beberapa bilangan kuantum n. Fokusnya sederhana: memahami bentuk solusi, normalisasi, dan cara memvisualisasinya secara cepat.

1) Latar Teoretis Singkat
Model “potensial kotak tak hingga” mendeskripsikan partikel bermassa m yang terkurung sempurna pada rentang posisi 0 ≤ x ≤ L. Di dalam kotak, potensial V(x)=0; di luar kotak, potensialnya tak hingga. Batas ini memaksa fungsi gelombang ψ(x) lenyap di tepi: ψ(0)=0 dan ψ(L)=0. Menyelesaikan persamaan Schrödinger waktu-independen pada domain tersebut menghasilkan himpunan solusi diskret (terkuantisasi).

2) Fungsi Gelombang & Kuantisasi Energi
Solusi ruang (ruang satu dimensi) untuk keadaan-keadaan stasioner adalah:

ψn(x) = √(2/L) · sin(n·π·x/L), dengan n = 1, 2, 3, …

Koefisien √(2/L) memastikan normalisasi 0Ln(x)|² dx = 1. Nilai n adalah bilangan kuantum utama yang menentukan jumlah simpul dan “bentuk” gelombang. Energi pun terkuantisasi:

En = (n²·π²·ħ²)/(2mL²).

Artinya, semakin tinggi n, semakin rapat gelombangnya, dan energinya bertambah secara kuadrat terhadap n. Keadaan dasar (n=1) tidak pernah berenergi nol; inilah energi titik nol (zero-point energy).

3) Interpretasi Probabilitas
Probabilitas menemukan partikel di sekitar posisi x sebanding dengan n(x)|². Untuk n=1, probabilitas memuncak di tengah kotak; untuk n yang lebih tinggi, akan muncul simpul (titik nol probabilitas) dan daerah puncak yang bergantian.

4) Plotting dengan Python
Secara komputasional, solusi ini mudah divisualisasikan. Kita cukup mendefinisikan L, membuat grid posisi x, dan menuliskan fungsi ψn(x). Contoh di bawah memplot beberapa keadaan (n = 1…5). Untuk memudahkan visualisasi, setiap kurva di-offset ke atas agar tidak saling menimpa (murni keperluan estetika plot).

import numpy as np
import matplotlib.pyplot as plt

# Rentang x dalam kotak kuantum (0 hingga L)
L = 1  # Panjang kotak
x = np.linspace(0, L, 1000)  # Discretisasi ruang

# Fungsi gelombang untuk partikel dalam kotak kuantum
def psi_n(n, x, L):
    return np.sqrt(2 / L) * np.sin(n * np.pi * x / L)

# Plot beberapa nilai n
plt.figure("Partikel dalam Potensial Kotak Tak Hingga", figsize=(10, 6))
plt.axhline(0, color='black', linewidth=1)
plt.axvline(0, color='black', linewidth=1)
plt.grid(True)

colors = ['red', 'green', 'blue', 'magenta', 'orange', 'cyan']
for i, n in enumerate([1, 2, 3, 4, 5]):
    plt.plot(x, psi_n(n, x, L) + 5 - n, '-', color=colors[i], label=f'n={n}')

plt.title("Fungsi Gelombang dalam Potensial Kotak Tak Hingga")
plt.legend()
plt.xlabel("x (posisi dalam kotak)")
plt.ylabel("ψ(x) + offset")
plt.show()

5) Cara Menjalankan
Simpan kode sebagai berkas .py, pastikan numpy dan matplotlib telah terpasang, lalu jalankan dengan Python. Misalnya melalui terminal:

pip install numpy matplotlib
python nama_berkas.py

6) Catatan Visualisasi
Offset vertikal (+ 5 - n) hanya untuk memisahkan kurva sehingga legenda dan bentuk gelombang mudah dibaca. Jika Anda ingin melihat bentuk asli tanpa pergeseran, hilangkan penjumlahan offset tersebut. Untuk menambahkan “tingkat energi” En sebagai garis bantu, Anda bisa memplot garis horizontal di kanan atau di atas kurva agar sejajar dengan masing-masing n (sekadar petunjuk kualitatif).

7) Penutup Reflektif
Bagi sebagian dari kita, model sederhana ini membawa aroma nostalgia: dulu dihitung dengan tangan dan kalkulator ilmiah pada awal 1990-an, lalu dipetakan di 2006 dengan perangkat lunak yang lebih ramah. Kini, dalam hitungan detik, Python menampilkan kembali gelombang-gelombang itu di layar—mengingatkan bahwa esensi sains tidak berubah: dari papan tulis ke layar monitor, yang berpindah hanyalah alatnya, bukan keindahan matematikanya.

Catatan: Artikel ini adalah percikan permenungan yang berawal pada tahun 1992 dan saya plot ulang pada 2007; kini direplikasi kembali dengan Python sebagai jembatan antara memori lama dan praktik komputasi modern.