Cosilab User Funktionen
Cosilab User können auf zweierlei Weise eigenen Code einbringen, und zwar zum einen durch selbst programmierte Userfunktionen, die von Cosilab verwendet werden oder zum anderen durch Verwendung der Cosilab API-Bibliothek für verbrennungsspezifische Teilaufgaben in komplett selbst geschriebenem User Code. Hier wird auf die Cosilab Userfunktionen eingegangen -- für die Verwendung der Cosilab API-Bibliothek in eigenen Simulationsprogrammen wird auf die Seite Eigene Programme verwiesen.
Die Verwendung von Userfunktionen ist optional, da Cosilab per se vollständig und ohne weitere Ergänzungen einsatzbereit ist. Unter gegebenen Umständen mag aber ein User, oder eine Userin, ein Verbrennungsmodell bei seinen/ihren Simulationen einsetzen, das nicht in vorhandene Standardtemplates passt, z.B. dann, wenn ein reduzierter Reaktionsmechanismus mit ganz speziellen Reaktionsgleichungen bei der Simulation verwendet werden soll. In diesem Fall steuert der User eine in Fortran oder C++ geschriebene Funktion bei -- die sog. Userfunktion --, in der die chemischen Produktiondichten der im simulierten System vorhandenen Spezies als Funktionen von Temperatur, Druck und Gemischzusammensetzung formuliert werden, Diese Funktion wird dann mit Cosilab verlinkt um damit Cosilabs implementierte Modelle für die Verbrennungschemie zu überschreiben.
In Cosilab sind Schnittstellen für folgende Arten von Userfunktionen vorgesehen:
- Verbrennungsmodelle,
- Modelle für thermodynamische Daten und Größen,
- Modelle für molekulare Daten und Transportgrößen,
- Datenausgabe,
- Dateneingabe,
- Berechnung bzw. Vorgabe des Drucks,
- Berechnung bzw. Vorgabe der Temperatur,
sowie für eine Reihe anderer Vorgaben.