Keuntungan:
- Keupayaan untuk bergantung pada output deterministik, bukan tekaan lisan, dengan meminta AI menterjemah pengiraan fizikal ke dalam kod NumPy/SciPy dan menjalankan kod itu sendiri
- Keupayaan untuk mengesahkan kebolehpercayaan kod berangka dengan mengujinya dengan situasi mudah yang jawapannya diketahui dan menyemak penumpuannya.
- Keupayaan untuk menyediakan unit dan tahap hasil secara fizikal dengan mencerminkan unit pembolehubah ke dalam kod
Banyak masalah dalam fizik tidak boleh diselesaikan dengan tangan: kamiran tidak mempunyai penyelesaian analitikal, punca sistem persamaan tidak boleh ditemui dalam bentuk tertutup, atau pengiraan mesti diulang beribu-ribu kali. Di sinilah kaedah berangka berperanan: bukannya formula yang tepat, komputer mengira langkah demi langkah dengan ketepatan anggaran tetapi terkawal. Dalam unit ini, anda akan belajar cara menggunakan kecerdasan buatan (AI) sebagai rakan kongsi kod untuk pengiraan fizik pengiraan, cara mengesahkan kod yang dihasilkannya dan perangkap yang perlu anda elakkan daripada terjerumus. Alat piawai ahli fizik di sini ialah bahasa Python dan NumPy (perpustakaan untuk tatasusunan berangka dan matematik pantas) serta SciPy (perpustakaan untuk pengkomputeran saintifik; termasuk penyepaduan, penemuan radikal, pengoptimuman).
Mengapa AI + Python, mengapa tidak menggunakan tangan?
Melakukan pengiraan berangka dengan tangan adalah perlahan dan mudah ralat. AI boleh menterjemah binaan fizikal anda ke dalam kod Python yang sedang berjalan dalam beberapa saat. Tetapi peraturan emas di sini ialah: AI menulis kod, anda menjalankan kod dan mengesahkan hasilnya dengan fizik. AI yang mengatakan "kod ini memberikan itu" adalah ramalan; Sebenarnya menjalankan kod dan melihat output adalah fakta yang menentukan. LLM mungkin "mengira" output kod yang dia tulis di kepalanya dan menyebut nombor yang salah; sedangkan apabila kod yang sama dijalankan ia memberikan hasil yang betul. Oleh itu, jangan sekali-kali mempercayai hasil berangka yang diberikan oleh AI secara lisan — jalankan kod tersebut.
Tugas pengiraan asas dan peranan AI
Pencarian
Kaedah/alat
pengesahan fizikal
kamiran pasti
scipy.integrate.quad
Had keadaan, analisis dimensi
punca persamaan
scipy.optimize.brentq
Letakkan akar di tempatnya dan periksa sama ada ia sifar.
Sistem persamaan linear
numpy.linalg.solve
Meletakkan semula penyelesaian ke dalam sistem
Derivatif (nombor)
Perbezaan tengah atau numpy.gradient
Perbandingan dengan terbitan analitikal
Pengiraan vektor pukal
Tatasusunan NumPy
Kawalan unit dan pangkat
AI sangat pandai mencadangkan alat mana yang sesuai dan mendapatkan sintaks (peraturan penulisan kod) betul. Tetapi anda memutuskan kaedah mana yang masuk akal secara fizikal dan ketepatan hasilnya.
Langkah demi langkah: pengiraan berangka yang boleh disahkan
1. Jelaskan masalah dan unit. Contohnya: "Kira kamiran e^(−x²) daripada 0 hingga ketakterhinggaan; hasilnya hendaklah √π/2 ≈ 0.8862." Menulis semula hasil yang dijangkakan (jika ada) menjadikan pengesahan lebih mudah.
2. Minta AI untuk kod, tetapi anda menjalankan output. Salin blok kod dan jalankannya dalam persekitaran anda sendiri (Jupyter, Colab, Python asli).
3. Uji dengan situasi yang diketahui. Cuba kod dengan situasi mudah yang anda sudah tahu jawapannya. Sebagai contoh, uji kod kamiran dengan contoh yang anda ketahui dengan tangan, seperti ∫₀¹ x dx = 0.5. Jika kod memberikan ini dengan betul, keyakinan anda meningkat.
4. Periksa penumpuan. Dalam kaedah berangka, apabila anda menambah bilangan langkah, hasilnya harus mendekati nilai yang tetap. Jika ia tidak mendekati, kaedah itu tidak sesuai.
5. Semak unit dan pangkat. Sentiasa berikan hasil berangka dengan unit fizikal dan susunan.
Petua: Apabila meminta kod daripada AI, katakan "sertakan juga baris ujian yang membandingkan hasilnya dengan nilai analisis yang diketahui." Oleh itu, kod kedua-duanya melakukan pengiraan dan menguji dirinya sendiri dalam situasi yang diketahui. Ini menjadikan ralat kelihatan serta-merta.
tiga kes mini
Kes 1 — Kesimpulan lisan yang salah. Seorang pelajar mempunyai AI menulis kod integral dan AI berkata "kod ini memberikan kira-kira 1.77." Pelajar menjalankan kod: output sebenar ialah 0.886. AI telah membuat kesilapan dalam meramalkan output kod; Kod itu betul. Pengajaran: percaya kod, jangan percaya tekaan lisan.
Kes 2 — Ketidakstabilan berangka. Seorang penyelidik mencari punca persamaan dengan kod pencarian akar yang ditulis AI. Kod itu mengembalikan akar, tetapi apabila penyelidik meletakkan akar semula ke dalam persamaan, hasilnya bukan sifar tetapi nombor yang sangat besar. Masalahnya ialah julat permulaan tidak mengandungi akar; AI menggunakan julat yang sesuai. Penyelidik membetulkan selang dengan maklumat fizikal dan menemui punca yang betul.
Kes 3 — Pengesahan diperoleh. Seorang jurutera mahukan kod yang mengira secara berangka pesongan rasuk di bawah beban. Kod itu berfungsi, tetapi hasilnya menunjukkan meter pesongan—mustahil untuk rasuk keluli. Jurutera memeriksa unit: AI telah berpura-pura mempunyai modulus elastik dalam Pa dan bukannya GPa, kehilangan faktor 10⁹. Dengan pembetulan unit, hasilnya menurun kepada milimeter dan adalah munasabah.
Empat templat yang boleh disalin
1) Pengiraan berangka dengan baris pengesahan:
Tulis kod Python (NumPy/SciPy) yang melakukan pengiraan fizikal berikut: [masalah]. Isytiharkan semua pembolehubah dalam unit SI dan nyatakan unit dengan baris ulasan. Tambahkan baris semak (tegaskan atau cetak) pada penghujung kod yang membandingkan hasilnya dengan nilai analitik/mudah yang diketahui. Saya akan menjalankan kod; anda tidak meneka output, hanya tulis kod dan pangkat yang dijangkakan.
2) Perundingan pemilihan kaedah:
Saya ingin menyelesaikan masalah berikut secara berangka: [masalah].Fungsi SciPy/NumPy yang manakah sesuai dan MENGAPA? Cadangkan 2 kaedah alternatif, tuliskan kebaikan/keburukan setiap satu dari segi ketepatan dan kestabilan. Nyatakan yang mana satu harus diutamakan dalam keadaan fizikal yang mana.
3) Pemeriksaan penumpuan:
Tulis kod Python yang menunjukkan cara hasil menumpu dengan menambah bilangan langkah pengiraan berangka berikut (cth. N=10, 100, 1000). Cetak keputusan dalam jadual. Jika tiada penumpuan, terangkan sebab fizikal/nombor untuk ini dalam satu ayat. Kod: [di sini]
4) Kawalan unit:
Dalam kod di bawah, ulas unit SI bagi setiap pembolehubah dan semak sama ada unit keputusan akhir adalah konsisten dengan unit yang dijangkakan (cth. meter, joule). Jika terdapat ketidakkonsistenan, tunjukkan baris mana ia berada. Kod: [di sini]
Gesaan lemah / Gesaan kuat
Lemah: "Sebutkan hasil kamiran ini: ∫₀^∞ x²·e^(−x) dx"
Keputusan: AI mengeluarkan nombor di kepalanya (mungkin betul, mungkin salah); tiada yang boleh dilaksanakan, tiada yang boleh disahkan.
Strong: "Tulis kod Python yang mengira kamiran ∫₀^∞ x²·e^(−x) dx dengan scipy.integrate.quad. Tambahkan baris tegas yang membandingkan hasilnya dengan nilai analitik kamiran ini, 2! = 2. Saya akan menjalankan kod itu."
Keputusan: Kod boleh laku, pengesahan terbina dalam (perbandingan dengan nilai analisis) dan hasil yang boleh dipercayai.
Kesilapan biasa
- Bergantung pada hasil berangka lisan AI. LLM mungkin tersilap meramalkan output kod di kepala. Sentiasa jalankan kod.
- Tidak menguji dengan situasi yang diketahui. Kod yang tidak menguji dengan contoh mudah yang anda tahu jawapannya mungkin mengandungi ralat tersembunyi.
- Tidak menyemak penumpuan. Berpegang pada kiraan satu langkah mengaburkan sama ada hasilnya boleh dipercayai secara berangka.
- Tidak mencerminkan unit dalam kod. Tidak mengulas unit pembolehubah mengundang ralat 10ⁿ senyap.
- Mengabaikan versi/andaian perpustakaan. Kadangkala AI mungkin menghasilkan nama fungsi yang tidak wujud atau sintaks usang; Ia ketara apabila anda menjalankannya.
Awas: Sebelum meletakkan hasil berangka ke dalam penerbitan, tugasan atau reka bentuk, uji kod dengan kes bebas yang diketahui dan berikan hasilnya dalam unit/pesanan. Malah kod kerja mungkin mengira fizik yang salah; Hanya kerana kod berfungsi tidak bermakna fizik adalah betul.
Secara ringkasnya
AI ialah rakan kongsi yang berkuasa dalam menterjemah pengiraan fizikal ke dalam kod Python; Tetapi nombor yang dia berikan secara lisan adalah anggaran, bukan fakta. Aliran kerja selamat adalah jelas: tentukan masalah dengan unitnya, minta AI menulis kod tetapi anda menjalankan output, menguji kod dengan situasi yang diketahui, semak penumpuan dan unit. Apa yang bersifat deterministik ialah kod yang dilaksanakan; Ia bukan LLM. Dalam unit seterusnya kita akan memindahkan asas berangka ini kepada simulasi sistem fizikal yang berbeza-beza masa.
Tugasan permohonan
Pilih kalkulus fizik yang anda tahu penyelesaian analitiknya (contohnya, kelajuan objek jatuh bebas dalam tempoh masa atau kamiran pasti mudah). Minta AI menulis kod Python dengan templat 1; jalankan kod itu sendiri. Bandingkan hasilnya dengan nilai analisis yang anda tahu. Kemudian perhatikan bagaimana keputusan bertindak dengan menukar bilangan langkah atau parameter. Perhatikan dalam 5-6 ayat: adakah output kod sepadan dengan ramalan lisan, adakah terdapat isu unit/pesanan?
senarai semak
- [ ] Saya menjelaskan masalah dan unit semua pembolehubah.
- [ ] Saya menjalankan kod yang ditulis oleh AI sendiri, saya tidak mempercayai keputusan lisan.
- [ ] Saya menguji kod dengan situasi mudah yang saya tahu jawapannya.
- [ ] Saya menyemak penumpuan atau sensitiviti parameter.
- [ ] Saya menyediakan unit dan susunan keputusan secara fizikal.
- [ ] Saya telah mengesahkan bahawa fungsi perpustakaan yang saya gunakan adalah sebenar dan terkini.