COMPUTATIONAL METHODS IN ENGINEERING AND SCIENCE EPMESC X, Aug. 21-23, 2006, Sanya, Hainan, China ©2006 Tsinghua University Press & Springer Enabling Technology for Large-Scale Multidisciplinary Simulations Yao Zheng*, Lijun Xie Center for Engineering and Scientific Computation, and College of Computer Science, Zhejiang University, Hangzhou, Zhejiang, 310027 China Email: yao.zheng@zju.edu.cn Abstract This paper outlines current enabling technology for large-scale multidisciplinary simulations, including mesh generation, problem solving environments, visual steering, and large-scale visualization. Mesh generation continues to be the pacing technology for a practical numerical analysis. A problem solving environment is a computer system that provides all the computational facilities necessary to solve a target class of problems. In an attempt to make numerical simulation more efficient, visual steering is required for engineering and scientific computation. Large-scale visualization can be realized through a tiled display wall system with distributed visualization capability. Moreover, this paper addresses aspects of an Enabling Environment for Multidisciplinary Application Simulations (EEMAS). As an example of integrated environments of enabling technology, EEMAS environment is a problem-solving environment for multidisciplinary application simulations. Within the EEMAS, there are four categories of modules involved, namely pre-processing module, computing module, post-processing module, and platform control module. All these modules are coupled through a software bus, which maintains the share memory and makes the modules integrated seamlessly. Key words: enabling technology, large-scale simulations, mesh generation, problem solving environments, distributed visualization INTRODUCTION With the development of computational methods and computing resources, large-scale multidisciplinary simulation is becoming an important area of computations in engineering and science. Technologies, such as mesh generation, problem solving environments, visual steering, and large-scale visualization, enable us in fulfilling large scale simulations. Such technologies are to be outlined in the present paper. As an example of integrated environments of enabling technology, EEMAS environment is developed for complex and large-scale simulations to take advantage of powerful parallel and distributed computing technologies. It features four categories of modules including pre-processing module, computing module, post-processing module, and platform control module. All these modules are coupled through a software bus, which maintains the share memory and makes the modules integrated seamlessly. Detailed design principles and applications of the EEMAS environment are to be addressed. MESH GENERATION An effective simulation system for engineering and scientific computation, usually involving complex geometry, must possess certain features such as: (1) fast turnaround and (2) accurate and reliable solution. The first point, encompassing both the human and machine efforts, entails a short setup time for calculation, minimal memory requirement, and efficient and robust solution algorithm. The second point requires a judicious choice of discretization procedure. Mesh generation continues to be the pacing technology for a practical numerical analysis and is the area where significant payoff can be realized. Furthermore, high quality meshes for encompassing special regions are essential to yielding an accurate and efficient solution. Research on mesh generation technologies is challenging, while its importance is evident [1-11]. ⎯ 195 ⎯ During the past decades, both structured and unstructured meshing techniques have been extensively developed and applied to solution of various engineering problems. To deal with situations in which complex geometry imposes considerable constraints and difficulties in generating meshes, composite structured mesh schemes [12,13] and unstructured mesh schemes currently are the two mainstream approaches. The Chimera mesh scheme [12] and similar schemes [13], using overset meshes to resolve complex geometries or flow features, are generally classified into the composite structured mesh category. Overset meshes allow structured meshes to be used with good quality, such as orthogonality and smoothness, and with ease to control mesh spacing in viscous layers. The unstructured mesh method is very flexible to generate meshes around complex geometries. In particular, the solution adaptivity is perhaps its greatest strength [14,15]. However, the unstructured mesh method has been shown to be extremely memory and computation intensive [4-10,14,15]. Hence, a method that properly employs a hybrid of structured and unstructured meshes may prove to be fruitful. In fact some hybrid schemes have already appeared in the literature [11,16-19] and have shown promising features. Interestingly enough, researchers from each camp have infused ideas from the other to approach a hybrid mesh: a structured mesh is embedded underneath an otherwise unstructured mesh in order to better resolve the viscous region [17], or an unstructured mesh is used to enhance the flexibility of structured mesh scheme for handling complex geometries [16]. Nevertheless, there is an important difference between the above two approaches toward hybrid meshes. On the one hand, a majority of region is filled with unstructured meshes, while on the other the region is mostly structured. DRAGON mesh [18,19], as a hybrid mesh, is created by means of a Direct Replacement of Arbitrary Grid Overlapping by Nonstructured grid. This approach will yield structured meshes in the major portion of the domain and only small regions filled with unstructured meshes. The DRAGON meshing scheme maximizes the advantages of the Chimera scheme, and adopts the strengths of the unstructured mesh while minimizing its weakness [18,19]. PROBLEM SOLVING ENVIRONMENTS A Problem Solving Environment (PSE) is a computer system that provides all the computational facilities necessary to solve a target class of problems [20]. Typically, it can reduce the difficulty of physical simulation by utilizing user natural languages and application specific terminology, and by automating many lower level computational tasks. We define a kind of PSEs in the following formula [20-22]: PSE = User interface + Enabling libraries and tools + Problem solvers + Software bus Commonly, a PSE should have a friendly user interface such as nature language and graphical user interface that can help the user to use the system in a direct and efficient manner. Enabling libraries and tools are the most valuable parts of a PSE. They provide all the necessary assistant functions for a simulation, such as geometric modeling, mesh generation, and scientific visualization. Problem solvers are integrated into the computational module, for various problem fields. Software bus is the method to integrate all the modules to work seamlessly and efficiently. For computer simulation of various physical phenomena and process, there is a common demand to equip the users a user interactive platform with certain capabilities, and an effective method is to construct a problem solving environment (PSE) [23-26]. As applications of computational engineering expand into new areas a requirement to allow traditional engineers access to these techniques becomes fundamentally important. To achieve this complex numerical algorithms are encased with a user-friendly, graphically interactive environment. A PSE is capable to integarate these stages into one unified environment, and to help users to steer the problem solving easily. A Parallel Simulation User Environment (PSUE) is one of the typical PSEs [25, 26]. Fig. 1 illustrates a general schematic of the PSUE for multi-disciplinary engineering analyses. In order for such an environment to be a success, the need to eliminate any sequential bottlenecks, both in terms of speed and size, at every stage of the simulation process is of fundamental importance. As with many other problems, the parallelization and distribution of data and work-load amongest multiple processors is the only method by which the required increase in performance and problem size can be achieved using conventional computing hardware. Within the PSUE the entire computational simulation process may be performed using parallel processing techniques. The aim of the presented graphical environment is to allow the interaction with, and solution of problems involving complex geometries and large unstructured meshes, with no sequential bottlenecks at any stage of the process. ⎯ 196 ⎯ Figure 1: A general schematic of the Parallel Simulation User Environment (PSUE) VISUAL STEERING The PSUE features a mechanism of visual steering [25], providing an enhanced capability for complex and multiple problem definition, equipped with a graphics environment for guidance through the computational analysis process with validation of each step, and possessing robust and computationally efficient unstructured mesh generation modules. The primary module in the visual steering environment is the geometry builder [26]. The geometry builder provides tools to manipulate the geometry definition, perform topological validation of the geometry, interact and and repair geometry defects through operations such as surface reconstruction. Each of these operations prepares the geometry for mesh generation. The generation and analysis of unstructured meshes is the result of modules coupled into the PSUE. The flowchart illustrated in Fig. 2 shows the role of visual steering in this process. The visual steering of the mesh generation and mesh analysis allows the user control and guidance of each stage of the process. The user can modify parameters or manipulate the geometry within the graphical environment and verify the result of their action using the visual steering tools. Figure 2: Data flow between the user, the visual steering environment, and the mesh generator ⎯ 197 ⎯ LARGE-SCALE VISUALIZATION With the increase of scales of applied engineering problems to be solved, the requirement to visualization is increasing. For large scale problems, visualization technology is demanded to meet the requirement of large scale numerical simulations [27], and this includes special rendering techniques, parallel processing methods [28], and distributed and collaborative visualization approaches. Larger problem prompts the development of ViPar (Visualisation in Parallel) architecture [29]. The eventual aim is to develop a Parallel Problem Solving Environment (PPSE), which uses parallel processing techniques throughout. This then allows the definition, meshing and solution of problems with one, or two, orders of magnitude increase in size over conventional sequential PSE's. The large-scale visualization can also be realized through a tiled display wall system with distributed visualization capability. An entire simulation process is visualized in an immersive mode by rendering the results locally and concatenated to a large display wall. We are to discuss the parallel visualization technology and a computer cluster-driven tiled display wall, on which the simulating results are rendered. Figure 3: Architecture of Princeton display wall Fig. 3 illustatrates the architecture of Princeton display wall [32], while Fig. 4 shows a typical display wall system supported by a PC cluster, located in the Center for Engineering and Scientific Computation, Zhejiang University. The large display wall is supported by nine projectors (18 projectors in a stereo mode), and produces a 3x3 seamless picture with a resolution of about 3000x2000 pixels. The screen is driven by nine computing nodes and rendered in a parallel fashion. (a) A matrix of projectors (b) A screen and projectors Figure 4: A typical stereo display wall system supported by a PC cluster We use a sort-last parallel rendering method in the system. The geometry configurations are rendered locally in the computers where they are simulated. These computers are called render servers. A client computer which interacts with users manages all OpenGL states and sends them to the render servers when the states are changed, for example, when ⎯ 198 ⎯ the view direction is changed [30]. When all render servers have created the images, a binary swap composition method will be used to sort the images and compose a final scene. The render servers decompose their scene according to the configuration of the display wall. For example, our display wall consists of an array of 3x3 projectors, so we decompose the image into 3x3 parts with equal size. Then the geometrical data are sent to corresponding computers which drive the projectors, and sub-images are composed in those computers with Z-buffer testing. When all the parts are rendered, the render servers can display them through projectors directly, and compose a whole scene on the large tiled display wall. Until now, the composed scene has very obvious seams between areas corresponding to adjoining projectors. This is because our system is built upon a PC cluster and commodity projectors. The advantage of this approach is its low cost. However the color space and luminosity of these projectors are not same, and precise alignment of them is too difficult to achieve manually. So the sub-images they project will overlap each other and vary in colors and luminosity. We use an image-processing method to eliminate the seams. Before the image is projected, we warp it first and remap its color table to a calibrated one. By warping the image to a destination shape and size, the geometry seams can be eliminated. This method is introduced in detail in Reference [31]. The color difference can be eliminated by remapping the color table of every projector to a uniform one. After the image processing, a uniform scene without seams is composed. Fig. 5 shows example scenes of the display wall working. (a) A Dawning PC cluster (b) A display wall working Figure 5: Illustration of the display wall working EEMAS ENVIRONMENT EEMAS (Enabling Environment for Multidisciplinary Application Simulations) environment is a problem-solving environment for multidisciplinary application simulations [33]. Within the EEMAS, there are four categories of modules involved, namely pre-processing module, computing module, post-processing module, and platform control module. The EEMAS is developed for complex and large-scale simulations to take advantage of powerful parallel and distributed computing technologies. All the modules are coupled through a software bus, which maintains the share memory and makes the modules integrated seamlessly. The environment can reduce the time required for problem definition and for post-processing, whilst the unified environment is ideal for multidisciplinary design applications, as the data is handled in one consistent format. It hides many aspects of computational engineering that are not of prime interest or relevance to the engineer, e.g. the setting-up and subsequent execution of an application on a parallel platform. The EEMAS is designed mainly for large-scale simulations, and heavily depend on visual steering, parallel and distributed computation. The EEMAS framework is developed with C++, kernel algorithms are implemented with C and Fortran, the graphical user interface is built with Qt, and visualization capabilities are developed based on the OpenGL library. The system runs on Linux/Unix platforms, while its front end is being ported to Windows at this moment. Fig. 6 is a snapshot of an EEMAS session running on an SGI IRIX machine. ⎯ 199 ⎯ Figure 6: A snapshot of an EEMAS session running on an SGI IRIX machine 1. Design Goals The primary task of the EEMAS is to provide an efficient environment that enables scientists and engineers to create multidisciplinary application simulations, to develop new algorithms, and to couple existing algorithms with powerful enabling tools. The main design principles and goals that guide development in the EEMAS project are as follows. (1) Abundant functions. The EEMAS contains generic modules that provide necessary functions needed in mesh-based simulations, such as geometric modeling, CAD repair, mesh generation, domain decomposition, scientific visualization, platform control, and numerical libraries. (2) Scalability and seamless integration. As a Problem Solving Environment (PSE), the main aim of the EEMAS project is not to provide concrete scientific computational functions, but to provide an efficient, flexible and yet consistent framework, that facilitates integration of domain solvers and enabling tools. For this purpose, much attention is paid to the scalability of the system, which is mainly implemented with consistent data format and flexible data transfer interface. The major portion of data is stored in share memory to reduce the consumption of memory and to improve the speed of data transfer. Three data transfer schemes are provided, that is, through pipes, sockets and temp files, respectively. For a module with its source code, users or developers are able to integrate it into the system by means of data transferring through pipes or sockets, of which the efficiency is quite high. If the source code is not available or the users do not want to spend much time on the integration, temporary files can be used for data transferring directly. (3) Visual steering and GUI. The EEMAS follows the philosophy of visual steering. Its graphical user interface guides users to utilize particular components without in-depth expertise on those components, and to control the computing in a straightforward way. This allows scientists to use visualization tools while focusing on computational algorithms, and allows programmers to create visualizations tools without implementing simulation modules either. Visualization and numerical feedback are used throughout the system. (4) Parallel and distributed computing. The EEMAS is designed mainly for large-scale simulations. Therefore, majority of its modules utilize parallel and distributed computing, and can run on remote machines. Most of the modules, from mesh generation to problem solving, and to visualization, can run in the parallel mode. A module for parallel environment setup and control is also developed. Two parallel schemes are utilized. One is task parallelism that distributes different parts of a simulation to different processors. The other is data parallelism that is more widely used within a computationally intensive module. 2. Software Architecture and Features Fig. 7 describes the EEMAS architecture from users’ perspective. There are four categories of modules involved, named as pre-processing module, computing module, post-processing module and platform control module. The first three are common phases of a simulation whilst the last one serves for the entire ⎯ 200 ⎯ Mesh Generation Boundary Conditions Physical Property Definition Domain Decomposition Pre-Processing Module CAD Repair Geometrical Modeling Numerical Libraries Computing Module CFD Module Post-Processing Module Other Domain Solvers Visualization Tool Data Analysis Tool Performance Analysis Tool PCs or Workstations Platform Control SMP and MPP Computers Cluster Computers Grids Platform Control Module Software Bus EEMAS Solid Mechanics Module Figure 7: The EEMAS architecture from users’ perspective process of simulation. All the modules are coupled through a software bus, which maintains the share memory and makes the modules cooperate seamlessly. (1) Pre-processing Module. Pre-processing module deals with the problem definition and preparation for computing. This is the most time-consuming part in simulations, and many researchers are focusing on automating this work. In the EEMAS, the pre-processing module consists of a basic geometrical handling tool, a powerful mesh generators, and tools for general CAD format conversion, boundary condition definition and physical properties definition. The geometrical handling tool in the EEMAS stores geometrical data by means of boundary representation. It is not as powerful as commercial CAD software, but it is adequate to process the common modeling work, especially with certain functionalities oriented to mesh generation. For complicated geometries, the user can directly model them with other CAD software, and then import them into the EEMAS. Mesh generation is a crucial step in simulation that impacts both the calculating time and the accuracy. Research on mesh generation technologies is challenging, while its importance is evident. The EEMAS provides powerful mesh generators with the ability to generate 2D planar meshes, surface meshes of triangles, and volume meshes of tetrahedrons. This module is capable to generate high quality meshes by means of visual steering. Users can specify the mesh spacing in terms of a background mesh and mesh sources. Mesh generation has a stricter requirement of validation to geometrical models than common CAD software does. It is often the case that the format of geometries inside CAD packages does not meet the requirement for mesh generation. Holes, gaps, overlaps, and intersection of surfaces must be dealt with before mesh generators start. However, issues on geometry validity are not well defined, and it is still a large research field today. In the EEMAS, a geometrical validation and repair module is integrated, so as to find out many common cases of invalid models. (2) Computing Module. As mentioned above, the goal of designing the EEMAS environment is to support multidisciplinary application simulations. In general, scientists and engineers could integrate various domain solvers into the EEMAS to process particular simulations. To integrate with the EEMAS, users should adapt their solvers with the EEMAS data structure, or write an interface to convert formats. Data transfer involved can utilize pipes, sockets or temporary files. At present, an FEM solver for solid and structure analyses has been integrated. ⎯ 201 ⎯ (3) Post-processing Module. Resulting data of complex and large-scale simulations are often difficult or even impossible to be understood without the assistance of visualization. Two powerful visualization packages named OpenDX [34] and ParaView [35] have been integrated into the EEMAS. In order to support visualization for large datasets, such as gigabyte datasets visualization, parallel and distributed visualization technologies are employed. There are two modes of distributed visualization. One is the task parallel mode, in which different part of visualization pipes are processed by different processors. The other is data parallel model, in which the data is broken into pieces to be processed by multiple processors. The second method is easier to be implemented, because many visualization algorithms need not much change when running in parallel. The EEMAS supports both distributed and local rendering, and their combination. This provides scalable rendering for large data sets without sacrificing performance when working with smaller data sets. For a parallel program, programmers and users usually have to tune the parameters and methods repeatedly to get a good performance. Thus a performance analysis tool is necessary. The EEMAS uses a tool named ParaGraph to visualize the behavior and performance of parallel programs on message-passing parallel computers. ParaGraph provides several distinct visual perspectives from which to view processor utilization, communication traffic, and other performance data in an attempt to gain insights [36]. (4) Platform Control Module. The EEMAS provides a platform control module to process the setup of parallel environments, computing source management, file transfer and so on. This hides lot of trivial details of platforms from users, and helps users utilize all kinds of computers from local PCs. The whole system only needs to be initialized once. At present, this module can be used to explore local or remote Unix/Linux systems running on personal computers, workstations, SMP and MPP supercomputers, and clusters. The functions to utilize grid resources are also under development [37]. 3. Applications As an example, a structure analysis of a crank is processed within the EEMAS. After geometrical modeling, the crank is decomposed into 16 domains and delivered to different processors for parallel execution, and at last the data is visualized. We conduct this simulation on an SGI Onyx 3900 supercomputer and a Dawning PC cluster with diverse parameters to explore the performance of the system. Fig. 8 shows the corresponding geometrical model, discretization of the model and the simulation result. The simulation has been carried out with various numbers of elements and those of CPUs on both the supercomputer and the PC cluster. (a) Geometrical model (b) A mesh and 16 domains concerned (c) Displacement contour (d) Deformed shape with stress contour Figure 8: Simulation of a crank ⎯ 202 ⎯ Fig. 9 shows the efficiency for cases with the numbers of elements and CPUs. From the figure we can see that parallel processing is capable to reduce the computing time greatly. However, more CPUs cannot always guarantee higher performance. When too many CPUs are utilized, domain decomposition, data transfer and other communication operations will take lots of time and reduce the performance. 100 100 46871 elements 142070 elements 80 Efficiency Efficiency 80 46871 elements 142070 elements 60 60 40 40 20 20 0 0 4 8 12 16 20 24 28 Number of Processors 0 0 4 8 12 16 20 24 Number of Processors (a) SGI Onyx3900 supercomputer (b) Dawning PC cluster Figure 9: Efficiency for cases with various numbers of elements and those of CPUs CONCLUDING REMARKS The present paper outlines aspects of enabling tecnonlogy, including mesh generation, problem solving environments, visual steering, and large-scale visualization. As an example of integrated systems, the EEMAS is a problem-solving environment for multidisciplinary application simulations. It is a framework that can easily integrate arbitrary modules, and it contains various enabling tools such as pre-processing, post-processing, platform control and so on. Environments such as EEMAS could be developed and enhanced further to serve as a digital prototyping system. It will help battle design complexity by creating 3D virtual prototypes, and optimizing and differentiating the designs through large-scale multidisciplinary simulations. It could avoid having to produce expensive physical prototypes. This is the concept of virtual test and virtual prototyping. Acknowledgements The authors would like to acknowledge the financial support received from the NSFC (National Natural Science Foundation of China) for the National Science Fund for Distinguished Young Scholars under Grant No. 60225009. We would like to thank the Center for Engineering and Scientific Computation, Zhejiang University, for its computational resources, with which the research project has been carried out. We should give special thanks to Dr. Jifa Zhang, Dr. Jianjun Chen, Mr. Tingjun Yang, Dr. Guanghua Song and Ms. Zhengge Huang for their productive contributions. REFERENCES 1. Thompson JF, Weatherill NP. Structured and unstructured grid generation. Critical Reviews in Biomedical Engineering, 1992; 20: 73-120. 2. George PL. Automatic Mesh Generation: Application to Finite Element Methods. Masson, Paris, France, 1991. 3. Schroeder WJ, Shephard MS. A combined octree Delaunay method for fully automatic 3-D mesh generation. Int. J. Numer. Methods Eng., 1990; 29: 37-55. 4. Weatherill NP, Hassan O. Efficient three-dimensional Delaunay triangulation with automatic point creation and imposed boundary constraints. Int. J. Numer. Methods Eng., 1994; 37: 2005-2039. 5. Weatherill NP, Hassan O, Morgan K, Jones JW, Larwood B. Towards fully parallel aerospace simulations on unstructured meshes. Engineering Computations, 2001; 18: 347-375. 6. Zheng Y, Lewis RW, Gethin DT. Three-dimensional unstructured mesh generation: part 1. fundamental aspects of triangulation and point creation. Comp. Methods Appl. Mech. Eng., 1996; 134: 249-268. ⎯ 203 ⎯ 7. Zheng Y, Lewis RW, Gethin DT. Three-dimensional unstructured mesh generation: part 2. surface meshes. Comp. Methods Appl. Mech. Eng., 1996; 134: 269-284. 8. Lewis RW, Zheng Y, Gethin DT. Three-dimensional unstructured mesh generation: part 3. volume meshes. Comp. Methods Appl. Mech. Eng., 1996; 134: 285-310. 9. Frey PJ, Borouchaki H, George PL. 3D Delaunay mesh generation coupled with an advancing-front approach. Comp. Methods Appl. Mech. Eng., 1998; 157: 115-131. 10. Zhang LP, Wo C, Yang YJ. Automatic triangulation for three dimensional complex geomtry surfaces. Acta Aerodynamica Sinica, 1999; 17: 371-377 (in Chinese). 11. Zhang LP, Zhang HX, Gao SC. A Cartesian/unstrucutred hybrid grid solver and its applications to 2D/3D complex inviscid flow fields. Acta Aerodynamica Sinica, 1998; 16: 79-88 (in Chinese). 12. Steger JL, Benek JA. On the use of composite grid schemes in computational aerodynamics. Comp. Methods Appl. Mech. Eng., 1987; 64: 301-320. 13. Chesshire G, Henshaw WD. Composite overlapping meshes for the solution of partial diffential equations. Journal of Computational Physics, 1990; 90: 1-64. 14. Löhner R. An adaptive finite element scheme for transient problems in CFD. Comp. Methods Appl. Mech. Eng., 1987; 61: 323-338. 15. Peraire J, Vahdati M, Morgan K, Zienkiewicz OC. Adaptive remeshing for compressible flow computations. Journal of Computational Physics, 1987; 72: 449-466. 16. Weatherill NP. On the combination of structured-unstructured meshes. in Sengupta S et al eds. Numerical Grid Generation in Computational Fluid Mechanics, Pineridge Press, Swansea, UK, 1988, pp. 729-739. 17. Soetrisno M, Imlay ST, Roberts DW. A zonal implicit procedure for hybrid structured-unstructured grids. AIAA Paper 94-0645, AIAA 32nd Aerospace Sciences Meeting & Exhibit, Reno, NV, 1994. 18. Zheng Y, Liou MS. A novel approach of three-dimensional hybrid grid methodology: part 1. grid generation. Comp. Methods Appl. Mech. Eng., 2003; 192: 4147-4171. 19. Liou MS, Zheng Y. A novel approach of three-dimensional hybrid grid methodology: part 2. flow solution. Comp. Methods Appl. Mech. Eng., 2003; 192: 4173-4193. 20. Gallopoulos E, Houstis E, Rice JR. Future research directions in problem solving environments for computational science. Report of a Workshop on Research Directions in Integrating Numerical Analysis, Symbolic Computing, Computational Geometry, and Artificial Intelligence for Computational Science. Technical Report 1259, Center for Supercomputing Research and Development, University of Illinois at Urbana-Champaign, 1992. 21. Rice JR, Boisvert RF. From scientific software libraries to problem-solving environments, IEEE Computational Science and Engineering, 1996; 3 (3): 44-53. 22. Rice JR. Future challenges for scientific simulation. Chapter 1 in Houstis EN, Rice JR, Gallopoulos E, Bramley R eds. Enabling Technologies for Computational Science: Frameworks, Middleware and Environments, The Kluwer International Series in Engineering and Computer Science, Vol. 548, Kluwer Academic Publishers, Boston, 2000, pp. 7-17. 23. Baker AJ. The 21st century emergence of the multi-disciplinary problem solving environment. Chapter 4 in Houstis EN et al eds. Enabling Technologies for Computational Science: Frameworks, Middleware and Environments, The Kluwer International Series in Engineering and Computer Science, Vol. 548, Kluwer Academic Publishers, Boston, 2000, pp. 45-52. 24. Sastry L, Craig M. Scalable application visualisation services toolkit for problem solving environments. in Cox SJ ed. Proceedings of UK e-Science All Hands Meeting, Nottingham, UK, September, 2003, EPSRC, UK, 2003, pp. 520-525. 25. Zheng Y, Weatherill NP, Turner-Smith EA, Sotirakos MI, Marchant MJ, Hassan O. Visual steering of grid generation in a parallel simulation user environment. Chapter 27 in Houstis EN et al eds. Enabling Technologies for Computational Science: Frameworks, Middleware and Environments, The Kluwer International Series in Engineering and Computer Science, Vol. 548, Kluwer Academic Publishers, Boston, 2000, pp. 339-349. ⎯ 204 ⎯ 26. Zheng Y, Weatherill NP, Turner-Smith EA. An interactive geometry utility environment for multi-disciplinary computational engineering. Int. J. Numer. Methods Eng., 2002; 53: 1277-1299. 27. Spivack M, Usher A, Yang X, Hayes M. Visualisation and grid applications of electromagnetic scattering from aircraft. in Cox SJ ed. Proceedings of UK e-Science All Hands Meeting, Nottingham, UK, September, 2003, EPSRC, UK, 2003, pp. 672-678. 28. Humphreys G, Hanrahan P. A distributed graphics system for large tiled displays. in Proceedings of IEEE Visualization '99, San Francisco, California, 1999. 29. Jones JW, Weatherill NP. Visualisation of large unstructured grids within a parallel framework. in A Collection of Technical Papers, the 14th AIAA Computational Fluid Dynamics Conference, Norfolk, Virginia, USA, 1999, AIAA, 1999, pp. 325-335. 30. Buck I, Humphreys G, Hanrahan P. Tracking graphics state for networked rendering. in Proceedings of SIGGRAPH/Eurographics Workshop on Graphics Hardware, August 2000. 31. Li K et al. Early experiences and challenges in building and using a scalable display wall system. IEEE Computer Graphics and Applications, 2000; 20(4): 671-680. 32. Chen H, Wallace G, Gupta A, Li K, Funkhouser T, Cook P. Experiences with scalability of display walls. Immersive Projection Technology Symposium (IPT), March 2002. 33. Xie L, Zheng Y, Zhang J, Huang X, Huang Z. EEMAS: an enabling environment for multidisciplinary application simulations. in Jin H, Pan Y, Xiao N, Sun J eds. Proceedings of the GCC 2004 International Workshops, IGKG, SGT, GISS, AAC-GEVO, and VVS, Wuhan, China, 2004, Grid and Cooperative Computing - GCC 2004 Workshops, Lecture Notes in Computer Science, Vol. 3252, Springer-Verlag, Berlin, Heidelberg, 2004, pp. 681-688. 34. OpenDX User’s Guide. URL: http://www.opendx.org/started.html (Current May 1, 2006). 35. Paraview User’s Guide. URL: http://www.paraview.org/HTML/Features.html (Current May 1, 2006). 36. Heath MT. Recent developments and case studies in performance visualization using ParaGraph. in Haring G, Kotsis G eds. Performance Measurement and Visualization of Parallel Systems, Elsevier Science Publishers, Amsterdam, 1993, pp. 175-200. 37. Wei G, Zheng Y, Zhang J. Grid service-based parallel finite element analysis. in Li M et al eds. Proceedings of the Second International Workshop on Grid and Cooperative Computing (GCC2003), Shanghai, China, 2003, Grid and Cooperative Computing: Second International Workshop, GCC 2003, Part I, Lecture Notes in Computer Science, Vol. 3032, Springer-Verlag, Heidelberg, 2004, pp. 123-130. ⎯ 205 ⎯
© Copyright 2025 Paperzz