Fizik-bilgisayar bilimleri ortak müfredatı ve ders kitabı için fikir [kapalı]


13

Okuyucunun yetkin bir bilgisayar programcısı olduğunu varsayan bir fizik ders kitabı yazmak (ve ana hatlarıyla başlamak istiyorum) istiyorum. Normal fizik ders kitapları fiziksel formülleri öğretir ve kalem, kağıt ve hesap makinesi ile çözülen problemleri verir. Hesaplamalı fiziği, bilgisayarların fiziksel sistemleri nasıl modelleyebileceğini ve bu tür problemleri nasıl vurguladığını vurgulayan bir kitap sunmak istiyorum: bir dizi fizik problemini çözebilecek bir program yaz . Üçüncü taraf açık kaynak kütüphaneleri, hesaplamanın çoğunu işlemek için kullanılacak ve Java veya C # gibi üst düzey bir dil kullanmak istiyorum.

Bunun üzerinde çalışmaktan zevk alacağım gerçeğinin yanı sıra, okullarda bir fizik-bilgisayar bilimi ortak müfredatı sunulması gerektiğini düşünüyorum ve bu, bunun gerçekleşmesi için daha büyük bir gündemin parçası. Bence fizik öğrencileri (benim gibi) soyut problemleri ve problem setlerini çözmek için bilgisayarları nasıl kullanacaklarını ve kaldırabileceklerini öğrenmelidirler. Programlama dillerinin birçok araştırma alanına girmek için yararlı bir araç olarak düşünülmesi gerektiğini düşünüyorum.

Bu, izlemeye değer bir fikir mi? Bu iki dersin lisans kolej müfredatı şeklinde birleştirilmesi mümkün müdür? Kullanmam gereken özel araçlar veya bilmem gereken tuzaklar var mı? Kolej kurslarını duyan veya bu metodolojiyi kabul eden başka bir kimse var mı? Açıkladığım kitap gibi fizik veya başka herhangi bir ders var mı?


3
Üzgünüm, kitabın bilgisayar bilimi yönü nerede? Tamamen farklı bir şey olan fizik ve bilgisayar programlama gibi geliyor.
Peter Taylor

2
Fizik kitabında CS için bolca yer var; klasik ya da kuantum nesnelerinin simülasyonları oluştururken örneğin, kesinlikle vb temsilin, devlet, eşzamanlılık, algoritmalar, ticaret-off ile güreşine sahip olacak
limist

2
@Peter Taylor tarafından yapılan yorumdan anlaşılabileceği gibi, lütfen kitapta iyi CS'nin bulunduğundan emin olun. Ayrıca, imo Python Java veya (özellikle) C # 'dan daha iyi bir seçim olacaktır. Deneyimlerime göre (bilim ortamlarında 19+ yıl), bilim insanlarının Python'u tanıdıklarından daha fazla tanımaları muhtemeldir. Şu anda Java yaparken, bilimlerde C # yapan kimse bilmiyorum.
GreenMatt

2
Anladığım kadarıyla, R de iyi bir seçim olabilir, sayısal analiz için çok iyi olduğunu duydum. Bazı denemeleri simüle eden bir program yazacaksanız, sonuçları analiz etmek için başka bir program yazmak isteyebilirsiniz. İki dil en iyisi olabilir, biri simülasyon yazmak için, diğeri elde edilen verileri analiz etmek için.
FrustratedWithFormsDesigner

1
Bunu tamamlamak için birkaç yıl geçirdikten sonra, belirtilmesi gereken bir şey var. Çeşitli insanlardan alıntı yaparak, "Fizik ampirik bir bilimdir." Gerçek dünyada gerçek bir şeyi GÖRMEK, kendiniz ölçmek ve matematiksel modellerin gerçek fenomenlerle eşleştiğini fark etmenin yerini tutamaz. (Kişisel durumumda, boşaltılan şeffaf bir tüpün içinde tam olarak aynı hızda bir kuruş ve tüy görüyordum. Aklımı TAMAMEN havaya uçurdu! Yerçekimi nedeniyle hızlanmayı hesaplamak için en az kareler yapmak onunla oradaydı.)
John Strohm

Yanıtlar:


7

Sizinki genel olarak iyi bir fikirdir ve takip edilmektedir: Sussman ve Bilgeliğin Klasik Mekaniğin Yapısı ve Yorumunu gördünüz mü? Şema kullanarak gelişmiş klasik fizik öğretir:

Bir yana, bence pek çok konunun bilgi işlem temelli öğretiminin elden geçirilmesi için yapılması gereken güçlü bir vaka var - ve bu nedenle de bir ihtiyaç var. Programlamanın Beyni kitabında , Paul Hudak (Haskell şöhretinden) böyle bir revizyon için tam olarak tartışıyor. Sussman, elbette, "eski" konuları öğretmek için bilgisayar kullanmanın yeni yollarını da çağırdı; SICM buna güzel bir örnek. Umarım bir sonraki kuantum mekaniğini öğretir!


5

Dr. UT Austin'deki David Gavenda ve Luther Frommhold 1970'lerin ortalarında zaman paylaşımlı bir Data General Nova sistemi kullanarak tam olarak bunu yapmaya çalışıyorlardı. Sanırım Dr. Gavenda emekli oldu ve Dr. Frommhold'a ne olduğu hakkında hiçbir fikrim yok. (Dave Gavenda kesinlikle İyi Adamlardan biriydi.)

UT Austin CS Departmanından Dr. Gordon Novak bunun diğer ucunda çalışıyordu. Hesaplamalı Dilbilim alanındaki tezi, statikteki birinci sınıf merdiven problemlerini anlayabilen ve çözebilen bir programdı. (Tam Açıklama: Gordon uzun zaman önce bir arkadaştır.)

Ayrıca Sussman ve Bilgelik tarafından Klasik Mekaniklerin Yapısı ve Yorumuna da bakabilirsiniz .

Yine de bunun iyi bir fikir olduğundan emin değilim. Bazı güzel demolar yapabilirsiniz ve bazı şeyleri görmeyi kolaylaştırır, ancak temel fiziklerin çoğu öğrenciye yöntemleri öğretir ve malzemenin sezgisel bir kavrayışını verir ve bu muhtemelen eski moda daha iyi olan bir şeydir. yol.


3

Bence bu harika bir fikir ve seçtiğiniz bilgisayar dili çok belirsiz olmadığı sürece başarı olabilir. Bilimsel topluluk dışında hiç kimsenin kullanmadığı bir dil seçerseniz, hiçbir şey başaramazsınız.


Deneyimlerime dayanarak (son 20 yılın çoğunda bilgisayar bilimi geçmişi az olan bilim adamları tarafından yazılan kodla uğraşmak), bu doğru yazılır ve bilim müfredatında kullanılırsa ve bilim adamlarının geliştirdiği kodu geliştirirse, Java, C # veya "daha yaygın" başka bir şey yerine FORTRAN kullanıyor olsa bile çok geliştirin!
GreenMatt

@GreenMatt Kesinlikle başka bir yerde nadiren kullanılan tipik akademi dilleri olarak düşündüğüm daha çok LISP ve Matlab gibiydi.
biziclop

@biziclop: LISP'nin belirsiz olduğu konusunda hemfikir, ama Matlab'ın adil bir miktar kullandığını gördüm.
GreenMatt

LISP, belirsiz mi? Sevgili efendimiz ...
Anto

2
@Anto Nadiren akademi dışında ve bir avuç son derece uzmanlaşmış alanda kullanılmakta olduğu gibi anlaşılmaz.
biziclop

0

Bu, izlemeye değer bir fikir mi?

Kesinlikle öyle düşünüyorum! Böyle bir fikir hala bir lisans öğrencisi olmamı ister. Ve gerçeği söylemek gerekirse, bir keresinde manuel hesapların yazdığım Perl senaryosu tarafından çözüldüğü bir laboratuvara döndüm. Ben de kaynak kodunu ekledim. TA çok fazla programlama bilmiyordu ama sonunda onu geri aldığımda, tam not oldu. Laboratuvarı bitirmek de daha az zaman aldı.

Bu iki dersin lisans kolej müfredatı şeklinde birleştirilmesi mümkün müdür?

Ben neden görmüyorum!

Kullanmam gereken özel araçlar veya bilmem gereken tuzaklar var mı?

Başımın tepesinden, Weka veri analizi için iyi bir araç olabilir. Bir Java API'sı olduğunu düşünüyorum, bu yüzden Java geliştiricileri için oldukça erişilebilir olmalı ve muhtemelen bazı ilginç alıştırmalar yapabilir.


0
Bu iki dersin lisans kolej müfredatı şeklinde birleştirilmesi mümkün müdür?

Uzun zamandır üçlü birleşme, fizik, uygulamalı matematik ve hesaplamanın mantıklı olduğunu hissettim. Belki de dördüncü, bilgisayar grafikleri ekleyerek - inutition kazanmak için yeterli grafik üretmek için en az yeterli. Hesaplama bir anlamda deney yapmanın ve teorinin ardından bilim yapmanın üçüncü yolu haline geldi ve bu konuda gerçekten iyi olabilmek için her üçünde de bir topraklamaya ihtiyacınız olacak. Ayrıca, ilk aşkı bilgisayar ve matematik / bilim ikincil olan bilimsel olarak düşünülmüş programcılar için profesyonel destek işleri vardır. İdeal olarak, farklı ilgi alanlarına sahip grupları tatmin etmenin bir yolu olurdu, bazıları önce bilgisayar ister, diğerleri matematik uyguladı, ve diğerleri de diğer bilimleri birincil odak noktası olarak.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.