2.11 DAS OPENGL PLOTPROGRAMM Z88O
Mit dem OpenGL-Plotprogramm Z88O wird eine neue Dimension in Z88
eröffnet: Mit drei Lichtquellen beleuchtete Strukturen oder
Hiddenline- Strukturen können unverformt oder verformt geplottet
werden, ebenso können Farbverläufe für Spannungen
und X-, Y- und Z- Verformungen gezeigt werden. Bei Knoten- und
Elementnummern können Bereiche angegeben werden, was bei
großen Strukturen sehr hilfreich ist. Eine Plotter- oder
Druckerausgabe ist explizit nicht vorgesehen - wozu auch, machen
Sie einfach einen Screenshot.
Z88O arbeitet mit OpenGL. Daher muß Ihr Computer OpenGL-
fähig sein. Bei allen neueren Windows- Versionen ist dies
standardmäßig aktiviert, und es reicht meist eine Billig-
Grafikkarte. Sehen Sie allerdings sicherheitshalber in den
Systemeinstellungen
nach - mitunter kann OpenGL- Hardwarebeschleunigung aktiviert
werden. Bei kommerziellen UNIX- Workstations ist OpenGL integraler
Bestandteil. Achten Sie allerdings beim Compilieren darauf, daß
die Libraries libGLw und libGL und sowie die
Headerdateien
gl.h, glx.h und GlwMDrawA.h vorhanden sind. Dies
gilt auch für LINUX- Systeme; hier kann es aber je nach
Grafikkarte
manchmal Probleme geben. Das liegt dann nicht an Z88O, das wurde
auf einer SGI als OpenGL- Referenzmaschine entwickelt. Aber mit
neueren RedHat- und SuSE- Distributionen sollten Sie Z88O nach
etwas Basteln zum Laufen bekommen. Falls es gar nicht funktioniert:
Das bewährte Plotprogram Z88P, das
mit der WinAPI bzw. der X11- Bibliothek arbeitet, bleibt weiterhin
in Z88, vgl. Kap. 2.6.
Die Bildschirmfarben, Lichtquellen, Materialeigenschaften, der
Polygonoffset u.a. können für Windows in der Datei Z88O.OGL
eingestellt werden; für UNIX bestehen viel umfassendere
Möglichkeiten
in der Datei Z88.FCD, in der nicht nur Farben, Fonts und OpenGL-
Steuerwerte, sondern auch die Größen und Lagen der
Pushbuttons, Radioboxes etc. definiert sind. Sie können also
bei UNIX das ganze Aussehen von Z88O ganz nach Ihren Wünschen
anpassen. Seien Sie allerdings vorsichtig beim Ändern von
Z88O.OGL (Windows) bzw. Z88.FCD (UNIX/LINUX): Sie müssen
über ein gewisses Grundwissen über die Arbeitsweise
von OpenGL verfügen, wenn Sie Lichteffekte und dgl. gezielt
ändern wollen. Sonst gibt es schnell lange Gesichter, weil
anscheinend nichts mehr richtig geht. Einige Hinweise sind als
Kommentare in Z88O.OGL bzw. Z88.FCD eingefügt, aber ich kann
hier keine Einführung in OpenGL geben. Konsultieren Sie die
beiden Bücher "OpenGL Programming Guide" und "OpenGL
Reference Manual" des Addison-Wesley Verlags.
Starten des Renderns: Wenn Z88O angelaufen ist, ist OpenGL
initialisiert. Das eigentliche Rendern starten Sie bei Windows
mit dem Icon ganz links Start frei bzw. bei UNIX mit dem
Pushbutton obere Reihe rechts <Los>.
erford. Files: | Superstrukturen | unverformte FE- Str. | verformte FE- Strukturen |
Z88NI.TXT | ja | nein | nein |
Z88I1.TXT | nein | ja | ja |
Z88O2.TXT | nein | nein | ja |
Z88O8.TXT | nein | ja,wenn Anzeige der Vergleichsspannungen | ja, wenn Anzeige der Vergleichsspannungen |
Besondernheiten des Renderns bei Z88O: Um möglichst
rasch zu arbeiten, verbindet Z88O lediglich die Eckpunkte, und
diese auch nur mit geraden Linien, obwohl bei Serendipity- Elementen
die Kanten der Elemente quadratische bzw. kubische Kurven sind.
Der Rechenaufwand ist besonders bei beleuchteten Szenen ohnehin
schon immens. Wenn ein Bauteil in Ihrem CAD-System, z.B. Pro/ENGINEER,
schön schnell gedreht wird und die dort in ein FE- Netz zerlegte
Struktur dann in Z88O relativ langsam gedreht, gezoomt oder verschoben
wird, dann ist das ganz normal: CAD- Programm malen nur ein "paar"
Hüllkurven, FE- Programme müssen jedes finite
Element rendern, d.h. Normalenvektoren für alle
Elementflächen
berechnen, Farbverläufe dafür bestimmen usw. Besonders
rechenintensiv sind Hiddenline- Darstellungen.
Was können Sie mit Z88O anzeigen? Eigentlich alles,
wenn vorher ein Solver (Z88F oder Z88I1 mit Z88I2),
der die Verformungsdatei Z88O2.TXT erzeugt, und dann der
Spannungsprozessor
Z88D, der die drei Spannungsdateien Z88O3.TXT
(für Sie zum Ablesen der Spannungen), Z88O5.TXT (für
Z88P) und Z88O8.TXT (für Z88O) erzeugt, gelaufen sind. Selbst
bei Stäben können Sie jetzt "Vergleichspannungen",
also die Zug- und Druckspannungen, farbig anzeigen lassen; lediglich
für Balken Nr.2 und Nr.13 sowie für Wellen Nr.5 können
nur die Verformungen angezeigt werden. Warum? Weil Sie bei Balken
und Wellen beispielsweise die Kerbwirkung miteinrechnen müssen,
was ein FEA- Programm naturgemäß bei einer Gesamtstruktur
nicht kann.
Spannungsanzeige: Die Art der Spannungsanzeige bei FEA-
Programmen hat durchaus philosophischen Charakter. Fakt ist, daß
durchaus sehr teure, kommerzielle FEA- Programme in bestimmten
Situationen Spannungen falsch anzeigen, wie umfangreiche
Versuche am Lehrstuhl für Konstruktionslehre und CAD der
Universität Bayreuth ergeben haben. Am präzisesten ist
die Spannungsanzeige direkt in den Gaußpunkten, wie dies
Z88P realisiert. Dies ist bei OpenGL nicht vernünftig darstellbar,
daher habe ich mich nach vielen Versuchen mit realen FE-Strukturen
zu folgendem Vorgehen entschlossen:
Verschiebungsanzeige: Sie können die Struktur unverformt
oder verformt plotten. Der Vergrößerungsfaktor (Standard
ist jeweils 100 für X, Y und Z) ist wählbar. Zusätzlich
können Sie sich die Verschiebungen für X, für Y
oder für Z farblich abgestuft anzeigen lassen. Dies ist besonders
bei komplizierten Raumstrukturen sehr angenehm. Im Gegensatz zu
Z88P können Sie die Spannungsanzeige oder die Verschiebungen
für X, für Y oder für Z oder die Hiddenline- Darstellung
auch bei verformter Struktur aufrufen.
Bedienungshinweise Zoomen, Verschieben und Rotieren:
Diese Option verwenden Sie für eingeschränkte Zoom-
und Verschiebebereiche sowie für schnelles, aber unpräzises
Drehen. Sie könnten jetzt auch mit den Tasten gemäß
1. zusätzlich arbeiten, aber diese gemischte Arbeitsweise
ist nicht vorgesehen und kann zu unvorhersehbaren Ergebnissen
führen. Das liegt daran, daß in Z88O unterschiedliche
Berechnungen für beide Modi verwendet werden.
Tasten- Sonderfunktionen bei Windows:
BILD HOCH : Zoom stärker
BILD RUNTER : Zoom geringer
CURSOR LINKS : Struktur in X-Richtung schieben
CURSOR RECHTS : Struktur in X-Richtung schieben
CURSOR HOCH : Struktur in Y-Richtung schieben
CURSOR RUNTER : Struktur in Y-Richtung schieben
POS1 : Struktur in Z-Richtung schieben
ENDE : Struktur in Z-Richtung schieben
F2 : Struktur um X-Achse rotieren
F3 : Struktur um X-Achse rotieren
F4 : Struktur um Y-Achse rotieren
F5 : Struktur um Y-Achse rotieren
F6 : Struktur um Z-Achse rotieren
F7 : Struktur um Z-Achse rotieren
F8 : Rotationen um X,Y und Z auf 0 setzen
Bei UNIX gelten die üblichen X- bzw. Motif-
Tastendefinitionen,
also TAB, dann Pfeiltasten zum Anwählen und Leertaste zum
Aktivieren.
Das "Koordinatensystem": OpenGL arbeitet mit
einem Clipping Volume, d.h. mit einer Art Würfel,
der durch Xmin und Xmax in horizontaler Richtung,
durch Ymin und Ymax in vertikaler Richtung und Zmin
(liegt zum Betrachter hin) und Zmax (zeigt vom Betrachter
weg) definiert wird. Wenn Sie jetzt einen Körper zu stark
zoomen oder zu sich heranschieben, dann wird der Bereich von Zmin
überschritten und Teile der Struktur liegen außerhalb
des Betrachtungsbereiches. Das können Sie einerseits sehr
schön verwenden, um in eine Struktur hineinzublicken. Wenn
Sie das nicht wollen, verändern Sie den Wert von Zmin
(Standardwert ist -100) zu kleineren Werten, z.B. zu -1000: Bei
Windows im Menü Faktoren > Z-Limit zum Betrachter,
bei UNIX das Textfeld "Zlimit" rechts unten. Die folgenden
Bilder stellen den Sachverhalt dar:
Windows: Kolben eines BMW-Motorradmotors,
Zlimit auf Standardwert -100.
Windows: Kolben eines BMW-Motorradmotors,
Zlimit auf -10 gesetzt: Kolben halb geschnitten.
Erläuterung einiger Menüpunkte:
Name der Strukturdatei:
Windows : Datei > Strukturfile oder das Disketten-Icon
UNIX : Stru. , Textfeld direkt auf Window
Hier wird das Strukturfile gewählt. Namen, ggf. mit Pfad,
eingeben, RETURN. Die neue Stuktur wird geladen. Das eigentliche
Rendern starten Sie bei Windows mit dem Icon ganz links Start
frei bzw. bei UNIX mit dem Pushbutton obere Reihe rechts <Los>.
Verformungszustand der Struktur:
Windows: Struktur > Unverformt, Verformt oder die entsprechenden Icons
UNIX : Radiobox Unverfo. bzw. Verformt
Zeichnen der Struktur unverformt oder verformt. Sie können
alle sonstigen Render-Operationen mit der unverformten oder auch
der verformten Struktur durchführen.
ACHTUNG Struktur Verformt: Der Bediener ist dafür
verantwortlich, daß er bei Nutzung dieser Funktion eine
Verschiebungsrechnung ausgeführt hat. Also vor Nutzung von
Z88O einen FE- Lauf mit Z88F oder dem
Iterationssolver laufen lassen. Sonst
werden irgendwelche Files Z88O2.TXT (Verschiebungen) aus früheren
Rechnungen angezogen !
Wahl der 3D-Effekte:
Windows: 3D-Effekte >
1. Licht an,
2. Hidden Line an,
3. V-Spannungen (Eckknoten),
4. V-Spannungen (Elemente),
5. X-Verschiebungen an,
6. Y-Verschiebungen an,
7. Z-Verschiebungen an
oder die entsprechenden Icons
UNIX : Radiobox
1. Licht,
2. Hide/Netz,
3. VerSpa E,
4. VerSpa M,
5. X-Verschi,
6. Y-Verschi,
7. Z-Verschi
Für die Pos. 3. bis 7. kann die Farbskala in in den Steuerdateien
Z88O.OGL (Windows) und Z88.FCD (UNIX) verändert werden.
UNIX: Hiddenline- Darstellung einer verformten Platte, Maussteuerung
eingeschaltet.
Zeichnen der Knoten- und Elementnummern:
Windows: Labels > No Labels, Knoten, Elemente
UNIX : Radiobox No Labels, Knoten, Elemente
Labels = Plotten von Knotennummern oder Elementnummern. Im Gegensatz
zu Z88P können Sie hier jeweils Bereiche von-bis
angeben,
z.B. plotte die Knotennummern von 11 bis 19 oder plotte das Element
3, d.h. von 3 bis 3. Z88O merkt sich Ihre Einstellungen, auch
wenn Sie zwischenzeitlich wieder auf No Labels
zurückgehen.
Achten Sie bei UNIX bzw. LINUX darauf, daß, wenn Sie ein
Textfeld ausgefüllt haben, Sie dann gleich die Return-Taste
drücken, damit der Wert auch übernommen wird. Das ist
keine Z88O- Eigenheit, sondern das normale Verhalten von Motif-
Textfelfern.
Beachten Sie, daß Sie nur alle gewünschten Labels auf
der Oberfläche gerendert bekommen, wenn Sie bei den 3D-Effekten
im Hiddenline- Modus sind. Bei allen anderen Modi werden die Labels
teilweise verdeckt. Und Labels im Inneren eines räumlichen
Körpers kann man normalerweise ohnehin nicht sehen, weil
sie von den Tetraeder- und Hexaederflächen verdeckt werden.
Daher schaltet Z88O dann den Hiddenline- Modus aus - Sie sehen
dann das Netz ohne verdeckte Linien wie bei Z88P. Sobald Sie wieder
auf No Labels gehen, wird wieder mit verdeckten Linien
gearbeitet.
Vergrößern - Verkleinern (Zoomen):
Windows: Tasten BILD HOCH und BILD RUNTER
UNIX : Pushbuttons Zoom+ und Zoom-
Bei Maussteuerung aktiv: linke Maustaste gedrückt
Verschieben (Panning):
Windows:
X: CURSOR LINKS und CURSOR RECHTS
Y: CURSOR HOCH und CURSOR RUNTER
Z: POS 1 und ENDE
UNIX : Pushbuttons X+, X-, Y+, Y-, Z+, Z-
Bei Maussteuerung aktiv: mittlere Maustaste gedrückt
Rotieren:
Windows: Faktoren > Rotationen
Die Rotationen um X, Y und Z werden mit Faktoren > Rotationen
definiert: ROTX, ROTY und ROTZ. Standardwerte je 0. Mit den Tasten
F2..F7 kann in 10-Grad Sprüngen gedreht werden.
UNIX : Pushbuttons RX+, RX-, RY+, RY-, RZ+, RZ-
Drehung in 10 Grad Schritten. Pushbutton Rot 0 setzt sie
zurück.
Bei Maussteuerung aktiv: rechte Maustaste gedrückt
Vergrößern der Verschiebungen:
Windows: Faktoren > Verschiebungen > FUX, FUY, FUZ
UNIX : Textfelder FUX, FUY und FUZ
Vergrößern der Verschiebungen erfolgt bei Windows mit
Faktoren > Verschiebungen : FUX, FUY und FUZ.
Standardwerte je 100. Achtung UNIX: Wie bei UNIX üblich,
greifen die Änderungen nur bei einem jeweiligen RETURN. Oder
lassen Sie die drei RETURNs weg und geben dann nochmal <Los>.
Anmerkungen Vergleichsspannungen:
Windows:
3D-Effekte > Vergleichsspannungen (Eckknoten) bzw.
Icon Nr. 9 von links
3D-Effekte > Vergleichsspannungen (Elemente) bzw. Icon
Nr. 10 von links
UNIX :
Radiobutton VerSpa E (= Eckknoten)
Radiobutton VerSpa M (= Mittelwert pro Element)
Wurden vorher Vergleichsspannungen mit Z88D
berechnet (dies ist
für alle Elemente außer den Balken Nr.2,
Nr.13 und
den Wellen Nr.5 möglich und sinnvoll), so
können diese
Vergleichsspannungen entweder in den Eckknoten oder als Mittelwert
je Element angezeigt werden. Und bevor Sie den Spannungsprozessor Z88D
laufen ließen, mußten Sie davor die Verschiebungen mit Z88F
oder dem Iterationssolver berechnen. Die
Reihenfolge ist also:
1. Cholesky Solver Z88F oder Iterationssolver Z88I1 und Z88I2
2. Spannungsprozessor Z88D
3. Z88O, falls Sie Spannungen plotten wollen
Vergleichsspannungen in den Eckknoten: Die Spannungen werden
tatsächlich berechnet in Gaußpunkten, die in der Nähe
der jeweiligen Eckknoten liegen. Es werden die Spannungen für
genau so viele Gaußpunkte berechnet, wie Eckknoten vorhanden
sind. Da meist an einen Knoten mehrere Elemente anschließen,
werden diese Spannungen dann noch gemittelt über alle
anschließenden
Elemente. Die Einstellungen hinsichtlich der Integrationsordnung
INTORD in der Steuerdatei Z88I3.TXT haben
keinen Einfluß, INTORD muß aber > 0 sein.
Vergleichsspannungen, Mittelwert pro Element. Es werden
die Spannungen in den Gaußpunkten im jeweiligen Element
berechnet, aufsummiert und durch die Anzahl der Gaußpunkte
geteilt. Dies ergibt eine mittlere Vergleichsspannung pro Element.
Die Einstellungen hinsichtlich der Integrationsordnung INTORD
in der Steuerdatei Z88I3.TXT haben jetzt
Einfluß, INTORD muß > 0 sein. Beispiel: Wenn Sie
bei Hexaedern Nr.10 für INTORD 3
angeben, denn werden die
Vergleichsspannungen in 3 x 3 x 3 = 27 Gaußpunkten berechnet,
aufsummiert und dann durch 27 geteilt.
Die Ausgabe erfolgt in Form einer Farbskala. Diese Farbskala
können
Sie in Z88O.OGL (Windows) oder Z88.FCD (UNIX) nach persönlichen
Wünschen einstellen. Natürlich auch die Fonts bei UNIX
- da müssen Sie je nach System etwas experimentieren, bis
es gefällig aussieht. Diese Anpassungen machen Sie einmalig.
Zuvor muß eine Spannungsberechnung mit Z88D
erfolgen. Dabei war im File Z88I3.TXT
das Vergleichs- Spannungsflag ISFLAG 1 und die
Integrationsordnung
INTORD > 0. Genaue Spannungs-Ergebnisse der Ausgabedatei
Z88O3.TXT entnehmen.
ACHTUNG: Der Bediener ist dafür verantwortlich, das
er bei Nutzung dieser Funktionen eine Spannungsberechnung
ausgeführt
hat. Davor mußten Sie Verformungen mit Z88F
oder dem Iterationssolver berechnen.Also vor
Nutzung von Z88O einen Spannungs-Lauf mit Z88D
ausführen. Sonst werden irgendwelche Files Z88O8.TXT (Spannungen)
aus früheren Rechnungen angezogen !
Autoskalieren:
Windows: Autoscale > No Autoscale, Yes Autoscale bzw 3.Icon von links
UNIX : Pushbutton AutoS
Die Autoscale-Funktion sorgt dafür, daß Strukturen
vollständig auf den Bildschirm passen.
Sie wird beim Laden einer Struktur mit Datei > Strukturfile
automatisch aktiviert. Sie wird dann gleich wieder deaktiviert,
daher steht der Haken dann auf No Autoscale. Sie können
dann mit Autoscale > Yes Autoscale passend skalieren
lassen. Sodann schaltet Autoscale sofort wieder auf No Autoscale.
Autoscale > Yes Autoscale ist also eine Art Tipptaste.
Das oben Gesagte gilt sinngemäß auch für UNIX.
Höhen- Seitenverhältnis FYCOR:
Windows: Datei Z88O.OGL
UNIX : Datei Z88.FCD
Das Höhen- Seitenverhältnis zur Monitoranpassung kann
verändert werden. Dazu gibt es in den Dateien Z88O.OGL (Windows)
bzw. Z88.FCD den Wert FYCOR. Laden Sie eine kreisrunde oder
quadratische
Struktur und verändern Sie FYCOR, bis die Struktur auf Ihrem
Monitor genau rund oder quadratisch dargestellt wird. Beachten
Sie, daß der Wert FYCOR beim Start von Z88O geladen wird,
sodaß Sie nach Veränderung dieses Wertes Z88O neu starten
müssen, um eine Änderung zu sehen. Diese Anpassung brauchen
Sie nur ein einzigesmal zu machen.
Windows: Anzeige der Vergleichsspannungen in den Eckknoten bei einem BMW-Motorradkolben.