- Akademische Forschung und Lehre
- Geräte des KIT
- Mitarbeiter des KIT
- siehe Lizenzbedingungen
-
STAR-CCM+
-
CFD-Programm zur Berechnung von Strömungen, Wärmeausbreitung, Verbrennung und chem. Reaktionen u.v.m.
- Kontakt:
- Ansprechpartner:
- Links:CD-adapco Homepage
*** Sicherheitsschwachstelle in der Windows Version von Simcenter STAR-CCM+:
die Mitglieder der Benutzergruppe "Benutzer" ("Users") haben standardmäßig Schreibrechte im Installationsverzeichnis s. Info. Bitte den Fix durchführen s. Info.
STAR-CCM+ ist ein CFD-Programm von Siemens Industry Software GmbH (ehemals CD-adapco Group ) und ist im Vergleich zu dem anderen bekannten CFD-Programm dieser Firma - STAR-CD - eine neue Entwicklung mit objektorientierter, Client-Server Architektur. STAR-CCM+ bietet über eine grafischen Oberfläche eine vollständige Vernetzungs-, Modellierungs- und Visualisierungsumgebung. Wichtige Features sind
- Objektbaum
- 3D Modellierer
- CAD-Import
- Import von Netzen anderer CAE-Programme
- Oberflächenbearbeitung
- automatischer Volumenvernetzer
- Postprocessing
- Export von Formaten für andere Postprozessoren/Visualisierer (EnSight, Patran u.a)
Die Möglichkeiten der physikalischen Modellierung umfassen
- gekoppelte und segregierte Solver, 2. Ordnung
- stationär und implizit/explizit transient
- verschiedene Turbulenzmodelle
- freie Oberflächen
- kompressible Gase
- konjugierte Wärmeausbreitung
- Mehrphasenmodelle
- chemische Reaktionen, Verbrennung und Explosion
- bewegte Netze
- Gebläse
Die Ergebnisse von Berechnungen mit STAR-CCM+ lassen sich in ein Format ausgeben, die mit dem 3D-Viewer STAR-View+ darstellen lassen.
Der Solver von STAR-CCM+ kann parallelisiert auf dem HPC-Cluster bwUniCluster, ausgeführt werden. Näheres findet man in der Dokumentation und in der Kurzanleitung zu STAR-CCM+.
Das Programm kann unter Einhaltung der Nutzungsbedingungen von CD-Adapco auch auf Instituts- und Arbeitsplatzrechnern unter Linux und Windows installiert werden. Dafür hat das SCC eine begrenzte Anzahl an akademischen Lizenzen erworben. Interessenten setzen sich bitte mit dem Betreuer in Verbindung.
Download: http://ftp.scc.kit.edu/pub/campus/STAR-CCM+/
Auszug aus den Lizenzvereinbarungen
Das SCC hat eine akademische Lizenz von StarCCM+ erworben, die laut Siemens Industry Software GmbH (ehemals CD-adapco Group ) folgende Nutzung zulässt:
"...
d) Akademische Lizenz. Wenn eine Softwarelizenz als akademische Lizenz ausgewiesen ist, sichert der Lizenznehmer zu, dass es sich bei ihm um eine akademische Einrichtung oder um eine andere gemeinnützige Organisation handelt. Die akademische Softwarelizenzerlaubt dem Lizenznehmer die Benutzung für Zwecke der Lehrtätigkeit, für Programme zur Erteilung eines Universitätsgrads oder im Forschungsbereich, die Bestandteil der vom Lizenznehmer durchgeführten akademischen Lehrprozesse sind. Akademische Lizenzen sind nicht für den Gebrauch in der kommerziellen Datenverarbeitung für die Zwecke der Erwirtschaftung von Gewinn bestimmt.Vor diesem Hintergrund ist der Lizenznehmer einverstanden, dass unter Einsatz der Software gewonnene Resultate öffentlich weitergegeben oder veröffentlicht werden können. Der Lizenznehmer verpflichtet sich, auf die Benutzung der Software von CD-adapco in allen entsprechenden wissenschaftlichen akademischen Veröffentlichungen hinzuweisen und dem Lizenzgeber Kopien dieses veröffentlichten Materials zu überlassen. Material, auf/in dem Handelsname, Marken oder Logos von CD-adapco aufgeführt sind, unterliegt den für diese Nutzung geltenden Richtlinien von CD-adapco..."
Die komplette Lizenzvereinbarung zur Nutzung von CD-Adapco Softwareprodukten finden Sie auf dem FTP-Server ftp://ftp.scc.kit.edu/pub/campus/STAR-CCM+/ und auf der Website von CD-Adapco http://www.cd-adapco.com/purchase-license-agreement-pla (ENG) / (DE).
Kurzanleitung
Interaktive Benutzung von STARCCM+
Die Bearbeitung eines STAR-CCM+ Projektes erfolgt über eine grafische Oberfläche und dort insbesondere durch Erzeugung und Bearbeitung von Objekten in einem Objektbaum. Das STAR-CCM+ GUI wird gestartet
- unter Windows: in dem man das STAR-CCM+ Icon auf dem Desktop anklickt oder über Start --> CD-adapco --> STAR-CCM+Version for Windows, wobei Version die aktuelle Versionsnummer ist.
- unter Linux: mit dem Kommando starccm+
Dann öffnet sich ein Fenster und man wählt im File Menü New Simulation ... oder Load Simulation ... aus. Im Folgenden arbeitet STAR-CCM+ auf einer einzigen Datei, nämlich projekt.sim, wobei der Name beim ersten Sichern vergeben wird und über dem Objektbaum steht (im Bild cyclone).
Die Abbildung zeigt die typische Arbeitsoberfläche mit dem Objektbaum in der linken Hälfte. Die einzelnen Objekte werden mit der linken Maustaste ausgewählt. Klickt man sie mit der rechten Maustaste an, öffnet sich ein Kontext-Menü, über das sich das Objekt bearbeiten lässt.
Der Ablauf eines STAR-CCM+ Projektes sieht im Allgemeinen wie folgt aus:
- Import aus CAD-Programmen oder Konstruktion von Geometrien mit dem 3D Modellierer
- Bearbeitung und Reparatur von Flächen
- Definition von Randbedingungen
- Auswahl des Vernetzungsmodells
- Definition des physikalischen Modells
- Vernetzung
- Vorbereitung des Postprocessings
- Spezifikation des Solvers und Start der Berechnung
- Postprocessing
Import aus CAD-Programmen oder Konstruktion von Geometrien mit dem 3D Modellierer
Ausgangspunkt eines Modells ist die Geometrie, die entweder im GUI mit dem 3D-Modellierer erzeugt oder importiert wird. Importiert werden können Oberflächen im CAD-Format oder auch im Format von anderen CAE-Programmen:
- Parasolid (.x_t und .x_b)
- IGES (.igs und .iges)
- STEP (.stp und .step)
- STL
- PATRAN und NASTRAN Schalen (.pat und .nas)
- CD-adapco Format, z.B. von Pro-STAR, dem Präprozessor von STAR-CD, exportiert (.dbs und .inp)
- CATIA V4 und CATIA V5
- SolidWorks (.sldprt und .sldasm)
- ProE (.prt und .asm)
- Autodesk Inventor (.ipt und .iam)
- VDA
Es können auch Volumennetze anderer CAE-Programme importiert werden, z.B. FLUENT, STAR-CD, Nastran, EnSight u.a.
Je nach importiertem Format werden als erste Objekte sog. Parts erzeugt, ebenso vom 3D-Modellierer. Parts müssen vor dem Vernetzen sog. Regions zugeordnet werden. Beim Import von Netzen aus anderen CFD-Programmen, z.B. STAR-CD werden direkt Regions erzeugt, die sich hierarchisch aus Volumen und begrenzenden Rändern aufbauen. Gleichzeitig wird eine Geometry Scene eingerichtet. Scenes sind 3D grafische Darstellungen der Geometrien und Ergebnisse im Grafikteil des GUI. Regions können sich aus mehreren Bereichen zusammensetzen, die durch Interfaces, das sind die internen Ränder, voneinander getrennt sind. Die Interfaces tauchen ebenfalls als Objekte auf und ihnen können physikalische Eigenschaften zugeordnet werden.
Bearbeitung und Reparatur von Flächen
Importierte Flächen aus CAD-Programmen müssen u.U. weiterbearbeitet und repariert werden. Darauf wird hier nicht weiter eingegangen. Beispiele findet man in den Tutorien.
Definition von Randbedingungen
Im Regions Knoten des Objektbaums sind die Kontinua und die Ränder angezeigt. Durch Anklicken mit der rechten Maustaste kann man die Namen ändern. Dopppelklick mit der linken Maustaste öffnet ein Editor-Fenster, in dem man die Eigenschaften, hier also die Randbedingungen, festlegen kann, z.B. Symmetrien, Einlass- bzw. Auslassrandbedingung, Druckrandbedingung oder einfach Wandrandbedingung.
Auswahl des Vernetzungsmodells
Das Vernetzungsmodell bezieht sich auf die Continua Objekte im Objektbaum. Ein Continuum im Sinne von STAR-CCM+ ist die Kombination des Vernetzungsmodells bezogen auf einen Bereich in dem sich die Simulation abspielt, das Mesh Objekt, und das physikalische Modell, welches dort eine Rolle spielt, das Physics Objekt. Beide Objekte werden angelegt, in dem man mit der rechten Maustaste auf Continua klickt und man im Kontextmenü über New zwischen Mesh Continuum oder Physics Continuum auswählt. Zunächst wählt man das Erstere aus und stellt dann die Netzeigenschaften ein (Art des Netzes, globale Netzgröße etc.). Man kann dort auch einstellen, das Oberflächennetze auf den Randflächen individuell eingestellt werden sollen. Dann können in den Boundary Objektknoten unterhalb des Regions Objekt nacheinander die Netzeigenschaften auch lokal festgelegt werden.
Definition des physikalischen Modells
Das physikalische Modell eines Continuum Objektes wird durch Klicken der rechten Maustste auf dem Physics Objekt und Auswahl von Select models ... im Kontextmenü. Anscliessend klickt man nacheinander die physikalischen Eigenschaften an, die im Modell realisiert werden sollen, z.B. Dimensionalität, Zeitverhalten, Material, Solver, Turbulenzmodell etc.
Der Objektbaum unter dem Physics 1 Objekt hat dann z.B. das obenstehende Aussehen. Unter Gas kann der Air Knoten entfaltet werden, der die physikalische Konstanten für Luft enthält. Hier kann man die Werte eines anderen Gases eingeben und entsprechend auch den Namen ändern. Unter dem Knoten Initial Conditions werden die Anfangsbedingungen für Druck, Geschwindigkeit, Temperatur und den Turbulenzgrößen gesetzt.
Das Continuum Objekt ist bis hierher noch keinem geometrischen Bereich zugeordnet. Dies geschieht, in dem man unter dem Regions Knoten den oder die Kontinuumsbereiche editiert und dort das entsprechende Physics Continuum und Mesh Continuum auswählt.
Vernetzung
Man kann zunächst nur die Oberflächen vernetzen und sich damit eine Einschätzung der Netzqualität verschaffen. Der Oberflächenvernetzer wird entweder über das entsprechende Symbol in der Tool-Leiste oder über das Mesh Menü und Generate Surface Mesh gestartet. Anschließend können die Netzgrößen verändert werden oder man startet sofort den Volumenvernetzer, ebenfalls über die Tool-Leiste oder über das Mesh Menü und Generate Volume Mesh.
Vorbereitung des Postprocessings
Scenes sind Objekte, die verschiedene Aspekte des Modells grafisch darstellen. Es gibt 4 Arten von Scenes:
- Geometry Scene zur Darstellung der geometrische Parts und Regions
- Mesh Scene zur Darstelluing des Netzes auf den Oberflächen von Parts
- Scalar Scene zur Dartstellung von Kontourplots von skalaren Größen auf Oberflächen von Parts und Derived Parts
- Vector Scenes zur Darstellung von Vektorgrößen auf Oberflächen von Parts und Derived Parts
Ein Scene Knoten im Objektbaum besteht aus 2 Subknoten Displayers und Attributes in denen die darzustellenden Größen und die Parts, auf den sie dargestellt werden, spezifiziert werden, sowie Hintergrund, Beleuchtung, Schnittebenen usw. Im Knoten Derived Parts kann man neue Bereiche definieren: Ebenen, Kugel- bzw. Zylinderoberflächen und Isoflächen aber auch Stromlinien und Sonden.
Klickt man mit der echten Maustaste auf den Scene Knoten, kann man eine neue Scene anlegen und die darzustellenden Größen und die Darstellungsbereiche festlegen.
Spezifikation des Solvers
Im Solver Knoten des Objektbaums kann man den Solver auswählen und seine Eigenschaften festlegen. Im Knoten Stopping Criteria wird die Länge der Simulation, d.h. das Kriterium für die Beendigung vorgegeben. Je nach Art der Simulation legt man mit
- Maximum Steps die maximale Anzahl an Iterationen fest
- Stop File den Pfad einer Datei mit Namen ABORT fest, so dass wenn diese Dtaei existiert, der Job beendet wird
- Maximum Physical Time bei einer transienten Simulation den Endzeitpunkt fest
- Maximum Number of Inner Iterations bei einer transienten Simulationen die maximale Anzahl an Iterationen in einem Zeitschritt fest
Man kann auch die Simulation über einen Monitor steuern (s. dazu den STAR-CCM+ User's Guide).
Die Simulation als solche wird über die Menüfolge Solution --> Run oder über das Icon in der Tool-Leiste gestartet. Während der Simulation kann man einen der Scenes aktivieren und sich die Entwicklung eines der Plots anschauen.
Postprocessing
Postprocessing geschieht einfach durch Aktivieren der entspechenden Scene und Auswahl des Parts auf dessen Oberfläche die Kontour oder Vektordarstellung geplottet werden soll. Neue Scenes bzw. Erweiterungen von schon definierten Scenes sind ebenfalls möglich.
StarCCM+ auf den Linux-Clustern
Auf dem SCC Parallelcluster bwUniCluster wird ein Modulkonzept eingesetzt. Bevor Sie mit dem StarCCM+ Produkt arbeiten können, müssen Sie zuerst das entsprechende Modul laden. Alle vorhandenen Software-Module erhalten Sie, indem Sie
module avail
eintippen. Um das Modul der aktuellen Version von StarCCM+ zu laden, geben Sie Folgendes ein:
module load cae/starccm+/2302
Um einen möglichst störungsfreien Betrieb der Linux Cluster zu gewährleisten, werden die abgeschickten Jobs von einem Job-Management verwaltet. Näheres dazu s. https://wiki.bwhpc.de/e/BwUniCluster_2.0_Slurm_common_Features
Um dem Benutzer den Zugang zu erleichtern, wurde der StarCCM+-Aufruf "starccm+job" bereit gestellt (das Module muss vorher geladen werden):
starccm+job
-j Simulation-Name (notwendig)
-t CPU-Zeit in Minuten (notwendig)
-m Gesamthauptspeicherbedarf in MByte (notwendig)
[-n Anzahl der Knoten; Vorbesetzung: 1]
[-p Anzahl der Prozessoren; Vorbesetzung: 1]
[-q Queue-Klasse/ Partiton; Default: single/ multiple]
[-T Real-Zeit in Minuten]
[-s Text String mit weiteren Optionen]
Es folgt ein Beispiel für den bwUniCluster:
module load cae/starccm+/2302
starccm+job -j MyModel.sim -t 60 -m 86000 -n 2 -p 20
Alternativ kann ein Startskript wie unten beschrieben verwendet werden, um ein Job von starccm+ an das Batchsystem zu submittieren. Hier ein Beispiel-Skript für einen Multinode-Job auf dem bwUniCluster multi_node_job.sh:
#!/bin/bash
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=20
#SBATCH --partition=multiple
#SBATCH --time=0:60:00
#SBATCH --mem=90gb
module load cae/starccm+/2302
source starccmplus.init
time starccm+ -batch -rsh ssh -mpi intel -on ${hostlist} MyModel.sim
Der Job wird wie folgt abgeschickt:
sbatch multi_node_job.sh
Wenn der StarCCM+ Job GPGPU nutzen sollte, sähe das Beispiel-Skript gpu_job.sh folgendermaßen aus:
#!/bin/bash
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=20
#SBATCH --time=0:60:00
#SBATCH --mem=40gb
module load cae/starccm+/2302
source starccmplus.init
time starccm+ -batch -gpgpu auto -rsh ssh -mpi intel -on ${hostlist} MyModel.sim
Der Job wird dann wie folgt abgeschickt:
sbatch -p gpu_4 gpu_job.sh
Näheres zur GPGPU Nutzung des bwUniCluster s. https://wiki.bwhpc.de/e/BwUniCluster_2.0_Slurm_common_Features#GPU_jobs
Dokumentation und Tutorials
Die Dokumentation ist online und kann unter der grafischen Oberfläche über den Help-Button ausgewählt werden. Hier finden sich u.a. der User's Guide und die Tutorials. Diese findet man auch im doc Unterverzeichnis der STAR-CCM+ Installation. Der Users Guide liegt hier auch im PDF-Format vor und umfasst die komplette schriftliche Dokumentation.
Auf den SCC-Clustern befindet sich die Dokumentation in /opt/bwhpc/kit/cae/CD-adapco/\${VERSION}-R8/STAR-CCM+\${VERSION}-R8/doc/ auf den bwUniCluster und ForHLR I