Diese Frage wurde ein gefragt Milliarden Mal jedoch auf Stackoverflow hat sich der Fokus auf nicht-numerischen Codierung immer. Ich bin auf der Suche nach einem Projekt, an dem ich im Rahmen von Numerical Computing und High Performance Computing mitarbeiten kann. Ich würde im Idealfall ein kleines Projekt vorziehen, aber das ist nicht notwendig.
Was wäre der beste Weg, um sich an einem Open Source-Projekt für SciComp zu beteiligen? Wo fängt man an, nach Projekten zu suchen? Was wäre der beste Weg, um an einem solchen Projekt teilzunehmen? Feature Requests / Bugs / Dokumentation oder sonstiges?
Wenn Sie sich so etwas wie ATLAS oder Nix ansehen, wie wechseln Sie von N00B zu Active?
Antworten:
Ich denke, Sie werden das Beste daraus machen, wenn Sie zu Projekten beitragen, die Sie aktiv für andere Arbeiten nutzen, da dies Sie dazu motiviert, Funktionen zu entwickeln, die Sie selbst benötigen. Letztendlich wird so die meiste Open-Source-Software geschrieben: von Leuten, die die Funktionalität aus dem einen oder anderen Grund brauchten.
Im Rahmen unseres eigenen Projekts deal.II hatte ich eine Beschreibung darüber verfasst, wie wir vor einiger Zeit einen Beitrag zu unseren häufig gestellten Fragen leisten können .
quelle
Achtung: Schamlose Eigenwerbung voraus! :)
Ich bin leitender Entwickler eines kleinen Open-Source-Projekts für wissenschaftliches Rechnen:
PyClaw (Quelle hier )
Es ist Teil der größeren Familie von Clawpack- Codes zum Lösen hyperbolischer PDEs. PyClaw wurde entwickelt, um beliebige hyperbolische Systeme von PDEs auf logisch viereckigen oder hexaedrischen Gittern zu lösen. Es enthält zwei verschiedene Arten von Finite-Volume-Solvern und ist für große Supercomputer skalierbar (siehe unser eingereichtes Journalpapier mit Auflagen von bis zu 65K-Kernen).
Schauen Sie sich die Dokumentation und den Issue Tracker an . Es gibt viel zu tun! Wo Sie am besten beitragen können, hängt von Ihrem Hintergrund und Ihrer Ausbildung ab. Vielleicht ist der beste Weg, um loszulegen, ein kleines Problem anzugehen und eine Pull-Anfrage bei Github einzureichen. Alternativ kann es sinnvoll sein, eine Nachricht an die Entwickler-Mailingliste zu senden, in der Sie sich vorstellen und Ihre Fachgebiete erläutern.
quelle
Ich habe das gleiche Problem. Am Ende habe ich meine eigenen Probleme mit vorhandenen Bibliotheken (z. B. COIN-OR) gelöst und eigenständige ausführbare Dateien für bestimmte Aufgaben erstellt. Ich habe vor, diese Codes wieder einzuspielen, sobald sie ziemlich poliert und stabil sind.
Diese Antworten spiegeln meine Meinung gut wider:
Trotzdem viel Glück!
quelle
Drei einfache Schritte:
quelle
Liste der XSEDE-Software
Das XSEDE-Netzwerk von NSF-finanzierten Supercomputern verfügt über eine Liste verfügbarer Software , und Sie können nach wissenschaftlichen Domänen oder Anwendungen suchen. Sie müssen jedoch die Namen der Software googeln, um mehr zu erfahren.
Mitgliedsprojekte der Software Carpentry Foundation
Die Software Carpentry Foundation führt eine Liste von Projekten, die von ihren Mitgliedern geleitet werden. Viele davon werden auf GitHub oder ähnlichem gehostet und sind offen für Mitwirkende. Einige Tools für die HPC-Simulation:
Offenlegung : Ich bin ein ehrenamtlicher Ausbilder der Software Carpentry Foundation und mein Projekt ist auf der Projektseite aufgeführt.
Ankündigung von Plug-and-Public-Services: Wenn Sie an Open-Source-Software für die Wissenschaft interessiert sind, empfehlen wir Ihnen, "Best Practices in Scientific Computing" von Wilson et al. 2014 zu lesen und an einem Workshop der Software Carpentry Foundation teilzunehmen Wenn / wenn Sie bereit sind, Instruktor Training.
quelle