Pv3 Server User's Reference Manual
Total Page:16
File Type:pdf, Size:1020Kb
pV3 Server User's Reference Manual Rev. 2.05 for use with the following OpenGL workstations: Compaq ALPHAs HP workstations (HPUX 10.20 ACE) RedHat LINUX (Rev 6.1 or higher) IBM RS/6000 workstations (AIX 4.3 or higher) Silicon Graphics SUNs (Solaris 2.6 or higher) WindowsNT/2000 Bob Haimes Massachusetts Institute of Technology December 12, 2001 1 License This software is being provided to you, the LICENSEE, by the Massachusetts Institute of Technology (M.I.T.) under the following license. By obtaining, using and/or copying this software, you agree that you have read, understood, and will comply with these terms and conditions: Permission to use, copy, modify and distribute, this software and its documentation for any purpose and without fee or royalty is hereby granted, provided that you agree to comply with the following copyright notice and statements, including the disclaimer, and that the same appear on ALL copies of the software and documentation: Copyright 1993-2001 by the Massachusetts Institute of Technology. All rights reserved. THIS SOFTWARE IS PROVIDED \AS IS", AND M.I.T. MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITA- TION, M.I.T. MAKES NO REPRESENTATIONS OR WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE LICENSED SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. The name of the Massachusetts Institute of Technology or M.I.T. may NOT be used in advertising or publicity pertaining to distribution of the software. Title to copyright in this software and any associated documentation shall at all times remain with M.I.T., and USER agrees to preserve same. 2 Contents 1 Introduction 5 1.1 pV3 Startup . 5 1.1.1 Server Startup . 6 1.1.2 Environment Variables . 6 1.1.3 Special Files . 7 1.1.4 Notes on the Common Desktop Environment { CDE . 9 1.2 pV3 Time-Outs and Error Recovery . 9 2 The pV3 Server Users Interface 11 2.1 Surfaces . 11 2.2 Windows . 11 2.2.1 Text Window . 11 2.2.2 3D Window . 12 2.2.3 2D Window . 12 2.2.4 1D Window . 12 2.2.5 Key Window . 12 2.2.6 Dialbox Window . 13 2.3 Scalar Visualization Tools . 15 2.3.1 Surface rendering . 15 2.3.2 Planar Cutting plane . 15 2.3.3 Program-defined cutting plane . 16 2.3.4 Iso-surfaces . 16 2.4 Vector Visualization Tools . 17 2.4.1 Bubbles . 17 2.4.2 Instantaneous Streamlines . 18 2.4.3 Tufts . 19 2.4.4 Arrows . 19 2.4.5 Vector Clouds . 20 2.5 Grid . 20 2.6 Thresholding . 20 2.7 Probes . 21 2.8 Help Menus . 22 2.8.1 3D Window . 22 3 2.8.2 2D Window . 23 2.8.3 1D Window . 24 2.8.4 Key Window . 25 2.8.5 Dials Window . 26 2.9 Dialbox Functions . 28 3 Multi-Disciplinary Visualization 29 4 Collaboration 30 4.1 Help Menus . 31 4.1.1 Servers Window . 31 4.1.2 Servers Extract Window . 31 5 Post-Processing 33 5.1 tab2ps . 33 5.2 img2tiff . 33 5.3 img2ps . 34 5.4 img2X . 35 6 User Interface Differences with Visual3 36 7 Warning and Error Messages 38 4 1 Introduction pV3 is the newest in a series of graphics and visualization tools to come out of the Department of Aeronautics and Astronautics at MIT. Like it's predecessors Visual3, Visual2 and Grafic, pV3 is a software package aimed at aiding in the analysis of a particular suite of problems. In this case it is the real time visualization of 3D large scale solutions of transient (unsteady) systems. pV3 (which stands for parallel Visual3), is a completely new and different system, but builds heavily on the technology developed for Visual3. It has been designed specifically for co-processing visualization of data generated in a distributed compute arena. It is also designed to allow the solver to run as independently as possible. If the solution procedure takes hours to days, pV3 can `plug-into' the calculation, allow viewing of the data as it changes, then can `unplug' with the worst side-effect being the temporary allocation of memory and a possible load imbalance. pV3 provides the same kind of functionality as Visual3 with the same suite of tools and probes. The data represented to the investigator (the 3D, 2D and 1D windows with cursor mapping) is the same. Also the same Graphical User Interface (GUI) is used. pV3 programming is very Visual3-like. For the desired flexibility and the merging of the visualization with the solver, some programming is required. The coding is simple; like Visual3, all that is required of the programmer is the knowledge of the data. Learning the details of the underlying graphics, data extraction, and movement (for the visualization) is not needed. If the data is distributed in a cluster of machines, pV3 deals with this, resulting in few complications to the user. 1.1 pV3 Startup The PVM daemon(s) and with co-processing, the solver, must be executing. Without a pV3 server running, every time the solution is updated, a check is made for the number of members in the PVM group pV3Server (Note: this name can be changed for multiple jobs running under the same user ID { see the Section 1.1.2 for the environment variable `pV3 Group'). If no servers are found, no action is taken. When a pV3 server starts (usually from an interactive xterm session on the graphics workstation), it enrolls in the specified group. The next time the solution is updated, an initialization message is processed and the visualization session begins. Each subsequent time in the solver completes a time step, visualization state messages and extract requests are gathered, the appropriate data calculated, collected and sent to the active server(s). When the user is finished with the visualization, the server sends a termination message and exits. The clients receive the message, and if no other servers are running, cleans up any memory allocations used for the visualization. Then the scheme reverts to looking for server initialization, if termination was not specified at pV3 client initialization. 5 1.1.1 Server Startup The interactive server, pV3Server, takes three arguments at the command line (all optional). The first is the setup file with the default of `pV3.setup'. The second argument is the color file to be used at startup (the default is `spec.col'). The third argument is the extract start-up file. There is no default. An argument of ` ' is a place holder, allowing the default to be used. − examples: % pV3Server case.setup % pV3Server pV3.setup bw.col % pV3Server % pV3Server case.setup case.startup − 1.1.2 Environment Variables The pV3 server uses six Unix environment variables. Some are the same as the ones used for Visual3. The variable `Visual3 CP' defines the file path to be searched for color files, if they are not in the user's current directory. This allows all of the color files to be kept in one system directory. The second variable, `Visual KB' is optional. This variable, if defined, must point to a file that contains alternate keyboard bindings for the special keys used by pV3. The file is ASCII. The first column is the key name (10 characters) and the second is the X-keysym value in decimal (use `xev' to determine the appropriate values for the key strokes). The third is `pV3 TO' and should be used to change the internal Time-Out constant. If the variable is set, it must be an integer string which is the number of seconds to use for the Time-Out constant (the server's default is 60). This may be required if the time between solution updates is long. See Time-Outs and Error Recovery, Section 1.2. The fourth is `pV3 Threading'. This is used to specify how the interactive Server and the post- processing Viewer handles the handshaking between their active threads. There are two methods; (1) `Hard' where the thread sits in a hard loop (with a thread yeild) looking for a change of state, or (2) `Flag' where the threads use Semaphores for waiting until the state changes. The advantage of `Hard' is interactivity, the advantage for `Flag' is less processor time consumed. By default, this variable is set to `Hard' for most situations with single processor workstations and `Flag' for multi- processors. Exceptions: ALPHA's default is `Hard', SUN's default is `Flag', reguardless of number of processors. The fifth is `pV3 Group'. This is usefull for differentiating multiple PVM jobs running under the same user ID. If this variable is set for the solver (client-side) before execution, it overrides the default client side group name pV3Client. The name used is the string assigned to this variable with Client appended. By setting this variable before server execution, it will set the server group to the variable's string with Server appended instead of using pV3Server. Only clients with the appropraite matching group name will be connected to this session. The last is `pV3 Warning'. If this variable is set (to anything except a NULL string) warning messages about ACK and maximum streamline segments are not reported. 6 1.1.3 Special Files Window Manager Resource File • By default, all modern Xwindows Managers allow the closing or deleting of windows by either double-clicking on the menu pull-down or selecting `Close' or `Quit' from the pull-down.