Ich habe die letzten Monate damit verbracht, ein Fortran-Programm zur Lösung eines bestimmten PDE-Systems zu programmieren (beschreibt den Flüssigkeitsfluss / die Verbrennung). Ich habe versucht, den neuesten Fortran-Standard zu verwenden, und die neuen OOP-Funktionen, die der moderne Fortran bietet. Ich arbeite alleine und habe keinen Fortran-Guru neben mir, um Fragen zu stellen. Ein natarischer Weg, für mich zu lernen, wäre es, andere Bibliotheken / Löser zu betrachten, die das moderne Fortran verwenden.
Leider scheinen alle Fortran-Bibliotheken da draußen in hübschen alten Fortran-Fortran90-Oberteilen geschrieben zu sein. Deshalb musste ich das Klassendesign und die Interaktion selbst durchdenken. Und ich bin überhaupt nicht sicher, dass ich es richtig gemacht habe, besonders wenn man es aus einer Preformance-Perspektive betrachtet. Aber vielleicht habe ich etwas verpasst und es werden moderne wissenschaftliche Pakete geschrieben, wenn Fortran und OOP verwendet?
Es gibt eine Menge guter C ++ - Bibliotheken (OpenFOAM, deal.II und mehr) und auch Python-Bibliotheken. Diese Sprachen haben im Allgemeinen auch eine größere Gemeinschaft. Ist es vielleicht besser, Fortran fallen zu lassen und die Sprache zu wechseln, wenn ich anhand von Beispielen lernen möchte?