🧮 Schrödinger Denklemini Python ile Sayısal Olarak Çözmek
🔹 1. Giriş: Sayısal Kuantum Fiziğine Giden Yol
Kuantum mekaniği, doğanın temel yasalarını olasılık dalgaları ve enerji seviyeleri üzerinden açıklar. Ancak Schrödinger denklemini analitik olarak çözmek yalnızca birkaç özel durumda mümkündür; serbest parçacık, harmonik osilatör veya sonsuz potansiyel kuyusu gibi ideal sistemlerde çözüm kolaydır. Gerçek dünyada ise potansiyel enerjiler genellikle karmaşık ve değişkendir. İşte burada sayısal yöntemler devreye girer. Sayısal analiz, bu tür karmaşık sistemleri çözebilmek için diferansiyel denklemleri matris formuna dönüştürür ve özdeğer problemleri olarak ele alır. Python dili ve NumPy kütüphanesi bu alanda güçlü araçlar sunar. Özellikle tek boyutlu Schrödinger denklemi, uygun bir grid sistemi ve sonlu fark (finite difference) yöntemi kullanılarak kolayca çözülebilir. Bu sayede potansiyel kuyu gibi klasik bir kuantum problemi, bilgisayar ortamında görselleştirilebilir hale gelir.
🔹 2. Schrödinger Denkleminin Sayısal Formu
Zaman-bağımsız Schrödinger denklemi, bir parçacığın enerji durumlarını belirler ve şu şekilde ifade edilir:

Bu denklemde dalga fonksiyonunu,
potansiyeli,
ise enerji özdeğerini temsil eder. Sürekli olan bu denklemi sayısal hale getirmek için uzayı belirli aralıklarla örnekleriz. Uzay
adet eşit aralıklı noktaya bölünür ve ikinci türev yaklaşık olarak sonlu fark yöntemiyle
şeklinde yazılır. Böylece diferansiyel denklem bir matris özdeğer problemine dönüşür:
. Burada
Hamiltonyen operatörüdür ve matris formunda kinetik ve potansiyel enerji terimlerinin birleşiminden oluşur.
🔹 3. Grid Sistemi ve Parametrelerin Tanımlanması
Kodun ilk adımında uzay gridini ve fiziksel parametreleri tanımlıyoruz. Aşağıdaki kod parçasında bu adımlar gösterilmiştir:

Bu tanımlama, ile
arasında 600 eşit aralıklı noktadan oluşan bir grid oluşturur. Böylece sürekli bir uzay yerine sayısal bir temsil elde edilir. Doğal birimlerde (
) çalışmak, denklemi sadeleştirir ve boyutsuzlaştırır. Bu aşamada oluşturulan grid, hem hesaplama doğruluğunu hem de performansı korumak açısından idealdir.
🔹 4. Potansiyel Enerjinin Tanımlanması
Modelde kullanılan potansiyel fonksiyonu, sonlu potansiyel kuyusu olarak bilinen klasik bir kuantum sistemidir. Kuyu bölgesinde potansiyel değerine sahipken, dış bölgede sıfırdır. Bu sistem aşağıdaki fonksiyonla tanımlanır:

Bu fonksiyon, kuyunun genişliğini ve derinliğini parametrelerle belirlemeye imkân tanır. Fiziksel olarak bu, belirli bir bölgede parçacığın hapsolduğu anlamına gelir. Kuyu ne kadar derin veya geniş olursa, o kadar fazla bağlı enerji seviyesi oluşur. Bu bağlı durumlar, elektronun kuyudan çıkamayacağı kararlı enerji seviyelerini temsil eder.
🔹 5. Hamiltonyen Matrisinin Kurulması
Schrödinger denklemini matris biçimine çevirmek için, ikinci türev operatörü tridiagonal (üç köşegenli) bir matris olarak yazılır. Bu matrisin köşegeninde , yan köşegenlerinde ise
değerleri bulunur. Python’da bu yapı şu şekilde oluşturulur:

Burada kinetik enerjiye,
ise potansiyel enerjiye karşılık gelir. Böylece Hamiltonyen operatörü tamamlanır. Artık elimizde diferansiyel bir denklem yerine, enerji özdeğerlerini bulmak için çözülebilecek tam bir matris denklemi vardır. Bu formülasyon, kuantum sistemlerini bilgisayar ortamında analiz edebilmenin temelidir.
🔹 6. Özdeğerlerin ve Özfonksiyonların Hesaplanması
Hamiltonyen matrisini oluşturduktan sonra, sistemin enerji seviyelerini ve dalga fonksiyonlarını bulmak için özdeğer çözümlemesi yapılır. Python’un numpy.linalg.eigh() fonksiyonu, Hermit (simetrik) matrisler için yüksek doğrulukta sonuç verir:

Bu işlem sonucunda, enerji seviyeleri ve bunlara karşılık gelen dalga fonksiyonları
elde edilir. Her dalga fonksiyonu, olasılık yoğunluğunun birim alana eşit olması için normalize edilir:

Bu normalizasyon, fiziksel olarak dalga fonksiyonunun toplam olasılığının bir olması anlamına gelir.
🔹 7. Bağlı Durumların Seçilmesi
Enerjisi negatif olan durumlar fiziksel olarak bağlı durumlar olarak adlandırılır. Bu, parçacığın potansiyel kuyusu içinde hapsolduğu ve sonsuza kaçamadığı anlamına gelir. Bu nedenle yalnızca koşulunu sağlayan enerji seviyeleri seçilir:

Bu seçim, yalnızca fiziksel olarak anlamlı olan kuantum durumlarını incelememizi sağlar. Enerjisi sıfır veya pozitif olan durumlar serbest parçacıkları temsil ettiğinden, sistemin kuyu içinde kalan bağlanmış yapılarına dahil edilmez.
🔹 8. Görselleştirme: Enerji Seviyeleri ve Dalga Fonksiyonları
Kuantum sistemlerinde dalga fonksiyonlarını ve enerji seviyelerini görselleştirmek, sistemin doğasını anlamak açısından çok değerlidir. Aşağıdaki kod, potansiyel ile birlikte dalga fonksiyonlarını aynı eksende gösterir:

Bu grafik, her bir enerji seviyesini ve buna karşılık gelen dalga fonksiyonlarını enerji ekseninde konumlandırır. Dalga fonksiyonlarının kuyunun içinde salınımlı, dışında ise üstel olarak azalan biçimde olması, kuantum tünelleme etkisini açıkça ortaya koyar. Ayrıca enerji seviyeleri arasında belirli bir aralık bulunur; bu, enerjinin kuantumlaşmış doğasını yansıtır.
🔹 9. Sonlu Kuyu Grafiğini Elde Ettiğimiz Python Kodunun Tamamı Ve Çıktısı




🔹 10. Sonuç ve Yorum
Bu çalışma, Schrödinger denklemini sayısal yöntemlerle çözmenin temellerini göstermektedir. Diferansiyel bir denklem, sonlu fark yöntemiyle cebirsel bir matris problemine dönüştürülmüş ve böylece kuantum sisteminin enerji seviyeleri hesaplanmıştır. Kodda kullanılan yaklaşım yalnızca sonlu potansiyel kuyuları için değil, çift kuyu, parabolik potansiyel veya rastgele potansiyel profilleri gibi daha karmaşık sistemler için de kolaylıkla uyarlanabilir. Bu yöntem, kuantum fiziğini sadece teorik bir alan olmaktan çıkarıp bilgisayar destekli simülasyonlarla gözlemlenebilir hale getirir. Potansiyel derinliği veya genişliği değiştirilerek, bağlı durum sayısının nasıl değiştiği incelenebilir ve sistemin kuantum özellikleri doğrudan gözlemlenebilir.
🔹 Yazar: Mert Yiğit Korkmaz
📚 Kaynakça
- Griffiths, D. J. Introduction to Quantum Mechanics. Cambridge University Press, 2018.
- Shankar, R. Principles of Quantum Mechanics. Springer, 2019.
- Newman, M. Computational Physics. CreateSpace Independent Publishing, 2012.
- Scipy Lecture Notes – Quantum Mechanics Tutorial
- Python NumPy Documentation, https://numpy.org/doc
