Software
Operationsystem und Software als Grundlage für die Zusammenarbeit innerhalb der "OPEN SOURCE ECOLOGY"
Um inkompatibilität der Dateisysteme sowie Software probleme auszuschließen und vorzubeugen, sind hier Operationsysteme sowie die Software die problemlos auf dem jeweiligen vorgeschlagenen Operationssystemen (OS) läuft hier aufgelistet. Alle hie aufgefürten Programme sind open source und stehen für jeden frei und kostenlos zum download.
Operationssysteme (OS)
Ubuntu
Viele der hier aufgeführten Programme sind im Ubuntu Software-Center als Softwarepaket (vorkompilierte Software) aufgelistet und können problemlos nachinstalliert werden, daher ist hier aufgrund der einfachen Handhabung und der Problemlösung Orientierten Ubuntu Wiki [1] Ubuntu als "OS" sehr zu empfehlen.
Siehe Ubuntu Software.
Debain
Alle Programme die unter Ubuntu laufen, laufen ohne Probleme auch auf Debian, da Ubuntu ein "Debian Derivat" ist und somit das gleiche Dateiverwaltungsystem besitzt. Ebenfalls wie Ubuntu besitzt Debian vorkompilierte Softwarepakete. Sollte es zu problemen kommen, gibt es eine Debian wiki [2].
Fedora
Opensuse
Beide "OS" arbeiten im gegensatzt zu Debian und Ubuntu (Dpkg) mit dem Paketsystem (RPM). Die Paketverwaltungssoftware YUM bei Fedora und YaST bei openSUSE ist hier für die Installation zusätzlichen Software sehr zu empfehlen. Beide OS haben auch eine OS wiki, Fedora [3] , openSUSE [4] die zahlreiche hilfestellungen bietet.
CAD (Computer Aided Design) Software
FreeCAD
Ist ein quelloffenes, parametrisches 3D-CAD-System. Zu FreeCAD gibt es einige Tutorials die unter der "help" Option oder auch über die Hauptseite zu erreichen sind [5] , die Tutorials erleichtern das einarbeiten in das Programm und sind für jeden der mit FreeCAD arbeiten zu empfehlen. Da FreeCAD modular aufgebaut und open source ist, ist es möglich eigene Module selbst hinzufügen bzw. Bibliotheken in Din-Norm einzuführen und so FreeCAD zu optimieren. FreeCAD besitzt noch sehr viele Bugs, jedoch hat es ein hohes Entwicklungspotential. Zudem ist FreeCAD das einzige open source CAD Programm das im gegensatzt zu den anderen open source CAD Projekten jetzt schon einsatztbereit ist. Fazit: Zu FreeCAD gibt es momentan keine andere nicht proprietäre Alternative, allerdings für unsere Bedürfnisse reicht FreeCAD vollkommen aus und wird sofern das FreeCAD Projekt weitergeführt wird in einigen Jahren konkurrenzfähig zu proprietärer CAD Software sein.
FEM (Finite-Elemente-Methode)
Mit Hife der Finite-Element-Methode ist es möglich problematische Sachverhalte die die physikalische Eigenschaften von Festkörpern, Flüssigkeiten oder Gasen betreffen numerisch zu lösen. Hierzu wird das betreffende Gebiet in eine beliebig große Anzahl von Elementen unterteilt. Diese Elemente sind "endlich" (finit) jedoch nicht "unendlich" (infinit) klein. Die Aufteilung des Gebietes in eine bestimmte Anzahl finiter Elementgrößen, die sich mit einer endlichen Zahl von Parametern beschreiben lassen, gab somit dieser Art der Methode den Namen "Finite-Elemente-Methode".
CAE (Computer Aided Engineering) Software
Code Aster
Code_Aster ist eine open source FEM Simulations-Software. Code_Aster wurde von der Électricité de France (EDF) entwickelt um die Bauelemente in den Kernkraftweke zu Simulieren. Jedoch 1999 unter den Bedingungen der GPL freigegeben.
- Vermerk des Autors: Es ist das einzig positive was die Nuklearindustrie je vollbracht hat, eine FEM Software zu entwickeln, die auch für Nachhaltige Technologien zur Simulation eingesetzt werden kann.
CFD (Computational Fluid Dynamics) Software
OpenFOAM
OpenFOAM (Open Source Field Operation And Manipulation)
Wie im Namen schon erwähnt, ist es eine open source Simulationssoftware für kontinuumsmechanische Probleme. Der Schwerpunkt bei dieser FEM liegt auf dem Lösen von Strömungsproblemen.
OpenFOAM bietet folgende Standardlöser für verschiedene physikalische Problemstellungen:
-Elektromagnetismus -Mehrphasenströmung -Strömungssimulation -Strukturmechanik -Verbrennung -Wärmeleitung
Da OpenFoam eine quelloffene Sofware ist, können weitere Problemlöser in der OpenFOAM eigenen Syntax hinzugefügt werden. Um Systeme von partiellen Differentialgleichungen lösen zu können, sind in OpenFOAM Diskretisierungsschemen als C++ Programmbibliothek implementiert.
Code-Saturne
Code_Saturne, ist ebenfalls von der Électricité de France (EDF) entwickelte open source FEM Software, die allerdings ausschließlich für Fluiddynamik eingesetzt wird.
Pre-/Postprozessoren für FEM
Salome
Salome ist eine Open-Source Software, mit der man 2D/3D Objekte meshen und in CAE/CFD-Bereich bearbeiten kann. Einsatzgebiet ist das Pre- und Postprocessing bei Numerischen Simulationen der FEM.
SALOME enthält eine Anzahl freier Netzgeneratoren wie z.B. Netgen. Mit diesen ist es auch möglich komplizierte Geometrien zu vernetzen. Es ist somit in wenigen Schritten möglich eine Geometrie mit z.B. Teraederelementen zu disketisieren. Für die Vernetzung mit Hexaederelementen ist allerdings, wie auch in kostenpflichtigen Programmen, ein wenig 'Handarbeit' nötig.
- Vermerk des Autors: Da Salome das umfangreichste meshing tool mit den größtmöglichen Freiheitsgrad für den Benutzer darstellt, wird es in Kombination mit OpenFOAM und Code_Aster am meisten Verwendet.
Gmsh
Gmsh ist ein einfaches Meshing tool, das 2D/3D Objekte automatisch vernetzt. Für einfache Geometrien ist es vollkommen ausreichend, man sollte bei komplexen Geometrien jedoch auf Salome zurückgreifen.
Grace
Grace ist ein 2D plotting tool, mit dessen hilfe man die Kurven aus der FEM Simulation plotten und auch fitten kann.
Visualisierung für FEM
Paraview
ParaView ist ein Open-Source Software, das für wissenschaftliche Visualisierung eingesetzt wird. Das ParaView-Projekt ist eine Gemeinschaftsentwicklung von Kitware und dem Los Alamos National Laboratory. ParaView ist im Softwarepaket von OpenFOAM und Code_Aster sowie Code-Saturn enthalten.
Entwicklungsumgebung für Programmierung
Codelite
CodeLite ist eine Open-Source und plattformunabhängige Entwicklungsumgebung für C und C++. Das arbeiten mit Codelite ist durch die integrierte Autovervollständigung, Projekt Verwaltung, Quelltext Restrukturierung, Syntaxhervorhebung, SubVersion und die Unterstützung des GNU Debugger sehr effizient. Es gibt nach meines Wissens keinen anderen plattformunabhängige Entwicklungsumgebung die so leistungsstark ist.
Anjuta
Anjuta ist eine freie, quelloffene integrierte Entwicklungsumgebung (IDE) für den Gnome-Desktop, Das Projekt ist noch im Entwicklungsstadium, Beinhaltet Projektmanagement und Buildmanagement für C und C++. Ist geeignet für folgende Programmiersprachen: C, C++, Java, JavaScript, Python und Vala werden ohne Projektmanagement unterstützt.
Mathematische Software
Um analytische bzw. nummerische Lösungen zu finden, gibt es eine Reihe von mathematischer Programmen, die als wirkliche alternative zu Proprietäre Software angesehen werden können. Da in wissenschaftlichen Institutionen hauptsächlich nur zwei mathematische Programme genutzt bzw. verbreitet sind, werden hier auch nur zu diesen Programmen die besten alternativen aufgelistet, da diese das komplette Spektrum der Algebra, Analysis, diskrete Mathematik, Numerik und viele andere Teilgebiete der Mathematik beinhalten.
wxMaxima
wxMaxima ist ein Computeralgebrasystem kurz CAS genannt, das auf dem Computeralgebrasystem Maxima basiert. wxMaxima besitzt im gegensatz zu Maxima eine wxWidgets basierende grafische Benutzeroberfläche wodurch das arbeiten mit dem Formalismus einfacher und übersichtlicher wird. Wer mit Maple gearbeitet hat, wird wxMaxima zu schätzen wissen, der unterschied zu Maple ist jedoch erheblich zu sehen und zu spüren, da sich die Syntax unterscheidet und die Bibliothek "noch nicht" den Umfang wie von Maple besitzt. Daran wird jedoch gearbeitet und die standardmäßigen Lösungen mittels Algorithmen sowie Grafischen Darstellungen lassen sich mit wxMaxima problemlos bewältigen.
Octave
GNU Octave ist eine open source Software zur Lösung von mathematischen numerischen Problemen, diese umfasst Matrizenrechnung, Integration bis hin zur Lösen von (Differential-)Gleichungssystemen und vielen mehr was sich nur durch nummerische Berechnung lösen lässt. Berechnungen können in Octave mit einer Skriptsprache durchgeführt werden, die weitgehend zu dem proprietären MATLAB kompatibel ist. Fast vollständige Kompatibilität zu Matlab lässt sich durch das Zusatzpaket octave-forge und andere freie Ersatzfunktionen des Mathworks FileExchange erreichen. Zudem lassen sich für MATLAB geschriebene externe MEX-Funktionen in C oder C++ ohne Code-Anpassungen für Octave kompilieren und verwenden. Als alternative zu Simulink das in Matlab integriert ist, fehlt eine Signal-Processing-Toolbox in Octave. Aber auch dafür gibt es eine alternative diese nennt sich Scicos.