Idee für ein gemeinsames Curriculum und Lehrbuch zwischen Physik und Informatik [geschlossen]

13

Ich möchte ein Physiklehrbuch schreiben (und anfangen zu skizzieren), das davon ausgeht, dass sein Leser ein kompetenter Computerprogrammierer ist. Normale Physiklehrbücher vermitteln physikalische Formeln und geben Probleme, die mit Stift, Papier und Taschenrechner gelöst werden. Ich möchte ein Buch liefern, das sich mit Computerphysik befasst, wie Computer physikalische Systeme modellieren können und Probleme der Art aufzeigt: Schreiben Sie ein Programm, das eine Reihe von physikalischen Problemen lösen kann . Open-Source-Bibliotheken von Drittanbietern würden verwendet, um den größten Teil der Berechnung zu erledigen, und ich möchte eine Hochsprache wie Java oder C # verwenden.

Abgesehen davon, dass ich gerne daran arbeiten würde, denke ich, dass ein gemeinsamer Lehrplan für Physik und Informatik in den Schulen angeboten werden sollte , und dies ist Teil einer umfassenderen Agenda, um dies zu erreichen. Ich denke, Physikstudenten (wie ich) sollten lernen, wie man Computer einsetzt und nutzt, um abstrakte Probleme und Problemkombinationen zu lösen. Ich denke, Programmiersprachen sollten als nützliches Medium angesehen werden, um sich in vielen Bereichen der Forschung zu engagieren.

Ist das eine Idee, die es wert ist, weiterverfolgt zu werden? Ist der Zusammenschluss dieser beiden Fächer in Form eines Studienplans möglich? Gibt es spezielle Tools, die ich einsetzen sollte, oder Fallstricke, die mir bewusst sein sollten? Hat jemand von Universitätskursen gehört, die diese Methodik annehmen? Gibt es da draußen Bücher / Lehrbücher wie das, das ich beschreibe (für Physik oder ein anderes Fach)?

Ami
quelle
3
Entschuldigung, wo ist der Informatik-Aspekt des Buches? Es klingt nach Physik und Computerprogrammierung, was etwas völlig anderes ist.
Peter Taylor
2
In einem Physikbuch ist viel Platz für CS; zB wenn wir Simulationen von klassischen Objekten oder Quantenobjekten erstellen, werden wir mit Staat, Nebenläufigkeit, Algorithmen, Kompromissen bei der Repräsentation usw. zu
kämpfen haben
2
Wie aus dem Kommentar von @Peter Taylor hervorgeht, vergewissern Sie sich bitte, dass das Buch einige gute CS enthält. Außerdem wäre imo Python eine bessere Wahl als Java oder (besonders) C #. Nach meiner Erfahrung (über 19 Jahre in wissenschaftlichen Umgebungen) kennen Wissenschaftler Python mit größerer Wahrscheinlichkeit als die anderen, die Sie erwähnen. Während ich derzeit Java mache, kenne ich niemanden in den Naturwissenschaften, der C # macht.
GreenMatt
2
Soweit ich weiß, könnte R auch eine gute Wahl sein. Ich habe gehört, es ist sehr gut für die numerische Analyse. Wenn Sie ein Programm schreiben, das ein Experiment simuliert, möchten Sie möglicherweise ein anderes Programm schreiben, um die Ergebnisse zu analysieren. Möglicherweise sind zwei Sprachen am besten geeignet, eine zum Schreiben von Simulationen und eine zum Analysieren der resultierenden Daten.
FrustratedWithFormsDesigner
1
Es gibt ein paar Jahre, um darüber nachzudenken, und es gibt etwas, das erwähnt werden muss. Verschiedene Leute zitierend, "ist Physik eine empirische Wissenschaft." Es gibt keinen Ersatz dafür, etwas Reales in der realen Welt zu SEHEN, es selbst zu messen und zu erkennen, dass die mathematischen Modelle mit den realen Phänomenen übereinstimmen. (In meinem persönlichen Fall sahen wir, wie ein Penny und eine Feder mit genau der gleichen Geschwindigkeit in ein evakuiertes transparentes Rohr fiel. Hat mich völlig umgehauen! Es war genau das Richtige, die kleinsten Fehlerquadrate zur Berechnung der Erdbeschleunigung zu verwenden.)
John R. Strohm

Antworten:

7

Ihre Idee ist im Allgemeinen eine gute Idee und wird verfolgt: Haben Sie die Struktur und Interpretation der klassischen Mechanik von Sussman and Wisdom gesehen ? Es lehrt fortgeschrittene klassische Physik mit Schema:

Abgesehen davon denke ich, dass es dringend erforderlich ist, den Unterricht vieler Fächer mit einer Computergrundlage zu überarbeiten, da das Rechnen unsere Modellierungsfähigkeiten grundlegend erweitert, ganz zu schweigen von Lehren, Lernen und Denken. In dem Buch Masterminds of Programming spricht sich Paul Hudak (von Haskell) genau für eine solche Überarbeitung aus. Natürlich forderte Sussman auch neue Wege, wie Computer "alte" Fächer unterrichten können. SICM ist ein schönes Beispiel dafür. Ich hoffe, er übernimmt als nächstes das Unterrichten der Quantenmechanik!

Limist
quelle
5

Drs. David Gavenda und Luther Frommhold von UT Austin versuchten genau dies Anfang der 1970er Jahre mithilfe eines zeitlich gemeinsam genutzten Data General Nova-Systems. Ich glaube, Dr. Gavenda ist in den Ruhestand getreten, und ich habe keine Ahnung, was aus Dr. Frommhold geworden ist. (Dave Gavenda war definitiv einer der Guten.)

Am anderen Ende arbeitete Dr. Gordon Novak von der UT Austin CS-Abteilung. Seine Dissertation in Computerlinguistik war ein Programm, mit dem sich Leiterprobleme in der Statik auf Anfängerebene verstehen und lösen ließen. (Vollständige Offenlegung: Gordon ist ein Freund von vor langer, langer Zeit.)

Sie können sich auch Struktur und Interpretation der klassischen Mechanik von Sussman and Wisdom ansehen .

Ich bin mir jedoch nicht sicher, ob dies eine gute Idee ist. Sie können einige hübsche Demos machen, und es macht es einfacher, einige Dinge zu sehen, aber ein Großteil der Elementarphysik lehrt den Studenten die Methoden und vermittelt einen intuitiven Einblick in das Material Weg.

John R. Strohm
quelle
3

Ich denke, es ist eine brillante Idee, und solange die von Ihnen gewählte Computersprache nicht zu dunkel ist, könnte sie ein Erfolg werden. Wenn Sie eine Sprache wählen, die ohnehin niemand außerhalb der wissenschaftlichen Gemeinschaft verwendet, haben Sie nichts erreicht.

biziclop
quelle
Basierend auf meiner Erfahrung (in den meisten der letzten 20 Jahre mit Code zu tun, der von Wissenschaftlern mit wenig bis gar keinem Hintergrund in der Informatik geschrieben wurde) wird er, wenn er richtig geschrieben und in wissenschaftlichen Lehrplänen verwendet wird und den von Wissenschaftlern entwickelten Code verbessert eine Menge verbessern, auch wenn es FORTRAN anstelle von Java, C # oder etwas "üblicherem" verwendet!
GreenMatt
@GreenMatt Auf jeden Fall war es eher wie LISP und Matlab, das ich als typische akademische Sprachen betrachtete, die anderswo selten verwendet wurden.
Biziclop
@biziclop: Ich stimme zu, dass LISP undurchsichtig ist, aber ich habe gesehen, dass Matlab eine angemessene Menge verwendet hat.
GreenMatt
LISP, obskur? Sehr geehrter Herr ...
Anto
2
@Anto Obscure als selten außerhalb der Wissenschaft und eine Handvoll hochspezialisierter Bereiche verwendet.
Biziclop
0

Ist das eine Idee, die es wert ist, weiterverfolgt zu werden?

Ich denke schon! Es ist eine Idee wie diese, die mich wünscht, ich wäre noch ein Student. Und um ehrlich zu sein, ich habe mich einmal in einem Labor umgesehen, in dem die manuellen Berechnungen durch das von mir geschriebene Perl-Skript gelöst wurden. Ich habe auch den Quellcode angehängt. Der TA wusste nicht viel über Programmierung, aber als ich es endlich zurückbekam, war es die volle Punktzahl. Und es dauerte auch viel weniger Zeit, um das Labor fertigzustellen.

Ist der Zusammenschluss dieser beiden Fächer in Form eines Studienplans möglich?

Ich verstehe nicht warum nicht!

Gibt es spezielle Tools, die ich einsetzen sollte, oder Fallstricke, die mir bewusst sein sollten?

Aus der Spitze von meinem Kopf, Weka könnte ein gutes Werkzeug für die Datenanalyse sein. Ich denke, es hat eine Java-API, so dass es für Java-Entwickler ziemlich zugänglich sein sollte, und es könnte wahrscheinlich für einige interessante Übungen sorgen.

FrustratedWithFormsDesigner
quelle
0
Ist der Zusammenschluss dieser beiden Fächer in Form eines Studienplans möglich?

Ich habe lange das Gefühl, dass eine dreifache Fusion, Physik, angewandte Mathematik und Berechnung Sinn macht. Vielleicht sogar eine vierte, Computergrafik hinzufügen - zumindest genug, um genügend Grafiken zu generieren, um Aneignung zu erlangen. In gewisser Weise ist das Rechnen nach Experiment und Theorie die dritte Art, Wissenschaft zu betreiben, und um wirklich gut darin zu sein, braucht man eine Grundlage in allen dreien. Es gibt auch professionelle Unterstützungsjobs für etwa wissenschaftlich denkende Programmierer, deren erste Liebe der Computer ist und deren Mathematik / Naturwissenschaften zweitrangig sind. Im Idealfall gibt es eine Möglichkeit, Gruppen mit unterschiedlichen Hauptinteressen zufriedenzustellen. Einige möchten zuerst Computer, andere wenden Mathematik und wieder andere Naturwissenschaften als Hauptfokus an.

Omega Centauri
quelle