Hauser, Jochem

Publications related to GridPro:

  • Javagrid: An Innovative Software For HPCC A Paper For ECCOMAS Computational Fluid Dynamics Conference, Swansea 2001

    Hauser J., Ludewig T., Gollnick T., Williams R.D.

    Published in 2001

    In this paper we describe the JavaGrid concept that underlies the software developed for high performance computing and communication in science and engineering. JavaGrid provides a package for parallelization based on Java threads, a geometry package for handling 2D and 3D structured as well as unstructured grids, a generic solver and a solver template to model a system of integral conservation laws. JavaGrid provides both client and server software and allows to send a specific solver at run time from the client to the server, overriding the server's default solver.

    For instance, this might be a computational fluid dynamics solver, while the client wishes to execute an electrodynamics solver. However, both solvers could be based on the template solver provided. Setting up a new solver is a straightforward process, since only the the physics equations have to be implemented for a single subdomain. Geometry handling, parallelization (i.e. updating the boundary of neighboring subdomains) and communication is handled by JavaGrid. It is also possible to incorporate so called legacy solvers, written in other languages. A Virtual Visualization toolkit for remote visualization is also provided. The paper describes the current status of the JavaGrid project and presents performance figures.

    Keywords: Java HPC, client-server computation, OOP, Internet-based computing, Internet-based data access, diverse scientific and egineering disciplines, collaborative engineering, portable HPC and geometry framework, legacy code integration, architecture independence, HPC without libraries, complex 3D geometries, just in time solver, remote visualization and X3D.

    Download PDF
  • A General Grid Generation Strategy for Complex Aerospace Geometries

    Hauser J., Muylaert J., Spel M., Walpot L., Xia Y.

    Published in 1999

    In this paper we present a strategy for grid generation for complex geomentries based on the multiblock approach. On the block level the grid is completely unstructured and may be represented by a graph. Within a block a structured grid is generated to retain both the computantional efficiency and accuracy of the finite volume approach. In order to handle extreme degrees of geometrical complexity, an object-oriented topology generation approach has been devised implemented by the Topology Input Language (TIL) to manage these objects. To this end, the configuration to be gridded is subdivided into objects (like wing, fuselage, nacelle, pylon, engine etc. for an aircraft configuration) for which individual topologies are designed. These topologies are considered to be local topologies, since they represent only a part of the solution domain. The important feature is that objects can have internal topologies that have a rich structure that is not visible from the outside. The final grid topology is constructed by combining the topologies of all objects, using their visible topology only. Thus the level of complexity can be substantially reduced. Since there is a strict separation between topology and geomentry, a topology database can be built that is fully reusable. The strategy is demonstrated for a generic X-33 configuration with the linear aerospike engine and an annular aerospike propulsion system, modeling numerious design details to demonstrate the capability of the software to model most complex geometries with relative small input from the user.

    Keywords: mesh strategy, structured multiblock grid, complex geometry

    Download PDF
  • A Pure Java Parallel Flow Solver

    Hauser J., Ludewig T., Williams R.D., Muylaert J., Spel M.

    Published in 1999

    In this paper an overview is given of the "Have Java" project to attain a pure Java parallel Navier-Stokes flow solver (JParNSS) based on the thread concept and remote method invocation (RMI). The goal of this project is to produce an industrial flow solver running on an arbitrary sequential or parallel architecture, utilizing Internet, capable of handling the most complex 3D geometries as well as flow physics, and also linking to codes in other areas such as aeroelasticity etc.

    Since Java is completely object oriented the code has been written in an object-oriented programming (OOP) style. The code also includes a graphics user interface (GUI) as well as interactive steering package for the parallel architecture. The Java OOP approach provides profoundly improved software productivity, robustness, and security as well as reusability and maintainability. OOP allows code construction similar to the aerodynamic design process because objects can be software coded and integrated, reflecting actual design procedures. In addition, Java is the programming language of the Internet and thus Java objects on disparate machines or even separate networks can be connected.

    We explain the motivation for the design of JParNSS along with its capabilities that set it apart from other solvers. In the first two sections we present a discussion of the Java language as the programming tool for aerospace applications. In section three the objectives of the Have Java project are presented. In the next section the layer structures of JParNSS are discussed with emphasis on the parallelization and client-server (RMI) layers. JParNSS, like its predecessor ParNSS (ANCI-C), is based on the multiblock idea, and allows for arbitrary comlex topologies. Grids are accepted in GridPro or Plot3D format. Using GridPro property settings, grids of any size or block number can be directly read by JParNSS without any further modifications, requiring no additional preparation time for the solver input. In the last section, computational results are presented, with emphasis on multiprocessor Pentium and Sun parallel systems run by the Solaris operating system (OS).

    Download PDF
  • Strategies for Parallel and Numerical Scalability of CFD Codes

    Winkelmann R., Hauser J., Williams R.D.

    Published in 1998

    In this article we discuss a strategy for speeding up the solution of the Navier-Stokes equations on highly complex solution domains such as complete aircraft, spacecraft, or turbomachinery equipment. We have used a finite-volume code for the (non-turbulent) Navier-Stokes equations as a testbed for implementation of linked numerical and parallel processing techniques. Speedup is achieved by the Tangled Web of advanced grid topology generation, adaptive coupling, and sophisticated parallel computing techniques.

    An optimized grid topology is used to generate an optimized grid: on the block level such a grid is unstructured whereas within a block a structured mesh is constructed, thus retaining the geometrical exibility of the nite element method while maintaining the numerical efficiency of the nite di erence technique. To achieve a steady state solution, we use grid-sequencing: proceeding from coarse to finer grids, where the scheme is explicit in time. Adaptive coupling is derived from the observation that numerical schemes have differing efficiency during the solution process. Coupling strength between grid points is increased by using an implicit scheme at the sub-block level, then at the block level, ultimately fully implicit across the whole computational domain. Other techniques include switching numerical schemes and the physics model during the solution, and dynamic deactivation of blocks. Because the computational work per block is very variable with adaptive coupling, especially for very complex ows, we have implemented parallel dynamic load-balancing to dynamically transfer blocks between processors. Several 2D and 3D examples illustrate the functioning of the Tangled Web approach on different parallel architectures.

    Download PDF
  • Structured Surface Definition and Grid Generation for Complex Aerospace Configurations

    Hauser J., Xia Y., Muylaert J., Spel M.

    Published in 1997

    In the last decade Computational Fluid Dynamics has been extended to many different industrial areas. Numerical methods, parallel computation and visualization techniques for solving complex physics have been further developed in aerospace, automotive industry and hydraulic machinery. In order to increase efficiency and accuracy of a simulation, grid generation methods for complex geometries have become an important issue in CFD.

    The difficulty in producing high quality meshes in 3D within a short time has several reasons. First, producing a surface description is generally a time-consuming preprocess. Recently, for a reduction of this preprocessing time we focused on the direct CAD data conversion to an acceptable surface description for grid generation, such as multipatch surfaces.

    In the second stage, the multiblock topology has to be defined, and both surface and volume grids have to be generated. This used to be a highly time consuming task for complex geometries, employing so called interactive grid generators, demanding tens of thousands of mouse clicks. The novel technique presented in this paper is based on object-oriented grid design, using a C-based grid generation language called TIL (Topology Input Language). In a TIL code a complete aircraft comprising fuselage, wings, engines, pylons, nacelles, leading edge or trailing edge flaps, rudder etc. would be constructed from these basic objects, making use of a topology database. Th enumber, size or shape of these objects can be varied according to user requirements.

    A modification or a direct generation of a wireframe grid topology is performed by interactively generating the necessary TIL code, using the so called automatic zoning manager.

    Download PDF
  • A Tangled Web Strategy for Numerical and Parallel Scalability in Aerospace Simulation

    Hauser J., Williams R.D., Winkelmann R.

    Published in 1997

    Parallel computing has become a key component of high performance computing in the 90’s. In order to exploit this technology in science and engineering, in particular for aerospace, automotive, and turbomachinery applications as well as in environmental simulation, highly complex geometries have to be dealt with, often generated by CAD systems. In order to bring CFD in the design loop, quick turnaround times are mandatory.

    Grids are multiblock hexahedra allowing any kind of topology and comprise any number of blocks. Grid generation is completely non-interactive. Only a wireframe and the geometry description are provided. Surface and volume grids are generated together. Grids are slope continuous. Grids are constructed using a high-level grid generation language. Grids consist of objects that are reusable. A problem/user specific grid database may be constructed that allows to use more complex entities from which to generate new grids. Complex grids are built in an object oriented fashion.

    Download PDF
  • Automatic Zoning in Numerical Grid Generation and Visualization for Highly Complex Geometries. Introduction and Tutorial

    Hauser J., Xia Y.

    Published in 1996

    The next major step forward in automatic blocking is to provide a tool that by taking graphical input automatically produces the TIL code. AZ-manager that is now described, is such an interactive topology generator. In this context, topology definition means constructing a wireframe model by placing wireframe points, linking these points, and assigning them to fixed surfaces. Once the topology dfinition has been done, all grids are produced automatically starting GridPro from within AZ-managerand visualizing the grid while it is being computing. AZ-manager has miniCAD capabilities allowing the use to build his own geometry. This feature is particularly useful for external flows where the outer boundary is not of fixed shape.

    Download PDF
  • Aerodynamic Simulation For The Halis Configuration Using Object Oriented Grid Generation

    Hauser J., Xia Y., Muylaert J., Spel M.

    Published in 1996

    We present a grid generation strategy for general 3D complex geometries based on object-oriented design. This strategy is based on the observation that any type of configuration consists of objects, i.e. an aircraft consists of a fuselage, wings, tail, engines, etc. In the mesh generation process a so;ution domain is subdivided into blocks, such that the gridline configuration resembles the expected streamline pattern as much as possible. In the GridPro code, described in this paper, the user specifies a set of vertex points that are used to build a wireframe model. A grid generation language, termed topology input language (TIL), is used to connect the verticesof the wireframe to build the block topology of the grid. With our latest tool, the automatic zoning manager, topologies are built (almost) automatically, requiring only modest user interactivity, while the corresponding TIL code is generated by the interactive graphic tool AZ-manager.

    The advantage of this method is that any arbitrary domain, regardless of its geometrical complexity, can be treated as a set of objects that can be predefined in a user specific database; for instance, an aerodynamic database can be specifiedfor generic aircraft. Another major advantage of the method is the direct usage of CAD data for surface description. Surface and volume grids are then directly generated, without any user interaction. Th example shown is for the Halis body, a geometry similar to the Space Shuttle. The Halis model has been investigated in several wind-tunnels, and in a recent workshop at ESA Halis was chosen as a numerical test case for CFD code validation. The challenge in the flow computation is to resolve the physical phenomena that occur on the windward side of the vehicle, determining the heat flux into the structure as well as body flap efficiency. The complete TIL code for the generation of the 1 million grid point Halis body is presented and explained.

    Download PDF
  • Grid Generation for Aerospace Applications

    Hauser J., Spel M., Muylaert J., Eiseman P.R.

    Published in 1995

    These lecture notes are the nonmathematical version of a general report on grid generation. These notes are the continuation of courses in grid generation that have been given at the Von Karman Institute in March, 1992, the International Space Course at the Technical University of Munich, October, 1993, and at the Istituto per Applicacione del Calculo (IAC), Rome, September, 1994.

    With the advent of parallel computers, much more complex problems can be solved, provided computational grids of sufficient quality can be generated. The recent Aerothermodynamics Workshop at the European Space Agency (November 1994) has proved that grid generation is one of the pacing items in CFD.

    Download PDF
  • Results for the Navier Stokes Solver ParNSS on Workstation Clusters and IBM SP1 Using PVM

    Hauser J., Spel M., Muylaert J., Williams R.D., Paap H.G.

    Published in 1994

    The present paper deals with the PVM implementation of the general purpose Navier-Stokes ParNSS code, written in Ansi-C, using some C++ features. A brief discussion of the substantial advantages of dynamic storage allocation, complex data structures and pointer usage as well as on portability aspects will be given. The parallelization strategy will be discused in some detail, showing that the same approach can be used for both unstructured as well as structured codes as long as parallelization is based on a multi-domain decomposition. Speedup results for the axisymmetric Hyperboloid Flare body will be given for a cluster of SGI workstations, a DEC 3000/400 150 MHz cluster, of IBM 6000/580s, and for the IBM SP1 (ES-TEC) parallel machine, comparing ethernet and fast switch message passing. A comparison for these clusters is presented.

    Download PDF
  • ParNSS An Efficient Parallel Navie Stokes Solver for Complex Geometries

    Hauser J., Spel M., Muylaert J., Williams R.D.

    Published in 1994

    This paper reports about the experiences with the ParNSS code, which is a 2D and axisymmetric parallel multi-block Navier-Stokes code, written in ANSI-C. This code is derived from the sequential 3D ANSI-C version, that is, 2D calculations actually use four layers in the third direction. The code uses dynamic storage allocation, pointers, and complex data structures. These features allow a very efficient coding, substantially reduce the amount of memory needed, and provide clear data structures in an object oriented fashion, such as blocks, faces, edges, points, etc. The 2D code version serves as a testbed to verify the parallelization strategy chosen, to perform computations for multi-block grids, to investigate the convergence behavior of implicit solution schemes on parallel systems, and to measure the communication bandwidth on workstation clusters and large massively parallel systems.

    ParNSS offers complete geometrical flexibility and has no restrictions concerning the number of blocks. Grids are unstructured on the block level, but are structured within a block. Two test cases were computed, the symmetry plane of the Space Shuttle (2D) and the Hyperboloid Flare geometry (axisymmetric body) that serves as a generic configuration for the windward side of the Space Shuttle. Results are presented for clusters of Silicon Graphics and IBM workstations as well as for the Caltech Intel Paragon. The paper concludes with a discussion of numerical schemes with regard to scaling to systems comprising a large number of processors.

    Download PDF
  • Applications of Multiblock Grid Generations with Automatic Zoning

    Eiseman P.R., Cheng Z., Hauser J.

    Published in 1994

    This paper is centered on the applications of a new grid generation package entitled GridProTM / az3000. The effects of grid topology on various problems are shown. These have ranged from cases with only a few blocks to cases with thousands of blocks. More than five distinct CFD codes have been successfully run on the generated grids. The grids are smooth and nearly orthogonal.

    Download PDF
  • Applications of Multiblock Grid Generations with Automatic Zoning

    Eiseman P.R., Cheng Z., Hauser J.

    Published in 1994

    This paper is centered on the applications of a new grid generation package entitled GridProTM / az3000. The effects of grid topology on various problems are shown. These have ranged from cases with only a few blocks to cases with thousands of blocks. More than five distinct CFD codes have been successfully run on the generated grids. The grids are smooth and nearly orthogonal.

    Download PDF
  • Parallel Computing In Aerospace Using Multiblock Grids. Part 1: Application to Grid Generation

    Hauser J., Wong H., Gentzsch W., Paap H.G.

    Published in 1992

    The present paper describes the implementation of multi-block codes, used to model complex 2-D geometries for applications in computational fluid dynamics on massively parallel architectures. The work starts with a brief description of ongoing and planned major aerospace projects and gives an estimate of the computing power needed. In order to provide this computationsl speed, one has to resort to massively parallel systems.

    In the first section the essential features of multi-block grids, along with the grid generation equations are discussed and it is shown that overlapping multi-block grids are inherently parallel by construction. Since the number of blocks is not fixed, but can be matched to a large extent to the number of available processors, there are no principal limitations of this parallelization approach, provided the ratio of computation time to communication time remains large enough, which leads to the discussion of problem scalability.

    The details of implementation on the Intel iPSC/2 of a general 2-D multi-block mesh-generation code are outlined in sections 2 and 3, together with the listing of the major communication function (Section 4). In section 5 the results for this code are presented, clearly demonstrating that the multi-block concept is a viable tool for massively parallel computers, which can be applied to virtually all problems in science and engineering where computational meshes are used.

    In section 5.2 an outlook on the parallelization of more complex problems is given, and estimates for speed-up and efficiency, based on the present experiences, are provided. It turns out that, as long as computation dominates communication time, which is usually the case for complex aerospace applications, parallelization will be the tool to provide the additional orders of magnitude of computing power needed to routinely design and analyse future aircraft as well as spacecraft, in particular at high Mach numbers, when chemical reactions become important.

    Download PDF
  • Applied Grid Generation for Complex Domains in 2 and 3 Dimensions

    Hauser J., Paap H.G., Spel M.

    Published in 1992

    These lecture notes present the subject of Numerical Grid Generation on a way that is understandable to the scientist and engineer who is more a programmer, rather than a mathematician. The emphasis is on how to write a grid generation package. The best way to understand theory is to develop tools. Algorithms and data structures are presented from a real working code, namely the Grid* package built by the authors. No claim is made that the package presented here is the only or the best implementation of the concepts presented. Hence, a certain amount of low level information is presented. However, this is critical to understanding a general 3D multiblock grid generator, and is missing from other presentations on the subject.

    In a sence these notes gives an in depth presentation of several key programs, needed in any kind of grid generator. The Grid* package merely serves as an example, placing strong emphasis on how to write a real grid generation package based on object oriented programming ideas as found in C++. On the other hand, the mathematical theory covered is presented in such a way to directly show the relation to numerical grid generation. However, the main issue of this presentation is to present grid generation-design concepts, a topic that has not been given much attention, but which is more important than, fo example, the numerical solution scheme for the Poisson equations that have to be solved in elliptic grid generation.

    The multiblock concept gets an additional motivation with the advent of parallel and distributed computing systems, which offer the promise of a quantum leap in the computing power for Computational Fluid Dynamics (CFD). This concept may well be the key to achieve that quantum leap, as will be outlined in the chapter on grid generation on parallel computers.

    Since grid generation is a means to solve problems in CFD and related fields, a chapter on interfacing the final grid to the Euler or Navier-Stokes solver is provided. Although, in general, grids generated are slope continuois, higher order solvers need overlaps of 2 points in each direction. The software to generate this overlap for multiblock grids is presented in this chapter.

    The grid construction process is explained and demonstrated for several 2D examples. In 3D we start with a simple monoblock grid for the double ellipsoid, explaining the mapping procedure in 3D. After that a multiblock grid is shown, removing the singular line at the nose. Next, surface grid generation for the Hermes Space Plane is demonstrated, and subsequently a mono and a 4-block grid are generated. At last vehicle that is presented is the Space Shuttle Orbiter where surface grid generation is given foe a 4-block grid, modeling a somewhat simplified Orbiter geometry, namely a Shuttle without body flap. In the next step, the surface grid and volume grid for a 94-block Euler mesh of a Shuttle with body flap are presented. The rationale for the choice of that topology is carefully explained.

    Download PDF