Satuan 3 / 11

Simulasi Sistem Fisik

Keuntungan:

  • Kemampuan untuk mensimulasikan sistem fisik dinamis dengan pemecah seperti solve_ivp dan memverifikasi validitas simulasi dengan memantau konservasi energi atau momentum total
  • Kemampuan untuk membedakan artefak numerik dari fisika nyata dengan memilih ukuran langkah dengan uji konvergensi
  • Kemampuan untuk menguji hasil simulasi dengan membandingkannya dengan situasi analitis dan keadaan batas fisik yang diketahui

Sebagian besar ilmu fisika berkaitan dengan sistem yang berubah terhadap waktu: pendulum yang berosilasi, planet yang mengorbit, benda pendingin, gelombang yang merambat. Sebagian besar sistem ini dijelaskan dengan persamaan diferensial—yaitu persamaan yang menghubungkan laju perubahan suatu besaran (posisi, suhu) dengan besaran itu sendiri. Persamaan ini seringkali tidak memiliki solusi analitis (rumus eksak); sebagai gantinya kami melakukan simulasi: memajukan sistem dalam langkah-langkah waktu kecil dan memantau perilakunya secara numerik. Dalam unit ini, Anda akan mempelajari cara menggunakan kecerdasan buatan (AI) untuk membuat kode simulasi dan — yang paling penting — cara memverifikasi dengan undang-undang konservasi apakah simulasi mencerminkan fisika secara akurat.

Ide dasar simulasi dan peran AI

Sebuah simulasi terdiri dari siklus ini: ambil keadaan saat ini, terapkan persamaan perubahan, maju sedikit Δt, ulangi. AI sangat cepat dalam membangun loop ini, memilih pemecah yang tepat — algoritme yang menyelesaikan persamaan diferensial selangkah demi selangkah, dan mengedit kodenya. Alat standar fisikawan adalah scipy.integrate.solve_ivp (fungsi SciPy yang memecahkan masalah nilai awal). Namun sebelum Anda mempercayai simulasi yang dibuat oleh AI, pertanyaan yang harus Anda tanyakan adalah: Apakah simulasi ini mempertahankan besaran fisika (energi, momentum, momentum sudut) yang perlu dipertahankan?

Sistem

Jenis persamaan

Kriteria validasi

pendulum, pegas

ODE tingkat kedua

Keteguhan energi total

orbit planet

ODE gravitasi Newton

Momentum sudut + kekekalan energi

Dinginkan/panas

ODE tingkat pertama

Konvergensi ke suhu kesetimbangan

peluruhan radioaktif

ODE Eksponensial

Kontrol waktu paruh

Monte Carlo (acak)

statistik

Konvergensi dengan mean/distribusi yang diketahui

Catatan: ODE adalah singkatan dari "persamaan diferensial biasa" — persamaan yang melibatkan turunan terhadap satu variabel (biasanya waktu).

Langkah demi langkah: simulasi yang andal

1. Memperjelas fisika dan kondisi awal. Apa persamaan sistemnya? Apa posisi awal, kecepatan, suhu? Apa saja satuannya? Berikan ini secara eksplisit kepada AI.

2. Pilih pemecah dan ukuran langkah yang sesuai. Langkah waktu yang terlalu besar membuat simulasi tidak stabil (hasilnya meledak atau fisika rusak); Langkah yang terlalu kecil akan memperlambat hal yang tidak perlu. AI mungkin menyarankan, tetapi kendalikan keputusannya.

3. Ikuti hukum konservasi dalam kode etik. Hitung dan cetak energi total (atau momentum) sepanjang simulasi. Jika besarnya penyimpangan yang seharusnya tetap konstan, simulasi tidak dapat diandalkan.

4. Bandingkan dengan solusi yang diketahui. Misalnya, periode bandul amplitudo kecil diketahui dengan rumus T = 2π√(L/g); Bandingkan periode yang diberikan oleh simulasi dengan ini.

5. Ubah parameter, uji perilaku. Apakah getarannya berkurang jika ada penambahan gesekan? Apakah orbitnya berubah seperti yang diharapkan ketika massa bertambah? Uji dengan intuisi fisik.

Tip: Tambahkan "pelacak energi" ke setiap simulasi: hitung energi total pada setiap langkah dan plot sebagai rasio terhadap energi awal. Dalam sistem tanpa gesekan, rasio ini harus tetap mendekati 1. Drift lebih dari 1% merupakan tanda bahwa Anda perlu mengurangi ukuran langkah atau mengganti solver.

tiga kasus mini

Kasus 1 — Semburan energi. Seorang siswa mensimulasikan orbit planet dengan metode Euler sederhana (metode langkah paling primitif) yang ditulis oleh AI. Orbitnya secara bertahap melebar seiring waktu dan planet tersebut "terbang menjauh". Saat siswa tersebut memantau total energi, dia melihat bahwa energi tersebut terus meningkat—sebuah kelemahan yang diketahui dalam metode Euler. Dia meminta AI untuk memberikan pemecah yang dapat menghemat energi dengan lebih baik (metode yang lebih cocok dengan solve_ivp) dan orbitnya menjadi elips yang stabil.

Kasus 2 — Satuan salah, periode salah. Seorang guru menemukan periodenya adalah 0,2 s dalam simulasi pendulum, tetapi nilai yang diharapkan adalah 2 s. Ketika dia memeriksanya, dia menyadari bahwa AI memasukkan panjang dalam sentimeter dan menggunakannya sebagai meter dalam rumusnya. Dengan koreksi satuan, simulasi sesuai dengan nilai analitik T = 2π√(L/g).

Kasus 3 — Verifikasi Monte Carlo. Seorang peneliti meminta AI untuk memberikan kode yang secara acak mengambil sampel (Monte Carlo - simulasi statistik dengan angka acak) partikel yang mengenai detektor. Untuk memverifikasi hasilnya, ia menjalankan kasus sederhana yang diketahui secara analitis (misalnya memperkirakan π dengan perbandingan luas lingkaran) dengan metode yang sama; Ketika kode memprediksi π dengan benar, keyakinannya terhadap simulasi sebenarnya meningkat. Ia juga mengamati bahwa seiring bertambahnya jumlah sampel, hasilnya menyempit dan menyatu ke nilai sebenarnya.

Empat templat yang dapat disalin

1) Simulasi yang dipantau konservasi:

Tulis kode Python yang mensimulasikan sistem fisik berikut dengan solve_ivp: [sistem, persamaan, kondisi awal, satuan]. Sepanjang simulasi, hitung energi total (dan momentum, jika ada) pada setiap langkah dan plot rasionya terhadap nilai awalnya seiring waktu. Perhatikan bahwa dalam kasus tanpa gesekan, rasio ini harus tetap konstan ~1.

2) Perbandingan analitis:

Tambahkan kode yang membandingkan hasil simulasi berikut dengan solusi analitik yang diketahui dari sistem ini ([rumus]). Plot keduanya pada grafik yang sama dan cetak perbedaan maksimum antara numerik dan analitis. Kode simulasi: [di sini]

3) Uji ukuran / stabilitas langkah:

Tulis kode yang menjalankan simulasi berikut dengan langkah waktu berbeda (misalnya dt = 0,1, 0,01, 0,001) dan tunjukkan bagaimana hasilnya berubah. Tentukan setelah ukuran langkah mana hasilnya akan stabil (konvergen). Kode: [di sini]

4) Pengujian keadaan batas fisik:

Sarankan 3 pengujian keadaan batas fisik untuk simulasi berikut: (misalnya energi harus kekal ketika gesekan nol, berhenti dengan cepat ketika gesekan besar, bagaimana periode harus berubah ketika massa berlipat ganda). Tuliskan hasil yang diharapkan dari setiap tes dalam satu kalimat. Kode: [di sini]

Perintah lemah / Perintah kuat

Lemah: "Tulis simulasi pendulum."
Hasil: kode tanpa unit, tanpa validasi, tanpa pemeriksaan konservasi; Tidak jelas apakah itu mencerminkan fisika atau tidak.
Kuat: "Tulis kode solve_ivp yang mensimulasikan pendulum sederhana dengan panjang L = 1 m, sudut awal 10°, dengan g = 9,81 m/s² selama 10 detik. Pantau energi total pada setiap langkah dan plot rasio ke awal. Bandingkan periode terukur dengan rumus amplitudo kecil T = 2π√(L/g) dan cetak selisihnya."
Hasil: Simulasi yang andal dengan unit, pemantauan konservasi, dan perbandingan dengan nilai analitis.

Kesalahan umum

  • Tidak mengikuti hukum konservasi. Jika energi atau momentum menyimpang, simulasinya salah; Mempercayai hasil tanpa melihatnya adalah kesalahan paling umum.
  • Memilih ukuran langkah secara sewenang-wenang. Langkah yang terlalu besar menimbulkan keragu-raguan, langkah yang terlalu kecil menimbulkan biaya yang tidak perlu; Pengujian konvergensi sangat penting.
  • Tidak membuat perbandingan analitis. Tanpa membandingkannya dengan kasus khusus yang diketahui (amplitudo kecil, keadaan tanpa gesekan), simulasi tetap tanpa pengawasan.
  • Salah mengira cacat numerik sebagai fisika. Perilaku seperti perluasan orbit sering kali merupakan kelemahan metode ini, bukan fisika sebenarnya.
  • Memperbaiki jumlah sampel dalam simulasi acak. Meningkatkan jumlah sampel di Monte Carlo dan hanya mengandalkan satu hasil tanpa melihat konvergensi adalah hal yang menyesatkan.
Perhatian: Hanya karena simulasi menghasilkan "grafik bagus" tidak berarti simulasi tersebut benar. Visualnya meyakinkan namun menipu. Sebelum mempercayai simulasi tersebut, pastikan untuk mengikuti undang-undang konservasi dan membandingkannya dengan situasi yang diketahui. Simulasi yang belum diverifikasi bukanlah bukti fisik.

Singkatnya

Simulasi adalah cara ampuh untuk memahami sistem fisik dinamis yang tidak memiliki solusi analitis dan dengan cepat membuat kode simulasi AI. Namun nilai simulasi bergantung pada apakah simulasi tersebut mencerminkan fisika secara akurat. Cara untuk memastikan hal ini adalah dengan mengikuti undang-undang konservasi, memilih ukuran langkah yang sesuai dengan pengujian konvergensi, membandingkan hasilnya dengan kasus analitis yang diketahui, dan menguji kasus batas fisik. Pada unit selanjutnya kita akan mengalihkan fokus dari data yang dihasilkan ke analisis data eksperimen aktual.

Tugas aplikasi

Pilih sistem dinamis sederhana (pendulum, jatuh bebas + hambatan udara atau pendinginan). Dengan templat 1, cetak dan jalankan kode simulasi yang mencakup pemeriksaan konservasi atau keseimbangan di AI. Periksa apakah kuantitas yang dipantau (energi atau suhu) berperilaku seperti yang diharapkan. Kemudian ubah parameter (gesekan, massa, ukuran langkah) dan lihat apakah perubahan perilaku sesuai dengan intuisi fisik Anda. Tuliskan dalam 5-6 kalimat.

daftar periksa

  • [ ] Saya memperjelas persamaan, kondisi awal dan satuan sistem.
  • [ ] Saya mengikuti hukum kekekalan (energi/momentum) dalam simulasi.
  • [] Saya memverifikasi ukuran langkah dengan uji konvergensi.
  • [ ] Saya membandingkan hasilnya dengan situasi analitis yang diketahui.
  • [ ] Saya telah melakukan setidaknya satu tes keadaan batas fisik.
  • [ ] Saya membedakan cacat numerik dari fisika nyata.