Startseite Beispiele Screenshots Benutzerhandbuch Bluesky-Logo YouTube ☰
OghmaNano Simulation von organischen/Perowskit-Solarzellen, OFETs und OLEDs DOWNLOAD Quick Start guide

Anleitung zur Formdatenbank (Teil B): Erstellung von 2D-Bildern und -Netzen

In Teil A haben Sie einen neuen Eintrag in der Shape-Datenbank erstellt und Ihr erstes Netz aus einem einfachen, an eine photonische Kristallstruktur erinnernden Muster aufgebaut. In diesem Teil konzentrieren wir uns darauf, wie diese 2D-Bilder überhaupt erzeugt werden und wie sie in nützliche 3D-Strukturen für Raytracing und Geräte-Simulationen umgewandelt werden.

Die Shape-Datenbank ist für Geometrien gedacht, die sich nur schwer durch einfache analytische Funktionen beschreiben lassen: AFM-Bilder, raue Oberflächen, komplexe Parkettierungen und -gitter sowie importierte CAD-Teile. All diese werden einheitlich verarbeitet, indem man von einem 2D-Bild ausgeht und dieses anschließend in eine 3D-Form extrudiert.

1. Die Symbolleiste für 2D-Bilder

Öffnen Sie den Formeneditor für einen beliebigen Eintrag in der Datenbank (z. B. die Form demo aus Teil A) und wechseln Sie zum Register „2D-Bild“. Sie sollten eine Symbolleiste sehen, die der in ?? ähnelt.

2D Image ribbon showing buttons for Image, Generate Honeycomb, Generate Xtal, Generate lens, Generate Gaussian, Saw wave, Checkerboard and Perlin noise.
Die Symbolleiste für 2D-Bilder. Jeder Generator erstellt ein neues Graustufenbild, das in eine 3D-Form umgewandelt werden kann.

Jeder Button erzeugt eine neue Graustufen-Höhenkarte im rechten Bereich des Formeneditors: ein Wabengitter, ein photonischer Kristall (beschriftet mit „Xtal generieren“), ein linsenartiges Profil, ein Gaußscher Fleck, eine Sägezahnwelle, ein Schachbrettmuster oder eine raue Oberfläche, die mit Perlin-Rauschen erzeugt wird. Jedes Mal, wenn Sie auf einen Button klicken, wird das Bild mit der aktuellen Konfiguration neu generiert.

Jeder Generator hat außerdem einen kleinen Pfeil unter sich. Durch Klicken auf diesen Pfeil wird ein Konfigurationsfenster geöffnet, das speziell für das jeweilige Muster gilt. Im Folgenden werden wir einige konkrete Beispiele betrachten.

Sie sind nicht auf synthetische Bilder beschränkt. Mit der Schaltfläche „Bild“ auf der linken Seite können Sie echte AFM-Daten oder ein beliebiges anderes Rasterbild importieren. Der Diskretisierer interpretiert das Bild als Höhenkarte: Weiße Pixel entsprechen der maximalen Höhe, schwarze Pixel der minimalen Höhe, und Zwischengrautöne erzeugen dazwischenliegende Höhen. Für optimale Ergebnisse sollten AFM-Daten in eine lineare Graustufen-Farbskala umgewandelt werden; farbige „Heatmap“-Paletten sind nicht geeignet, da die Helligkeit die Höhe nicht mehr auf einfache Weise codiert.

Zum Schluss können Sie, wenn Sie mit der linken Maustaste auf das Bild auf der rechten Seite klicken, Pixel schwarz einfärben, um Material zu entfernen. Dies ist eine einfache Möglichkeit, unerwünschte Bereiche zu entfernen oder Aussparungen zu erstellen, ohne das gesamte Muster neu generieren zu müssen.

2. Beispiel: Wabenmuster bei Kontaktflächen

Wabenstrukturen sind nützlich als transparente Kontakte, flexible leitfähige Netze oder mechanische Träger. Um eine solche Struktur zu erstellen, klicken Sie auf „Wabe generieren“. Das Fenster auf der rechten Seite wird aktualisiert und zeigt ein hexagonales Gitter an. Wenn Sie auf „Netz erstellen“ klicken, wird das Muster in eine dreidimensionale Struktur umgewandelt, wie in ?? dargestellt.

Honeycomb pattern and its corresponding 3D mesh in the Shape editor.
Ein Wabenmuster, das aus dem zweidimensionalen Bild erstellt und in eine dreidimensionale Form überführt wurde.
Honeycomb configuration window showing dx, dy, shifts, line width and rotation.
Optionen für die Wabenmusterkonfiguration. Sie können den Abstand, die Verschiebung, die Linienstärke und die Drehung in Pixeln einstellen.

Im Konfigurationsfenster können Sie den charakteristischen Abstand in den x- und y-Richtungen ändern, das Muster relativ zum zugrunde liegenden Raster verschieben, die Linienbreite einstellen und das Muster drehen. Kleine Anpassungen hier können einen großen Einfluss darauf haben, wie gut das Netz in eine Gerätekonstruktion passt. Daher lohnt es sich, ein wenig zu experimentieren.

Sobald Sie mit dem 2D-Muster zufrieden sind, klicken Sie erneut auf „Netz erstellen“, um die 3D-Ansicht zu aktualisieren. Wenn das Netz zu kompliziert erscheint, können Sie auf „Netz bearbeiten“ klicken und die Anzahl der Dreiecke reduzieren. Ziel ist es immer, so wenige Dreiecke wie möglich zu verwenden, die die Geometrie dennoch präzise wiedergeben: Jedes zusätzliche Dreieck erhöht den Aufwand für das Raytracing, und in der Praxis ist die Verlangsamung meist überproportional und nicht linear.

3. Beispiel: AFM-ähnliche Rauheit, erzeugt durch Perlin-Rauschen.

Reale Oberflächen sind oft uneben, und es ist nützlich, in der Lage zu sein, „künstliche AFM“-Oberflächen mit ähnlichen statistischen Eigenschaften für schnelle optische Experimente zu erzeugen. OghmaNano verwendet Perlin-Rauschen, ein glattes, zufälliges Feld, das häufig in der Computergrafik eingesetzt wird ( siehe Wikipedia), um dieses Verhalten nachzubilden.

Klicken Sie im Menüband „2D-Bild“ auf „Perlin-Rauschen“. In der rechten Bedienfeld wird ein Rauschmuster in Graustufen angezeigt. Sie können die Rauscheinstellungen über das Dropdown-Menü für die Konfiguration anpassen und erneut auf das Symbol klicken, um das Rauschen neu zu generieren, bis Sie das gewünschte Rauigkeitsniveau erreicht haben.

Perlin noise image and mesh with irregular triangle reduction.
Oberfläche, die mit Perlin-Rauschen generiert wurde, wobei die Knotenreduzierung aktiviert ist. Die Dreiecksanzahl passt sich der lokalen Krümmung an.
Perlin noise surface meshed with a regular triangular grid.
Die gleiche Oberfläche wird mit einem regelmäßigen Gitter verbunden (ohne Reduzierung der Anzahl der Knoten). Dies ist oft eine gute Wahl für Daten, die im AFM-Stil erfasst wurden.

Nachdem Sie ein Muster ausgewählt haben, klicken Sie auf „Netz erstellen“, um die 3D-Oberfläche zu generieren. Bei Strukturen, die AFM-Strukturen ähneln, ist es oft besser, ein reguläres Netz anstelle des Standardalgorithmus zur Knotenreduzierung zu verwenden. Ein reguläres Raster ermöglicht eine gleichmäßigere Abtastung der Oberflächenhöhe und erleichtert die Steuerung der Gesamtanzahl der Dreiecke. Sie können zwischen diesen Optionen im Dialogfeld „Netz bearbeiten“ wechseln und mit verschiedenen Dreiecksauflösungen experimentieren, bis Sie einen guten Kompromiss zwischen Genauigkeit und Geschwindigkeit gefunden haben.

4. Nachbearbeitung mit Filtern

Sobald ein 2D-Bild erstellt wurde, können Sie es mithilfe der Filter-Symbolleiste, die in ?? dargestellt ist, weiter verfeinern. Diese Werkzeuge wirken sich direkt auf das Bild auf der rechten Seite aus, bevor die Netzstruktur erstellt wird.

Filters ribbon showing blur, Normalize y, Normalize z, Threshold, Rotate and Boundary tools.
Bildverarbeitungsfilter. Diese verändern die Höhenkarte, bevor das Netzmodell generiert wird.

Der Weichzeichner glättet scharfe Kanten und Ecken; die Normalisierungsoptionen passen die Höhenverteilung an einen definierten Bereich an; mit der Schwellenwertfunktion kann ein Graustufenmuster in eine binäre Struktur umgewandelt werden; und mit der Randfunktion kann ein durchgezogener Rand um das Muster hinzugefügt werden. All diese Funktionen wirken auf das zugrunde liegende Bild, sodass Sie sie frei kombinieren und anschließend auf „Netz erstellen“ klicken können, um die Auswirkungen auf der 3D-Oberfläche zu sehen.

Als konkretes Beispiel: Beginnen Sie mit einem Sägezahnmuster, das mit der Schaltfläche „Sägezahnwelle“ erzeugt wird. Nachdem Sie das Netz erstellt haben, sehen Sie möglicherweise etwas Ähnliches wie in ??. Durch Anwenden eines Weichzeichnungsfilters werden die Kanten geglättet, wodurch die glattere Oberfläche in ?? entsteht.

Saw-wave generated pattern and its 3D mesh.
Ein Sägezahnmuster, das in eine dreidimensionale Form gebracht wurde. Das zugrunde liegende Bild zeigt scharfe, dreieckige Kämme.
Blurred saw-wave pattern and smoothed 3D mesh.
Das gleiche Muster zeigt sich nach Anwendung eines Weichzeichnungsfilters. Die Rillen sind glatter, und das Gitter eignet sich besser für optische Anwendungen.

Die allgemeine Strategie ist immer gleich: Erstellen oder importieren Sie ein 2D-Bild, wenden Sie alle benötigten Filter an und erstellen Sie dann das Netz neu. Wenn das resultierende Netz immer noch zu komplex erscheint, verwenden Sie die Funktion „Netz bearbeiten“, um die Anzahl der Dreiecke zu reduzieren, während die wichtigsten Merkmale der Oberfläche erhalten bleiben.

5. Importieren von CAD-Dateien (Wavefront OBJ)

Neben bildbasierten Formen kann OghmaNano auch einfache CAD-Modelle über das Wavefront-OBJ-Format importieren ( Wikipedia-Link). Dies ist nützlich, wenn Sie bereits mechanische Konstruktionen oder Linsenformen in einem externen CAD-Programm definiert haben.

Um ein CAD-Modell zu importieren, klicken Sie im oberen linken Bereich des Formeneditors auf „CAD-Datei importieren“ und wählen Sie eine OBJ-Datei aus. Der Parser unterstützt die Textversion des Formats, die hauptsächlich aus Eckpunkt- und Flächendefinitionen besteht. Andere CAD-Formate werden derzeit nicht unterstützt.

Beim Importieren von CAD-Geometrie ist es besonders wichtig, die Anzahl der Dreiecke zu begrenzen. Eine hochdetaillierte OBJ-Datei mit Zehntausenden von Dreiecken mag für die Visualisierung durchaus geeignet sein, aber für das Raytracing wird sie zu langsam sein und kann die gesamte Laufzeit einer Simulation erheblich beeinträchtigen. Wenn möglich, vereinfachen oder reduzieren Sie die Anzahl der Polygone in Ihrem CAD-Programm, bevor Sie die Datei in OghmaNano importieren.

6. Ein Hinweis zu geschlossenen Flächen

Unabhängig davon, ob eine Form aus einem 2D-Bild oder einer importierten CAD-Datei stammt, werden alle von OghmaNano verwendeten Formen als geschlossene Oberflächen behandelt. Im übertragenen Sinne ist eine Oberfläche geschlossen, wenn sie ein Volumen vollständig umschließt, ohne Löcher oder Lücken. In Bezug auf das Netz bedeutet dies, dass jede Kante des Netzes genau zwei Dreiecken zugeordnet sein muss.

Der Grund für diese Anforderung ist, dass der optische Solver eindeutig wissen muss, wann ein Strahl „innerhalb“ oder „außerhalb“ einer Struktur verläuft. Wenn ein Netz offene Kanten, fehlende Flächen oder sich selbst schneidende Bereiche aufweist, können Strahlen durch die Lücken hindurchtreten oder in schlecht definierten Bereichen eingeschlossen werden. Dies kann zu numerischen Artefakten führen oder sogar dazu, dass die Raytracing-Berechnung fehlschlägt.

Aus 2D-Bildern generierte Modelle sind von Natur aus immer geschlossen: Die Grundfläche und die Seitenwände werden automatisch hinzugefügt. CAD-Importe sind jedoch nur so gut wie die ursprüngliche Datei. Wenn Sie bei einer aus einer CAD-Datei abgeleiteten Form auf Probleme stoßen, sollten Sie in einem CAD-Betrachtungsprogramm überprüfen, ob das Objekt tatsächlich eine geschlossene Hülle bildet, und es gegebenenfalls vor der Verwendung in OghmaNano reparieren.