Bitte benutzen Sie diese Kennung, um auf die Ressource zu verweisen: http://dx.doi.org/10.18419/opus-2526
Autor(en): Sommer, Ove
Titel: Interaktive Visualisierung von Strukturmechaniksimulationen
Sonstige Titel: Interactive visualization of structural mechanics simulations
Erscheinungsdatum: 2003
Dokumentart: Dissertation
URI: http://nbn-resolving.de/urn:nbn:de:bsz:93-opus-15600
http://elib.uni-stuttgart.de/handle/11682/2543
http://dx.doi.org/10.18419/opus-2526
Zusammenfassung: A) Motivation und Problemstellung Der Computer ist heute eines der wichtigsten Hilfsmittel beim Entwurf und der Entwicklung von Fahrzeugen. Zunächst wurde er von Konstrukteuren für das Computer Aided Design (CAD) von virtuellen Fahrzeugmodellen eingesetzt. Inzwischen ist er in vielen anderen Bereichen der Fahrzeugentwicklung unentbehrlich geworden: der Entwicklungszyklus von Automobilen ist durch die Computer-gestützte numerische Simulation substanziell verkürzt worden. An virtuellen Prototypen gewonnene Ergebnisse können zunächst optimiert und anschließend am realen Prototypen validiert werden. Untersuchungen der Fahrdynamik, des Crash-Verhaltens, der Innenraumakustik und der Außenhautumströmung sind nur einige Anwendungsfelder, in denen Computer-basierte Technologien zur Senkung der Entwicklungskosten beitragen. Nach den Vorgaben aus dem Design wird ein Konstruktionsmodell erstellt; die erzeugten CAD-Daten beschreiben die Fahrzeugkomponenten anhand parametrischer Flächen und zusätzlicher Materialinformationen. Um die Daten in numerischen Simulationen verwenden zu können, müssen die Flächenbeschreibungen zunächst diskretisiert werden. Für die Strukturmechaniksimulation wird das CAD-Modell daher in ein Finite-Element-Modell umgewandelt, das dann zum größten Teil aus drei- und viereckigen Schalenelementen besteht. Das Finite-Element-Modell wird in einem Vorverarbeitungsschritt aufbereitet und mit zusätzlichen Daten ergänzt, bevor es dem Simulationsprogramm als Eingabedaten übergeben wird. Nach der meist sehr zeitintensiven Simulation, die für Gesamtfahrzeugmodelle mehrere Tage in Anspruch nehmen kann, liegen als Ergebnis große Datenmengen vor. Diese können aufgrund ihres Umfangs und ihrer Komplexität nur mit ausgereiften Visualisierungswerkzeugen ausgewertet werden. Die Erkenntnisse aus der Simulationsanalyse fließen an den Konstrukteur zurück. So schließt sich der Zyklus, der den virtuellen Prototypen solange iterativ verbessert, bis alle Zielgrößen erreicht werden. Bereits Anfang der achtziger Jahre wurden Strukturanalysen mit Hilfe numerischer Simulation anhand einfacher Balkenmodelle durchgeführt. Die Modellkomplexität geht mit der Leistungssteigerung der Hardware und der Weiterentwicklung der Simulationssoftware einher: die Modellgröße hat sich seitdem alle drei Jahre mehr als verdoppelt. Der Notwendigkeit, dem Entwicklungsingenieur entsprechende Visualisierungswerkzeuge zur Verfügung zu stellen, wurde bisher von den Herstellern der Simulationssoftware mit eigenen Lösungen begegnet. Anfangs entstanden einfache Darstellungsanwendungen, die das Fahrzeug als Gittermodell zeichneten, ohne einen räumlichen Eindruck zu vermitteln; die Applikationen wurden weiterentwickelt, entsprechen jedoch heute in der Regel nicht mehr dem, was im Bereich der Softwareentwicklung und vor allem der Visualisierung Stand der Technik ist. Der Fortschritt durch wissenschaftliche Forschung in der Computergraphik und die Weiterentwicklung der Hardware, insbesondere der Graphiksubsysteme, lässt die Lücke zwischen dem, was in der Visualisierung möglich ist, und dem, was in kommerziellen Produkten zur Datenanalyse angeboten wird, immer größer klaffen. Zudem ist die Wissenschaft im Bereich der angewandten Informatik stets bemüht, Einsatzgebiete zu identifizieren, in denen neu entwickelte Methoden evaluiert und verbessert werden können. Eine enge Zusammenarbeit zwischen Ingenieuren und Wissenschaftlern erscheint daher als sehr vielversprechend und zwingend notwendig. Die vorliegende Arbeit ist im Rahmen einer engen Kooperation mit der Berechnungsabteilung der BMW-Gruppe entstanden. Sie hat zum Ziel, den bestehenden Fahrzeugentwicklungsprozess im Umfeld der Strukturmechaniksimulation zu analysieren und durch Adaption neuer Methoden der Computergraphik aus anderen Bereichen sowie durch Entwicklung neuer Visualisierungstechniken und Interaktionsmechanismen zu beschleunigen. Eine Evaluation der eingesetzten Konzepte soll anhand einer prototypischen Applikation vorgenommen werden. Bisher wurde in der Visualisierung im Bereich der Strukturmechaniksimulation auf Basis von vierseitigen Schalenelementen nur wenig geforscht. Für die Analyse von Crash-Simulationsergebnissen müssen große, zeitabhängige Datensätze effizient verarbeitet werden. Dabei soll die Netzstruktur des Finite-Element-Modells erhalten bleiben, ohne dass dabei auf hohe Interaktionsraten verzichtet werden muss. Eine schnelle Datenaufbereitung spielt dabei eine ebenso wichtige Rolle, wie die Navigation durch das virtuelle dreidimensionale Fahrzeugmodell mit Hilfe der an einem Standardarbeitsplatz vorhandenen Eingabegeräte. Die Weiterentwicklung der Simulationscodes hat es ermöglicht, Teilstrukturen mit Randbedingungen zu versehen, so dass nun Berechnungen an Teilmodellen vorgenommen werden können. In der Karosserieberechnung werden anstatt homogen vernetzter Gesamtmodelle seitdem unabhängig voneinander vernetzte Bauteile zu virtuellen Fahrzeugmodellen zusammengesetzt. Der Netzanschluss benachbarter Bauteile wird nun nicht mehr über das aufwändige Abgleichen und Nutzen gemeinsamer Randknoten hergestellt; stattdessen überlappen die Bauteilnetze in Flanschbereichen, wo sie durch neu entwickelte Verbindungselemente aneinander gebunden werden. Dies hat unter anderem den Vorteil, dass einzelne Bauteile durch Varianten ausgetauscht werden können, ohne dass die Umgebung neu vernetzt werden muss. Wichtige Entscheidungen müssen bereits in der frühen Phase eines Fahrzeugprojektes aufgrund der durch numerische Simulation gewonnenen Erkenntnisse getroffen werden. Das setzt voraus, dass die bis dahin verfügbaren Konstruktionsdaten in rechenbare Simulationsmodelle umgesetzt werden können. Durch die unabhängige Vernetzung einzelner Bauteile und den unterschiedlichen Konstruktionsstand der verschiedenen Fahrzeugkomponenten kommt es nach der Zusammenführung häufig zu Berührungen und Durchdringungen der Bauteilnetze im diskretisierten Finite-Element-Modell. Diese müssen zunächst detektiert und beseitigt werden, da sie ansonsten die Simulationsergebnisse verfälschen würden. Darüber hinaus müssen die Bauteilnetze miteinander durch Verbindungselemente verbunden werden. Da die Konstruktionsdaten in der frühen Phase jedoch keine vollständigen Verbindungsdaten beinhalten, muss der Berechnungsingenieur den Datensatz mit entsprechender Information aufbereiten. Die Vorverarbeitung von Eingabedaten für den Simulationsprozess nimmt angesichts steigender Variantenrechnungen und einer halbwegs automatisierten Standardauswertung der Simulationsergebnisse gegenüber der Nachbearbeitung einen immer höheren Stellenwert ein. Derartige Ergänzungen der Simulationsmodelle mussten bisher mit Hilfe eines Text-Editors direkt an den Eingabedateien vorgenommen werden. Netzfehler und fehlende Anbindungen zwischen Bauteilen konnten lediglich durch Anrechnen des Modells entdeckt werden. Dazu wurde der Simulationsprozess gestartet und nach einiger Zeit wieder abgebrochen. Durch die Analyse der bis dahin berechneten Zwischenergebnisse werden derartige Unzulänglichkeiten des Eingabemodells sichtbar. Vorweggenommene Konsistenzprüfungen machen zeitaufwändige Anrechnungen überflüssig. Weiteres Prozessoptimierungspotenzial liegt in der Integration und Angleichung verschiedener Werkzeuge. Eine enge Kopplung des Simulationsprozesses an die Vor- und Nachbearbeitung der Daten durch ein und dieselbe Applikation, die sowohl Ein- als auch Ausgabedaten verarbeiten kann, schafft die Grundlage für eine schnelle Iteration im Optimierungsprozess und trägt zur angestrebten Reduzierung der vom Ingenieur zu bedienenden Vielzahl von Applikationen bei. In Zeiten fortschreitender Globalisierung und Fusionierung, aber auch durch zunehmendes Outsourcing der Teilmodellerstellung an darauf spezialisierte Dienstleistungsunternehmen steigt der Kommunikationsbedarf über räumliche Grenzen hinweg zusammenarbeitender Entwicklungsteams. Kostenintensive Besprechungen, zu denen sich alle Beteiligten an einem Ort zusammenfinden müssen, können nur durch Verbesserung der bereits vorhandenen Fernkommunikationsinfrastruktur reduziert werden. Da auf die gemeinsame Betrachtung der Modelldaten als Diskussionsgrundlage bei Besprechungen nicht verzichtet werden kann, bietet sich eine netzwerkbasierte Kopplung entfernter Arbeitsplätze an, um kleinere Besprechungstermine durch Telefonate mit zeitgleicher kooperativer Visualisierungssitzung am Arbeitsplatzrechner ersetzen zu können. Ein weiterer Aspekt befasst sich mit der Absicherung der Zuverlässigkeit von Simulationsergebnissen. Um eine Aussage darüber machen zu können, welche Modifikation der Fahrzeugstruktur das simulierte Verhalten positiv beeinflusst hat, müssen zunächst alle Einflussfaktoren, die auf die Simulation wirken, analysiert werden. Dies geschieht in Stabilitätsanalysen, in denen anhand gleicher Eingabedaten die Streuung der Simulationsergebnisse gemessen und die Ursache dafür erforscht wird. Durch konstruktive Maßnahmen soll in Ursprungsbereichen maximaler Streuung das Modell dahingehend modifiziert werden, dass gleiche Eingabedaten zu annähernd gleichen Simulationsresultaten führen. Ziel dieser Arbeit ist, das Pre- und Postprocessing von Strukturmechaniksimulation im Fahrzeugentwicklungsprozess bezüglich neuer Funktionalität und Leistungsfähigkeit durch die Einbeziehung neuer Graphiktechnologien sowie durch die Entwicklung neuer Visualisierungsalgorithmen signifikant voranzubringen. B) Beiträge dieser Arbeit Da die Arbeit in enger Zusammenarbeit mit der Karosserieberechnungsabteilung der BMW-Gruppe entstand und die Forschungsergebnisse direkt von den Ingenieuren an alltäglichen Problemstellungen eingesetzt werden sollten, mussten zunächst Voraussetzungen für eine erhöhte Akzeptanz bei den Anwendern geschaffen werden. Dazu gehören vor allem kurze Ladezeiten der Daten, eine intuitiv zu bedienende Benutzerschnittstelle sowie komfortable Funktionalität, die es ermöglicht, die Aufgaben schneller zu lösen als mit anderen Applikationen. Die Analyse der zu verarbeitenden zeitabhängigen Simulationsdaten und der zum Einlesen zur Verfügung gestellten Bibliothek führte zu einer geeigneten internen Datenstruktur, die eine effiziente Datenaufbereitung erlaubt und damit zu geringeren Start-up-Zeiten führt als bei vielen kommerziell verfügbaren Visualisierungswerkzeugen. Ferner resultiert aus der Evaluation verschiedener Szenengraphbibliotheken unter Berücksichtigung der Rechnerplattform im Anwenderumfeld die Entscheidung zu Cosmo3D / OpenGL Optimizer. Durch die Datenstrukturen und Funktionalitäten der Bibliothek bleibt der Ressourcenbedarf im Zusammenspiel mit einem optimierten Szenengraph-Design im Rahmen dessen, was auf einem Standard-Arbeitsplatzrechner zur Verfügung steht. Zur Beschleunigung der Bildsynthese werden bereits bekannte Verfahren zur Optimierung polygonaler Modelle für die Weiterverarbeitung in der OpenGL Pipeline mit adaptierten Algorithmen verglichen, die unter Berücksichtigung der zugrunde liegenden Daten Quadrilateralstreifen maximaler Länge bilden. Zusätzlich wird der Einsatz verschiedener Detailstufen im CAE-Umfeld untersucht und eine Lösung zur deutlichen Steigerung der Bildwiederholrate während der Navigation durch das Finite-Element-Modell präsentiert. Durch die Entwicklung und Evaluation Textur-basierter Visualisierungsverfahren werden deren Vorzüge anhand verschiedener Beispiele aus dem Berechnungsumfeld verdeutlicht. Daraus lässt sich die Notwendigkeit ableiten, Standard-Arbeitsplatzrechner in Zukunft mit entsprechender Graphik-Hardware auszustatten, um von den Möglichkeiten moderner Visualisierungsalgorithmen profitieren zu können. Im Rahmen der vorliegenden Arbeit wurde die Möglichkeit geschaffen, nach dem interaktiven Zusammenführen der Modellkomponenten aus verschiedenen Datenquellen auftretende Netzfehler zu visualisieren und selektiv zu beheben. Dazu kommen auf hierarchischen Datenstrukturen basierende Algorithmen zum Einsatz. Verbunden mit Methoden zur Darstellung und interaktiven Modifikation von Verbindungselementen sowie der Detektion fehlerhafter Schweißpunktdaten wird die Grundlage geschaffen, um Finite-Element-Modelle für die Crash-Simulation effizient aufzubereiten und die Modellerstellung für Variantenrechnungen stark zu vereinfachen. Speziell auf die Bedürfnisse der Berechnungsingenieure zugeschnittene Interaktions- und Navigationsmechanismen sowie frei bewegliche Clip-Objekte erleichtern den Umgang mit den Modelldaten. Durch die Entwicklung dreidimensionaler Selektionsobjekte und eine effiziente Schnittkraftberechnung steht die Kraftflussvisualisierung mit Hilfe dynamischer Kraftflussröhren nun auch als interaktives Analysewerkzeug im Postprocessing zur Verfügung. Die Berechnung der notwendigen Größen im Batch-Betrieb und die anschließende Zwischenspeicherung in einem eigenen Dateiformat ermöglicht die Standardauswertung von festgelegten Kraftflussverläufen im Anschluss an die Simulation. Dies trägt weiterhin zur Beschleunigung und Automatisierung der Nachverarbeitung bei. Mit der Entwicklung eines Bild- beziehungsweise Filmgenerators konnte mit Ergebnissen dieser Arbeit zur Entwicklung eines Integrationswerkzeuges für die Ablaufsteuerung und das Datenmanagement in der Karosserieberechnung beigetragen werden. Es werden zwei Lösungen für Szenarien einer kooperativen Sitzung mit mehreren Rechnern präsentiert. Die Ergebnisse zeigen auf, wie zeitaufwändige Treffen zwischen Ingenieuren durch Telefonate mit gleichzeitiger kooperativer Visualisierungssitzung ersetzt werden können. Das vorgestellte Verfahren zur Stabilitätsanalyse von Simulationsprozessen hilft, Ursprünge von Instabilitäten aufzudecken und die Aussagekraft der Simulationsergebnisse verbesserter Modelle zu erhöhen. Durch diese Arbeit ist eine prototypische Visualisierungsplattform für die Vor- und Nachbereitung von Strukturmechanikdaten namens crashViewer entstanden. Das objektorientierte Softwaredesign des Prototypen erlaubt die Integration weiterer Datenformate sowie die Implementierung neuer Algorithmen zu deren Evaluation im produktiven Einsatz in der Karosserieberechnung, aber auch in anderen CAE-Bereichen. C) Gliederung der Arbeit Im Folgenden wird ein Überblick über den Aufbau dieser Arbeit gegeben, woraus der Zusammenhang der Kapitel untereinander hervorgeht. Kapitel 2 motiviert die Entwicklung einer in die Simulation integrierten Vor- und Nachverarbeitungsapplikation. Zu Beginn führt das Kapitel in das breite Feld der digitalen Fahrzeugentwicklung ein. Das Umfeld der Crash-Simulation wird detaillierter betrachtet, wodurch ein Fundament für ein besseres Verständnis der darauffolgenden Kapitel geschaffen wird. Kapitel 3 gibt einen Überblick zu den Grundlagen der interaktiven Computergraphik und der Visualisierung. Darüber hinaus werden die der Crash-Simulation zugrunde liegenden Daten beschrieben, indem zunächst die Strukturen, aus denen sich ein Gesamtfahrzeugmodell im Allgemeinen zusammensetzt, erläutert werden und anschließend auf die Datenformate der Simulationseingaben beziehungsweise der Simulationsergebnisse eingegangen wird, um die breite Spanne der zu verarbeitenden Daten zu beleuchten. Kapitel 4 präsentiert ein effizientes Szenengraph-Design für zeitabhängige Finite-Element-Modelle mit invarianter Topologie. Dazu werden die notwendigen Grundlagen der verwendeten Graphikbibliotheken vermittelt und Erweiterungsmöglichkeiten diskutiert. Kapitel 5 erläutert die Architektur des im Rahmen dieser Arbeit entstandenen Prototypen und gibt einen Überblick über entwickelte Interaktionsmechanismen zur effizienten Datenanalyse. Kapitel 6 diskutiert verschiedene Verfahren zur Darstellungsbeschleunigung. Während sich die Quadrilateralstreifengenerierung und die Simplifizierung mit der Optimierung der modellierten Geometrie für eine effiziente Verarbeitung in der Graphik-Hardware auseinandersetzt, zeigt der letzte Teil dieses Kapitels, wie durch den Einsatz von Texturen zusätzliche Geometrieverarbeitung überflüssig wird. Kapitel 7 stellt spezielle Funktionalitäten für die Vorverarbeitung von Eingabemodellen vor. Außer der in verschiedenen Bereichen eingesetzten Distanzvisualisierung wird das interaktive Modifizieren von Schweißpunktdaten und die Parameterübertragung zwischen inkompatiblen Gittern erläutert. Kapitel 8 veranschaulicht Konzepte für die Nachverarbeitung von Simulationsergebnissen. Es werden Techniken zur Visualisierung skalarer und vektorieller Größen präsentiert. Darüber hinaus werden die interaktive Kraftflussvisualisierung und die Darstellung von Instabilitäten in Simulationsergebnissen betrachtet. Die CORBA-basierte Erweiterung zum gemeinschaftlichen Arbeiten räumlich getrennter Anwender, sowie die Batch-basierte Bild- und Film-Generierung von Strukturmechanikdaten schließen die Vorstellung der im Rahmen dieser Arbeit neu entwickelten Methoden ab. Kapitel 9 stellt die Ergebnisse dieser Arbeit in einen Kontext. An Beispielen aus dem produktiven Entwicklungsprozess werden die erzielten Fortschritte verdeutlicht und die Akzeptanz bei den Anwendern kritisch beleuchtet. Abschließend wird ein Überblick über weiterführende Arbeiten gegeben, die auf den vorliegenden Ergebnissen basieren.
This thesis presents visualization techniques and interaction concepts that have been developed for the pre- and post-processing of structural mechanics. This work was done in cooperation with the crash simulation department of the BMW Group. The automotive industry's main goal is ensuring its share of a global market, which is becoming ever more competitive and dynamic. On the one hand, product quality has to be increased in relation to fuel consumption, weight, and passive safety. On the other hand the development process needs to be streamlined in order to reduce development costs and time to market. These objectives are hoped to be achieved by making extensive use of virtual prototyping. The vehicle development process has completely changed during the past two decades. In the early eighties finite element analysis found its way into the simulation of structural mechanics in the German automotive industry. Initially developed for military purposes, in 1983 a group of engineers of several automotive companies started feasibility studies based on finite element models containing less than 5,000 beam elements. Seven years later productive results of finite element analysis in structural mechanics started to influence car body development. In the second half of the nineties important project decisions were made during the early phase of the development process based on a deeper insight into crash behavior provided by crash-worthiness simulation results. Today, numerical simulation is an indispensable part of the computer aided product development chain in the automotive industry. After the design of a new car model is completed, a digital model is constructed by means of computer aided design (CAD). In a meshing step the created parametric surfaces defined by spline curves are discretized. The results describe the geometry of the car body by finite elements, for crash simulation mainly three- or four-sided shells but also beams and volumetric elements. The finite element model is completed, for example, with material properties, contact information, and boundary conditions. This is done in a preprocessing step. Once the simulation input data is available, the whole model is handed over to the simulation process which takes about one or two days using massive parallel processing. The deformation is recorded in a large result file. Commonly, the first 120 milliseconds of a crash are simulated and each two-thousandth time step is stored. A time step of less than one microsecond leads to a result file containing more than sixty snapshots. Typically, physical data such as acceleration, velocity, displacement, and forces per nodes or thickness, stress, strain, and other energies per element are recorded. During post-processing the information is analyzed in order to evaluate crash-worthiness. The feedback provided for the construction department closes the loop when all goals set for the car body structure have been attained. The virtual car body development in the pre- and post-processing of crash simulation divides into two main phases: (1) In the concept phase, new ideas are discussed and evaluated in order to reach a priority objective like minimizing car body weight. Only few people per car project are involved for a period of 12 to 18 months in this first stage. (2) After the basic decisions have been made regarding new concepts, a second phase follows which compromises all other fields to refine those concepts with respect to other objectives coming from the area of stability, dynamic or NVH. This phase requires many engineers from different departments for a period of more than 30 months to optimize the product. The later undesirable properties are revealed the higher the cost will be for the then necessary changes. Until the late nineties transitions between adjacent car body parts were modeled as two finite element meshes that share common nodes at the border. Each time a car body part was replaced by an optimized variant in order to enhance the crash behavior either the whole car model had to be re-meshed or border nodes had to be adapted manually. Therefore, preparing such variant models was a very time consuming task. After simulation codes like PAM-CRASH were able to simulate car body connections like for example spotwelds, finite element models became more like their counterparts made of steel. Now, a flange is constructed, along which adjacent car body parts can be connected without sharing common nodes. This allows for an independent meshing of car body parts and therefore for more variant computations. However, independent meshing lead to mesh penetration or even perforation in flange areas when inhomogeneous meshes are assembled. Thus, a new task arose for preprocessing where those mesh errors have to be removed in order to avoid error-prone simulation results. On the post-processing side, large time-dependent data sets require dedicated visualization methods that help the engineers to interpret the huge amount of data at interactive frame rates. Therefore, finite element meshes need to be prepared for an optimized processing in the graphics pipeline. Typical types of data that have to be visualized are scalar values, vectors, tensors or any combination thereof. In 1997, when most of the commercial visualization tools provided by solver companies as add-on to the simulation software could no longer provide state-of-the-art graphics, a demand arose for new visualization techniques available for productive use. Besides, the growing throughput caused by an increasing number of car body variants and the acceleration of computation hardware allowing more optimization cycles, made it necessary to automate as much processing steps as possible. The growing outsourcing of development tasks to suppliers and the number of merges in the automotive industry, which entail cooperation of corresponding departments at different sites, require a client-server-solution for cooperative work. Finally, the simulation community is concerned about the validity of their results compared to real crash-tests. It is important to detect and minimize the sources of scattering in the results originated by the simulation model or process. This is also a precondition for stochastic simulation, which is used in order to optimize the crash behavior by varying input parameters. The goal of this thesis is to provide solutions to some of the issues just stated. First of all, the applicability of different scene graph APIs is evaluated for large time-dependent data sets. APIs such as Performer or Cosmo3D / OpenGL Optimizer have been developed to take advantage of multiprocessing. Those APIs can perform model optimization during scene graph creation and benefit from multiprocessing using frustum culling and occlusion culling while traversing the scene graph to increase frame and interaction rates. Because of the large time-dependent databases and the limited memory of the workstations an efficient scene graph design is very important in order to handle the complex data interdependencies and to achieve high rendering speed. While five years ago the models consisted of about 250,000 finite elements with nearly the same number of nodes, today the size of the models has almost quadrupled. Since the element topology does not change in crash simulation, the connectivity of the finite elements needs to be stored just once. An index set representing the topology is shared across the sub-graphs of all time steps. A Gouraud shaded surface requires to do the edge detection on the state where geometry is deformed most, which is in general the last one. In order to minimize memory consumption, the index set is used for both coordinates and normals. Therefore, coordinates at vertices with multiple normals need to be added once per normal. Other scene graph nodes, e.g. the one specifying the appearance, can also be shared. Handling triangular elements as degenerate quadrilaterals allows to represent a mesh of three- and four-sided shell elements in one scene graph node. The prototype application named crashViewer, which was implemented to evaluate the methods developed in this thesis, uses Cosmo3D / OpenGL Optimizer for historical reasons: this bundle had been presented as predecessor of the 1997 announced Fahrenheit project, which was aborted two years later. Nevertheless, the proposed scene graph design allows to visualize 60 time steps of a model containing half a million elements and the same number of nodes with a memory consumption of 360 MB (flat-shaded) or 970 MB (Gouraud-shaded), provided that a crease angle of 20 degree leads to 40% more normals than vertices. One basic requirement for an interactive visualization application is that the frame rate does not fall below an acceptable minimum threshold. What "acceptable" means depends on data and experience with other tools. Generally speaking, visualization data should be rendered as fast as possible. For this reason, one aim of this work is to point out methods to optimize the finite element meshes' rendering acceleration. Two approaches are examined: (1) concatenation of adjacent elements to reduce data redundancy during geometry processing and (2) mesh simplification to remove information that does not significantly influence the shape of a car body part. Although OpenGL Optimizer provides a tri-stripper (opTriStripper) that is able to convert any polygonal mesh into strips of triangles, it is not applicable in this field because the original mesh structure should still be visible in wireframe mode. Hence, a quadrilateral stripper was developed, which analyses the mesh structure and generates many parallel bands of maximum length. As a matter of fact, quad-strips are not as versatile as tri-strips because each turn costs two extra vertices. However, compared to opTriStripper's reduction to 63.5% the proposed bandification algorithm reduces the number of referenced vertices to 54% of an unstripped representation averaged over 3,274 car body parts. Depending on the availability of vertex arrays the bandification leads to a rendering speed-up factor of about 4.5 without and 1.7 with vertex arrays in comparison to the unstripped geometry. In order to achieve even higher frame rates during camera interaction, a two-stage level-of-detail concept is developed. In addition to a fine level displaying the original mesh resolution, which is essential for the visualization in pre- and post-processing of structural mechanics simulation, a second level with coarse triangles is used as intermediate model for camera movement. Each time the user modifies the view, a previously simplified mesh is rendered until the camera parameters are no longer changed. Then the finer level of detail is displayed. An simplification algorithm was implemented which uses the one-sided Hausdorff distance as an error measure and which is compared to the Successive Relaxation Algorithm provided by OpenGL Optimizer as opSRASimplify. Aside from the interface opSRASimplify, which turns out to be unsuitable for getting an optimal decimated mesh with respect to a predetermined error tolerance, the resulting mesh quality is not as high as with the new HECSimplify simplifier. Breaking the error criterion can be avoided by defining an appropriate cost function for opSRASimplify, which causes less triangles to be removed compared to HECSimplify. If the decimation target is specified to achieve the same level of reduction, then the resulting triangle mesh contains gaps and the model appears distorted. Different car body models are reduced to 9-18% of the original number of triangles applying HECSimplify. This leads to a rendering speed-up factor of between 3.4 and 6.7. There is a trade-off between rendering speed and memory consumption. HECSimplify only applies half-edge collapses to the polygonal mesh. These operations just modify the topology, not the vertex coordinates. Therefore, the original and the reduced mesh are able to refer to the same set of coordinates. On the one hand, coordinate set sharing requires less memory, on the other hand the speed-up factor of a model that could be reduced to 9% of the original triangles is far away from 11. Both modules, the quad-stripper and the simplifier, are embedded into the Cosmo3D / OpenGL Optimizer framework by providing corresponding action objects and new scene graph nodes. Furthermore, the scene graph API was extended by several other new objects to overcome the restrictions with line picking or to provide new functionality. For example, the csClipGroup node enables the user to control a freely movable clip-plane, which affects only the underlying scene graph. This provides better insight into heavily deformed car body structures. Another form of clipping that is developed within this thesis uses one-dimensional RGBA texture maps in order to hide geometry that should not be displayed under certain conditions. This visualization method can be used, for example, to mask out those model regions that do not correspond to a given critical value range. In combination with distance values to adjacent car body parts the rendering can be restricted to potential flange regions of the model. For that purpose, first of all the parameter has to be transformed into a texture coordinate with respect to the specified parameter range. Then, a color scale is defined as a texture map. Using the GL_DECAL environment the color coding can be limited to regions of certain value ranges. Using the same mechanism in the GL_MODULATE environment with the alpha-test enabled allows for clipping the geometry where the corresponding values map into texture regions with an alpha component set to be fully transparent. This technique facilitates the accentuation of critical structures, because the user is able to interactively modify the texture map or the texture lookup table, if an index texture is used to control the visualization. As stated above, the most important change in finite element modeling for crash simulation was the introduction of independently meshed car body parts. Since the assembly of such inhomogeneous meshes may include perforations or penetrations, for example, caused by a shifted discretization along curved flanges, there was a growing demand for an interactive method to detect and remove this kind of mesh errors. Perforating regions can be detected by applying collision detection to the finite element model. Efficient collision detection as proposed by Gottschalk et al. requires hierarchical sub-structuring of the car body model. Consequently, in this study, each car body part is subdivided by a bounding volume tree (BVT). Different bounding volume types are tested: spheres, axis-aligned (AABB), and object-oriented bounding boxes (OBB). For perforation detection, where computation-intensive element-element-intersection tests are necessary at the lowest BVT level, OBBs turn out to be most efficient because they are very tight positioned around the element structure. Hence, downward traversals in the BVT can be terminated early because any one of 15 separating axes that defines a plane disjoining both volumes can be found. In order to detect penetrating nodes the minimum node-element-distances need to be computed. The BVT traversal algorithm is adapted appropriately. Children of a BVT node are visited only if their distance falls below a specified maximum distance of interest. Penetrating node-element-pairs are collected in a list for subsequent visualization. Using an interface to the original PAM-CRASH algorithm for penetration removal it is possible to provide the desired interactive mechanism that allows the engineers even to restrict mesh modification to selected car body parts. This is a big advantage over starting the simulation until initial forces move penetrating nodes apart from penetrated elements and restoring the computed mesh modification in the input data deck. First, the interactive method gives direct feedback and the engineers do not have to switch tools. Second, during the optimization of the car body structure by replacing single car body parts by variants this procedure enables the engineers to keep everything but the variant part fixed. Thus, only the nodes of the incoming part are aligned to its neighborhood and the confined modification makes it easier to compare the results of two simulations runs. What is more, the bounding volume hierarchy provides beneficial effects on many other tasks in pre- and post-processing of crash-worthiness simulation. It can be used to detect and follow flanges automatically or to spot flange regions that have only been inadequately connected. A basic task is the verification of connecting elements. For example, a spotweld must not exceed a maximum distance to those parts it should connect. Otherwise, a pending spotweld may suspend the simulation run delaying the development process and raising costs. In this study, several criteria for the validation of connecting elements are elaborated. Erroneous spotweld elements are emphasized by different colors and/or geometry. The engineers are successively guided to each problematic connection. Without this feature it would not be possible to find these model errors in such a short time. Furthermore, a method is developed that enables the computation engineers to effectively add missing connection information by means of spotwelds to the input model. Thus, it becomes even practicable to start with crash-worthiness simulations before detailed connection data is available from CAD data. One aim in virtual vehicle development is to combine the results of several areas in numerical simulation. In order to map the real development chain closely onto the virtual one, material properties influencing preliminary steps like forming have to be considered. For example, a deep-drawn blank sheet has a lower thickness in areas of high curvature than in other areas. As long as the material of a car body in crash simulation is assumed to be constant the before mentioned manufacturing influences cannot be properly represented. A hardware-based method is developed in this thesis for the efficient mapping of any type of data between incompatible meshes that are geometrically congruent. It utilizes the transformation and interpolation capability of the graphics subsystem. Element identifiers of one mesh are color-coded. For each element of the other mesh the view matrix is set up appropriately and the visible part of the first mesh is rendered. The colors that represent the element IDs can be read back into main memory. After the correlation between elements is finished in graphics hardware, the values are finally transfered in software. The post-processing of crash-worthiness simulation results necessitates the handling of large data sets. Since a binary result file may contain 2 GB of data but an engineer's workstation often is limited to 1 GB of main memory these boundary conditions need to be considered while designing data structures and algorithms of visualization software for this application area. On the other hand, interactivity and high rendering performance is a precondition to obtain acceptance by the user. The required tool should provide interaction mechanisms that assist the user in exploring and navigating through the data. Mainly, it should help to interpret the data by making the invisible visible. Besides an effective scene graph design, in this study, the internal data structures of the developed prototype application have been implemented with memory consumption in mind. Parameter transfer in post-processing is done state by state very fast by pointer-based data structures. The extensive use of texture mapping enhances the rendering performance. Visualization techniques are proposed that use textures for the direct mapping of scalar values onto the car body geometry, for the animated display of vector data, and for the visual discretization of the finite element mesh in the form of a wireframe texture map. All these approaches spare the transformation stage of the graphics pipeline additional processing of vertex-based data. For example, the traditional display method for shaded geometry with visible element borders is two-pass rendering, which halves the frame rate. The application of a black-bordered luminance texture, which is white inside, onto each geometric primitive balances the load between geometry and texture unit. Also, the encoding of a vector's direction by applying an animated texture onto a line reduces geometry load and leaves the underlying structure mostly visible in contrast to conventional vector visualization with arrows. Force flux visualization, first presented by Kuschfeldt et al. gives an overview over which components of the car body model absorb or transfer forces. It is necessary to detect and to understand the force progression within the car body structure. For example, the longitudinal structures within the front part of a car body play an important role for increasing the ability of the body to absorb forces in a frontal crash. Force flux visualization enables the engineers to design car components with an optimal crash behavior. This technique was made available for interactive daily use in crash simulation analysis. Providing a dedicated interaction mechanism, the prototype application allows to interactively define a trace-line along which the force flux can be visualized. For each section plane positioned in small intervals perpendicular along the trace-line the simulated node forces are accumulated. The resampling is accelerated by utilization of the bounding volume hierarchy. Each section force sum is then represented by color and radius of one ring of a tube around the trace-line. The dynamic trace-line definition aligns the force tube to the deforming structure of the analyzed car body part, for example, a longitudinal mounting. The specified trace-lines can be stored in order to precompute force tubes off line. This can be done by another prototype application in batch processing after simulation has finished. During a visualization session the precomputed values can be directly converted into time dependent force tube representations. The decoupling of time consuming computation and the interactive visualization further accelerates the analysis of crash-worthiness simulation. Starting multiple simulation runs with the same input data deck will produce different results. The scattering in results has to be minimized in order to be able to evaluate the influence of structure modifications. This work presents a method to detect and visualize instabilities of the simulation. The above stated texture-based visualization points out sources of instability and helps the engineers to determine if a branching is caused by the model structure or if it was originated by the solver. The pros and cons of different measurement functions are discussed. Furthermore, a CORBA-based synchronization of multiple viewers displaying different data sets is presented. This allows to analyze the simulation results of one run in direct comparison to those of other runs. It is very useful to view the differences in crash behavior of multiple car body models on one workstation. Moreover, this functionality can be used in combination with a telephone call to supersede a meeting between a computation engineer and his external supplier. The visualization is done locally on each client. Providing that data and software is available at each participating client, the only data that have to be transferred during a cooperative session are the events triggered at the steering master-client and propagated to one or more slave-clients. A master token decides which participant is able to send generated events to the other instances. This mechanism avoids conflicting camera control when multiple users try to modify their view at the same time. Another approach describes how an image-based client-server model can be used in this context. After a frame has been rendered on the server, it is encoded to reduce the amount of data. The encoded image stream is transferred to any client that is able to decode and display. There are less requirements for the client but the connection needs to provide a certain bandwidth. This scenario can also be used for remote visualization. The prototype crashViewer can be connected to a Java applet running inside a web-browser. Finally, a method for standardized analysis of crash-worthiness simulation is presented. A batch-processing prototype application has been developed to generate digital movies using a predetermined camera path. The contributions of this thesis aim at further acceleration of the virtual vehicle development process, for example, by introducing new interaction mechanisms, making extensive use of hierarchical data structures, using hardware-accelerated visualization techniques, and providing solutions for process automation.
Enthalten in den Sammlungen:05 Fakultät Informatik, Elektrotechnik und Informationstechnik

Dateien zu dieser Ressource:
Datei Beschreibung GrößeFormat 
O_Sommer.pdf6,32 MBAdobe PDFÖffnen/Anzeigen


Alle Ressourcen in diesem Repositorium sind urheberrechtlich geschützt.