Ensight Howto User Manual How To
2017-12-05
User Manual: Ensight Howto HowTo EnSight10_Docs www3.ensight.com 3:
Open the PDF directly: View PDF .
Page Count: 546 [warning: Documents this large are best viewed by clicking the View PDF Link!]
- Introduction
- Read and Load Data
- Save or Output
- Manipulate Viewing Parameters
- Rotate, Zoom, Translate, Scale
- Set Drawing Mode
- Set Global Viewing Parameters
- Set Z Clipping
- Set LookFrom / LookAt
- Set Auxiliary Clipping
- Define and Change Viewports
- Set Light Sources
- Display Remotely
- Save & Restore Viewing Parameters
- Create and Manipulate Frames
- Reset Tools and Viewports
- Use the Color Selector
- Enable Stereo Viewing
- Pick Center of Transformation
- Set Model Axis/Extent Bounds
- Do Viewport Tracking
- View a Viewport Through a Camera
- Manage Views
- Manipulate Tools
- Miscellaneous
- Visualize Data
- Introduction to Part Creation
- Create Auxiliary Geometry
- Create Contours
- Create Isosurfaces
- Create Particle Traces
- Create Clips
- Create Clip Lines
- Create Clip Planes
- Create Box Clips
- Create Quadric Clips
- Create IJK Clips
- Create XYZ Clips
- Create RTZ Clips
- Create Revolution Tool Clips
- Create Revolution of 1D Part Clips
- Create General Quadric Clips
- Create Clip Splines
- Create Vector Arrows
- Create Elevated Surfaces
- Extrude Parts
- Create Profile Plots
- Create Developed (Unrolled) Surfaces
- Create Subset Parts
- Create Tensor Glyphs
- Display Displacements
- Display Discrete or Experimental Data
- Change Time Steps
- Extract Vortex Cores
- Extract Separation & Attachment Lines
- Extract Shock Surfaces
- Create Material Parts
- Filter Part Elements
- Do Element Blanking
- Use Point Parts
- Use Raytrace Rendering
- Create and Manipulate Variables
- Query, Probe, Plot
- Manipulate Parts
- Animate
- Annotate
- Configure EnSight

Page 1
HOW TO TABLE OF CONTENTS
Introduction
Use the Online Documentation
Use The How To Manual
EnSight Overview
Command Line Start-up Options
Use Environment Variables
Connect EnSight Client & Server
Read and Load Data
Read Data
Use ens_checker
Load Multiple Datasets (Cases)
Compare Cases
Load Transient Data
Use Server of Servers
Load Spatially Decomposed Case Files
Read User Defined
Do Structured Extraction
Use Resource Management
Use Root Level Server of Servers
Save or Output
Save or Restore an Archive
Record and Play Command Files
Print/Save an Image
Save Geometric Entities
Save/Restore Context
Save Scenario
Save/Restore Session
Manipulate Viewing Parameters
Rotate, Zoom, Translate, Scale
Set Drawing Mode
Set Global Viewing Parameters
Set Z Clipping
Set LookFrom / LookAt
Set Auxiliary Clipping
Define and Change Viewports
Set Light Sources
Display Remotely
Save & Restore Viewing Parameters
Create and Manipulate Frames
Reset Tools and Viewports
Use the Color Selector
Enable Stereo Viewing
Pick Center of Transformation
Set Model Axis/Extent Bounds
Do Viewport Tracking
View a Viewport Through a Camera
Manage Views
Manipulate Tools
Use the Cursor (Point) Tool
Use the Line Tool
Use the Plane Tool
Use the Box Tool
Use the Cylinder Tool
Use the Sphere Tool
Use the Cone Tool
Use Surface of Revolution Tool
Use the Selection Tool
Use the Spline Tool
Miscellaneous
Use Batch
Use Keyboard Shortcuts
Use Rigid Body Motion
Select Files
Use EnSight with Workbench
Visualize Data
Introduction to Part Creation
Create Auxiliary Geometry
Create Contours
Create Isosurfaces
Create Particle Traces
Create Clips
Create Clip Lines
Create Clip Planes
Create Box Clips
Create Quadric Clips
Create IJK Clips
Create XYZ Clips
Create RTZ Clips
Create Revolution Tool Clips
Create Revolution of 1D Part Clips
Create General Quadric Clips
Create Clip Splines
Create Vector Arrows
Create Elevated Surfaces
Extrude Parts
Create Profile Plots
Create Developed (Unrolled) Surfaces
Create Subset Parts
Create Tensor Glyphs
Display Displacements
Display Discrete or Experimental Data
Change Time Steps
Extract Vortex Cores
Extract Separation & Attachment Lines
Extract Shock Surfaces
Create Material Parts
Filter Part Elements
Do Element Blanking
Use Point Parts
Use Raytrace Rendering
Create and Manipulate Variables
Activate Variables
Create New Variables
Extract Boundary Layer Variables
Edit Color Palettes
Use Volume Rendering

Page 2
HOW TO TABLE OF CONTENTS
Query, Probe, Plot
Get Point, Node, Element, & Part Info
Probe Interactively
Query/Plot
Change Plot
Query Datasets
Manipulate Parts
Change Color
Set Surface Properties
Use Quick Color Settings
Clone a Part
Copy Parts
Group Parts
Merge Parts
Extract Part Representations
Cut Parts
Delete a Part
Change the Visual Representation
Set
Display Labels
Set Transparency
Select Parts
Set Symmetry
Map Textures
Animate
Animate Transient Data
Create a Flipbook Animation
Create a Keyframe Animation
Animate Particle Traces
Annotate
Create Text Annotation
Create Lines
Create 2D Shapes
Create 3D Arrows
Create Dials
Create Gauges
Load Custom Logos
Create Color Legends
Manipulate Fonts
Configure EnSight
Customize Icon Bars and Panels
Customize Mouse Button Actions
Save Settings
Define and Use Macros
Set or Modify Preferences
Enable User Defined Input Devices
Produce Customized Pop-Up Menus
Produce Customized Access to Tools & Features
Setup For Parallel Computation
Setup For Parallel Rendering

Page 3
HOW TO USE THE ONLINE DOCUMENTATION
Introduction
Use the Online Documentation
INTRODUCTION
The EnSight online documentation consists of:
WHERE TO START?
If you are new to EnSight you should read the EnSight Overview article. Chapter 1 and Chapter 5 in the User
Manual also provide overview information. The Introduction to Part Creation provides fundamental information on
EnSight’s part concept.
PDF READER
The EnSight online documentation is in pdf format. EnSight uses a pdf reader such as the Acrobat® Reader software
from Adobe Systems, Inc., Xpdf, or Apple’s Preview. Any of these readers provide similar capabilities. For the
purposes of this documentation, the Acrobat Reader will be pictured. A pdf reader provides much the same
functionality as a World Wide Web browser while providing greater control over document content quality. To use a
different reader (from the default), simply set the environment variable CEI_PDFREADER to a different reader
application. See How To Use the How To Manual for more information on using a pdf reader.
Installation Guide Consists of a .pdf file in the doc directory (as well as being available for easy reading
from the web install page). Also goes out as hardcopy with an EnSight CD.
Getting Started
Manual
The Getting Started Manual contains basic Graphical User Interface overview
information and several tutorials. This manual is not cross-referenced with any of the
other manuals.
How To Manual The How To documentation consists of relatively short articles that describe how to
perform a specific operation in EnSight, such as change the color of an object or
create an isosurface. Step-by-step instructions and pictures of relevant dialogs are
included. In addition, each How To article typically contains numerous hyperlinks
(colored blue) to other related articles (and relevant sections of the User Manual).
How To Use the How To Manual
How To Table of Contents
User Manual The User Manual is a more traditional document providing a detailed reference for
EnSight. The User Manual contains blue hyperlinks as well. The User Manual table of
contents is hotlinked as well as cross-reference entries within chapters (which
typically start with “See Section ...” or “See How To ...”).
User Manual Table of Contents
Interface Manual The Interface Manual contains the information needed for creating user-defined
readers, creating user-defined writers, creating user-defined math functions,
interacting with EnSight through the external command driver, and using the EnSight
python interpreter.

Page 4
HOW TO USE THE ONLINE DOCUMENTATION
HOW TO PRINT THE DOCUMENTATION
Printing Topics From a PDF Reader
You can easily print any topic in the How To manual or any pages from the other documentation from within the pdf
reader. The documents have been optimized for screen manipulation, but will still produce decent hardcopy printouts.
To print a topic:
1. Navigate to the topic you want to print.
2. Choose Print... from the File menu.
3. Be sure the Printer Command setting is correct for your environment and then click OK. Your document should
print to the selected (or default) printer. If you do not have a printer available on your network or you wish to save
the PostScript file to disk, you can do so: click the File button, enter a filename, and click OK.
Printing EnSight Manuals
You can print (all or portions of) the EnSight manuals from provided .pdf files. These files have been print optimized
and should produce reasonably high quality hardcopy. They have all been formatted for letter size paper. These files
are located in the doc/Manuals directory of the EnSight installation.
$CEI_HOME/ensight102/doc/Manuals/GettingStarted.pdf
$CEI_HOME/ensight102/doc/Manuals/HowTo.pdf
$CEI_HOME/ensight102/doc/Manuals/UserManual.pdf
$CEI_HOME/ensight102/doc/Manuals/InterfaceManual.pdf
You can open these manuals in the pdf reader and print any or all pages, or send them to an outside source for
printing, or order printed copies from our website.
CONTACTING CEI
If you have questions or problems, please contact CEI:
Computational Engineering International, Inc.
2166 N. Salem Street, Suite 101
Apex, NC 27523 USA
Email: support@ceisoftware.com
Hotline: 800-551-4448 (U.S.)
919-363-0883 (Non-U.S.)
Phone: 919-363-0883
FAX: 919-363-0833
WWW: http://www.ceisoftware.com

Page 5
HOW TO USE THE HOW TO MANUAL
Use The How To Manual
INTRODUCTION
The “How To” documentation provides quick access to various topics of interest. The topics provide basic and some
advanced usage information about a specific tool or feature of EnSight. Each topic will provide links to the
appropriate section of the EnSight User Manual as well as links to other applicable How To articles. When you hit a
Help button within the various dialogs in EnSight, you will generally be taken to one of the topics in the “How To”
manual.
Topics typically contain the following sections:
(See below for how to quickly jump to a specific section using document navigation.)
The header and footer of each article page provides simple navigation controls:
In addition, links to other documents are displayed as highlighted text. Note that all links and navigation controls are
colored blue.
Historically, an index was provided for this document. However, since the document is intended to be used online, the
index has been removed in favor of the more efficient “search” capabilities provided in pdf readers.
PDF READER
The EnSight online documentation is in .pdf format. EnSight uses a pdf reader such as the Acrobat® Reader software
from Adobe Systems, Inc., Xpdf, or Apple’s Preview. Any of these readers provide similar capabilities. For the
purposes of this documentation, the Acrobat Reader is pictured. A pdf reader provides much the same functionality
as a World Wide Web browser while providing greater control over document content quality. To use a different pdf
reader, simply set the environment variable CEI_PDFREADER to a different reader application.
The user interface for the various pdf readers is very simple and provides intuitive navigation controls. Keep in mind
that the pages were designed to be viewed at 100% magnification. Although you can use other magnification
settings, the quality of the dialog images may be degraded.
Introduction Introduction to the topic
Basic Operation Quick steps for simple usage
Advanced Usage Detailed information on topic
Other Notes Other items of interest
See Also Links to related topics and documentation
Return to How To
Topics List
Access this page
First page of
current topic Last page of
current topic
Previous page Next page

Page 6
HOW TO USE THE HOW TO MANUAL
Thus, in addition to the navigation controls within the document itself which are described above, a pdf reader
(Acrobat for example) provides quick access to various display options and navigation controls. A few of them are
pointed out for the Acrobat Reader below. Please use the Help option for your reader for a more comprehensive
description of its options.
The “Go back/forward” buttons are particularly useful – they operate somewhat like the “Back” and “Forward” buttons
on standard Web browsers. If your previously viewed page was in a different document, the pdf reader will
automatically reload the appropriate file and jump to the correct page. Note that most pdf readers also consider a
change of view (e.g. scrolling) or magnification as an event to remember in the back/forward list.
Grab and move page
Click and zoom in
(Ctl-click to zoom out)
Standard page
navigation
Standard page
magnification controls
Go back to last
viewed page
Go forward to previously
viewed page
Select Tool
Print For additional help
Each How To topic provides a set of bookmarks that match the standard
section titles. You can quickly navigate to one of these sections by using
the bookmark list in pdf reader.

Page 8
HOW TO ENSIGHT OVERVIEW
EnSight Overview
ENSIGHT OVERVIEW
EnSight is a powerful software package for the postprocessing, visualization, and animation of complex datasets.
Although EnSight is designed primarily for use with the results of computational analyses, it can also be used for
other types of data.
This document provides a very brief overview of EnSight. Consult Chapter 1 in the User Manual for additional
overview information. This article is divided into the following sections:
Graphical User Interface
Client / Server Architecture
EnSight’s Parts Concept
Online Documentation
Graphical User Interface
The graphical user interface () of EnSight contains the following major components:
Chapter 1 in the User Manual provides additional overview information on the user interface.
Main Menu
Feature Icon Bar
Sets the current feature and opens
the Feature Panel.
Parts List
All parts from your model as well as
created parts (e.g. clips, isosurfaces)
are listed here. Click an item to
select part(s) to operate on.
Quick Action Icon Bar
Features and Actions relevant to the last selected object
Message Area
Graphics Window showing inset plot and viewport
Information Button
Click to see information dialog.
Transformation Control Area
Buttons that control the current transformation operation (e.g.
rotate or translate) associated with mouse action in the Graphics
Window.
Note: This whole upper level of the is
referred to as the “Desktop”

Page 9
HOW TO ENSIGHT OVERVIEW
Client / Server Architecture
To facilitate the handling of large datasets and efficiently use networked resources, EnSight was designed to
distribute the postprocessing workload. Data I/O and all compute intensive functions are performed by a server
process. The server transmits 3D geometry (and other information) to a client running on a graphics workstation.
The client handles all user interface interaction and graphic rendering using the workstation’s built-in graphics
hardware.
The client and server each run as separate processes on one or more computers. When distributed between a
compute server and a graphics workstation, EnSight leverages the strengths of both machines. When both tasks
reside on the same machine, a stand-alone capability is achieved. The client–server architecture allows EnSight to
be used effectively, even on systems widely separated geographically.
Before EnSight can be used, the client and server must be connected. For standalone operation, you simply run the
“ensight102” script and the client and server are started and connected for you. For distributed operation (as well as
for standalone operation when more control is desired), there are two methods of achieving a connection: a manual
connection (described in the Getting Started manual) or an automatic connection (described in How To Connect
EnSight Client and Server).
EnSight’s cases feature allows you to postprocess multiple datasets simultaneously. Cases is implemented by
having a single client connected to multiple servers running on the same or different machines.
EnSight’s Parts Concept
One of the central concepts of EnSight is that of the part. A part is a named collection of elements (or cells) and
associated nodes. The nodes and/or elements may have zero or more variables (such as pressure or stress). All
components of a part share the same set of attributes (such as color or line width).
Parts are either built during the loading process (based on your computational mesh and associated surfaces) or
created during an EnSight session. Parts created during loading are called model parts.
All other parts are created during an EnSight session and are called created or derived parts. Created parts are built
using one or more other parts as the parent parts. The created parts are said to depend on the parent parts. If one or
more of the parent parts change, all parts depending on those parent parts are automatically recalculated and
redisplayed to reflect the change. As an example, consider the following case. A clipping plane is created through
some 3D computational domain and a contour is created on the clipping plane. The contour’s parent is the clipping
plane, and the clipping plane’s parent is the 3D domain. If the 3D domain is changed (e.g. the time step changes),
the clipping plane will first be recalculated, followed by the contour. In this way, part coherence is maintained.
Since operating on parts is integral to the operations you will perform in EnSight, it is important that you are aware of
the different ways this can be done. See How To Select Parts.
See the Introduction to Part Creation for more information on parts.
Online Documentation
Documentation for EnSight is available online. See How To Use the Online Documentation for more information as
well as hyperlinks to the main documents. Online documentation is accessed from the Main Help menu in the user
interface. In addition, major dialog windows contain Help buttons that will open a relevant “How To” article.
Server
Client
Stand-alone Operation
host1
Requests 3D objects
Server
Client
Distributed Operation
host2
host1

Page 10
HOW TO COMMAND LINE START-UP OPTIONS
Command Line Start-up Options
INTRODUCTION
There are a number of options that can be included on the command line when starting EnSight. The following tables
indicate the commands that can be issued for the EnSight script (ensight102), the EnSight client (ensight102.client),
the EnSight server (ensight102.server), or the EnSight server-of-servers (ensight102.sos). To see the most current
listing for any of these, issue one or more of the following:
Linux/Unix/Mac Windows
ensight102 -help
ensight102.client -help ensight102_client -help
ensight102.server -help ensight102_server -help
ensight102.sos -help ensight102_sos -help
BASIC USAGE
ensight102 [options]
or
ensight102.client [options]
Section 1. EnSight Startup/Client-Server Options
-ar <f> Restore from specified archive file “f”
-c [<host>[:<exe>]] Do an auto connection, with optional “host” machine and executable. If only -c is used, the
auto connection will be according to the values set in your ensight_conn_settings file (which is
created in your EnSight Defaults directory (located at
%HOMEDRIVE%%HOMEPATH%\(username)\.ensight102 commonly located at
C:\Users\username\ on Vista and Win7, C:\Documents and Settings\yourusername\ on older
Windows, ~/.ensight102 on Linux, and in ~/Library/Application Support/EnSight102 on the Mac)
if you connect via the Connect dialog). EnSight server will run on “host” if you include it after
the -c. And you can also optionally specify the server executable to run on said “host”.
-case <f> Read EnSight casefile name ”f” and display part loader
-ceishell [URL] Start up EnSight and connect with URL, default URL is as follows:
- connect://localhost?port=1109&timeout=60
-cierr Connect auto and ignore errors
-cip Send client’s IP address to the server for auto connect. The IP address will be used
instead of the internet hostname. This can be useful for clients which use dynamic IP
address assignment (i.e. dhcp). (However, it may not send the correct address if the
client computer has multiple network interfaces (e.g. WiFi and wired ethernet).)
-cm Do a manual connection of server
-ctx <f> Applies context file “f” as soon as connection is made
-custom Force the license manager to look for a custom token
-cwd <p> Sets the client working directory to the path specified by ‘p’
-d #
-display #
With multiple displays, enter a number and EnSight will start up on that display.
ensight102 -d :0.1 will start up on display 1
-delay_refresh Graphics window is not updated during command file playback, until finished
-extcfd Extended CFD variables automatically placed in variable list
-externalcmdport Specify the port on which to receive external commands. See -externalcmds.
-externalcmds Has EnSight start listening for a connection on port 1104 (or the port specified with the
-externalcmdport) for an external command stream. Once connected, all commands
must then come from the external source - as the commands will be ignored.
-gold Force the license manager to look for a hpc (formerly gold) token (while this still works,
please use -hpc)
-hpc Force the license manager to look for a hpc (formerly gold) token
-hide_console (Windows only) hides console on startup
-homecwd (Windows only) Sets the client working directory to HOME
-lite Start EnSight in Lite mode
-localhostname <host> Host name to force server(s) to use to connect to client
-no_delay_refresh Graphics window is updated during command file playback, until finished

Page 11
HOW TO COMMAND LINE START-UP OPTIONS
-p <f> Plays playfile “f” as soon as connection is made
-part_loader If a file is specified on the command line, this command will bring up the part loader to
allow for part selection. If a file is specified on the command line without this command,
all parts will be loaded.
-ports # Allows user specification of socket communication port. (passed on to server or sos)
-prdist # Specify a parallel rendering config file.
-pyargv . . . [-endpyargv] Anything on the command line between these two options will appear as ‘sys.argv’ in
Python. sys.argv[0] = “ensight” except if a python startup file is specified via -qtguipy, in
which case, that filename becomes sys.argv[0]. Note, -pyargv will swallow arguments
up to the end of the argument list or -endpyargv, whichever comes first.
-rsh <cmd> Remote shell program to use for automatic connection. (passed on to server or sos)
-security [#] Forces a handshake between the client and server using the # provided or a random
number
-slim_on_server Tells EnSight to look for the license key on the server.
-sos Set up to connect to the Server-of-Servers (ensight102.sos) instead of normal server.
-soshostname <host> Host name to force server(s) to use to connect to Server-of-Servers
-standard Force the license manager to look for a standard token
-timeout <#> Number of seconds to wait for server connection; default = 60, infinite = -1
-token_try_again <#> If can’t obtain a license token, try again in # minutes. where # is a float value. If neither
-token_wait_for nor -token_wait_until is specified, will try for 1 hour.
-token_wait_for # If can’t obtain a license token, try again for # minutes, where # is a float value.
If -token_try_again is not specified, sets -token_try_again to 10.
Supersedes -token_wait_until.
-token_wait_until # If can’t obtain a license token, try again until the time is hour:minute. If -token_try_again
is not specified, sets -token_try_again to 10.
-usage_feedback_always EnSight will ask if certain usage and message data can be forwarded back to CEI in
order to enhance our support. This will force EnSight to always send user data
regardless of the option that the user chooses. See the 10.2 Release Notes for more
details.
-usage_feedback_never EnSight will ask if certain usage and message data can be forwarded back to CEI in
order to enhance our support. This will force EnSight to never send user data regardless
of the option that the user chooses. See the 10.2 Release Notes for more details.
-v # Output verbosity 0 to 9, none, normal, medium, high, debug, and full, respectively
-version Prints out EnSight’s version number. (Does not start EnSight)
Section 2. EnSight Client Options
-E<extension_name> Call a method on a registered user-defined extension (see EnSight extension
mechanism and How to Produce Customized Access to Tools & Features) using
the name of the extension. There must be no space between the -E and the extension
name and the option can be used repeatedly in the same command line (the order of
execution matches the order on the command line). These calls are made just prior to
playing command files or python files after EnSight starts up. By default, the method
‘cmdLine()’ is invoked, but options exist to specify the method as well as parameters to
the method. The whole option may need to be enclosed in quotes if some of these latter
features are used.
For example, suppose you have a registered extension named ‘foo’. The following
usages are permitted.
‘-Efoo’ will call foo.cmdLine().
‘-Efoo.run()’ will call foo.run(), a specific object method.
‘-Efoo=5.7’ will call foo.cmdLine(5.7), the default method with a parameter.
‘-Efoo.bar(5.7,”hello”)’ will call foo.bar(5.7, “hello”), a specific object method with multiple
parameters.
-iconlblf <#> Icon label font size
-ignorexerr Ignore X window errors
-jumboicons Adds support for high resolution displays such as IBM Big Bertha (linux/unix) (see -mag)
-largeicons Uses larger feature icons in EnSight (non-Windows only)

Page 12
HOW TO COMMAND LINE START-UP OPTIONS
-mag # Magnification factor of menus, titlebars, icons using a float number that is greater than
1.0 on high resolution displays or power wall (Windows only).
-ni Will use text in place of icons
-smallscreen Sets window based on the screen size of 1024x768 (non-Windows only)
-smallicons Uses smaller feature icons in EnSight (default)
Section 3. EnSight Server Specific Options
-buffer_size <#> Set element buffer size for Unstructured Auto Distribute (passed from client down)
-gdbg Print some debugging info for EnSight format geometries (passed from client to server)
-iwd Ignore the working directory in the ensight.connect.default file
-maxoff Turns off maxsize checking (passed from client to server)
-no_ghosts Don’t produce ghosts in Unstructured Auto Distribute (passed from client down).
-use_ghosts Produce ghosts in Unstructured Auto Distribute (passed from client down). This action
can also be turned on by setting the environment variable:
UNSTRUCT_AUTODISTRIBUTE_USE_GHOSTS to 1.
-no_metric Don’t print metric for Unstructured Auto Distribute (passed from client down).
-use_metric Print metric for Unstructured Auto Distribute (passed from client down). This action can
also be turned on by setting the environment variable:
UNSTRUCT_AUTODISTRIBUTE_USE_METRIC to 1.
-readerdbg Prints user-defined-reader library loading information in shell window upon startup of
server (passed from client to server)
-scaleg <#> Provide scale factor to scale geometry by (passed from client to server)
-scalev <#> Provide scale factor to scale all vectors by (passed from client to server)
-swd <dir> Set the server working directory
-time Prints out timing information (passed from client to server)
-writerdbg Prints user-defined-writer library loading information in shell window upon startup of
server (passed from client to server)
Section 4. Miscellaneous Options
-h, -help, -Z Prints the usage list
-inputdbg Prints user-defined input device information
-nb No automatic backup recording
-no_file_locking Turns off file locking (lock()). Some systems don’t support this properly
-no_prefs Do not load saved user preferences (uses original defaults except for mouse button
settings)
-pal_tex Use 1D textures for color palettes.
-pal_rgb Use rgb colors for color palettes
-range10 Use palette ranges which are 10% in from the extremes
-silent Causes all stdout and stderr messages to be thrown away
-slimtimeout Allow slimd token to expire if idle.
-stderr <f> Cause all stderr messages to be written to the file.
-stdout <f> Causes all stdout messages to be written to the file.
Section 5. Rendering Options
-batch <width>< height> Batch mode with optional width and height.
-bbox Render only bounding boxes in the window (useful for detached displays with
-prsd2 option). (See How To Setup For Parallel Rendering)
-box_resolution <#> Resolution of bounding boxes for part culling (max 9). Implies -no_display_list
-ctarget <#> Set the number of chunks per server for parallel rendering (passed from client to
server(s)).
-dconfig Specify a display configuration file
-display_list Use OpenGL display lists

Page 13
HOW TO COMMAND LINE START-UP OPTIONS
Client Examples:
ensight102 -cm -p myplayfile
This will allow the user to do a manual connection, after which the “myplayfile” will be run.
ensight102 -c -gold -ports 1310 -case myfile.case
This will do an automatic connection (according to information in the user’s ensight.connect.default file) on port 1310,
using a gold seat. After the connection is made, the “myfile.case” casefile will be run.
ensight102 -rsh ssh (or ensight102.client -c -rsh ssh )
-egl Use embedded OpenGL which directly calls the graphics card and no longer needs
access to an X-server, nor uses the DISPLAY environmental variable. This option is only
available on Linux using nVidia cards with driver 3.58.16 or later when using batch or
when using parallel compositing.
-frustrum_cull Use frustrum culling where possible
-glconfig Prints current OpenGL configuration parameter defaults to screen
-glsw Forces use of software implementation of OpenGL, bypassing the hardware graphics
card (same as -X)
-gl Sets line drawing mode to draw polygons
-ogl Sets line drawing mode to draw lines
-no_display_list Force EnSight to use immediate mode graphics
-no_frustrum_cull Do not use frustrum culling
-norm_per_vert Use one normal per vertex for flat-shading
-norm_per_poly Use one normal per polygon for flat-shading
-multi_sampling Turns MultiSampling on
-multi_sampling_sw Use software MultiSampling
-no_multi_sampling Do not use MultiSampling
-no_start_screen Ignore the start screen image (Good for HP using TGS OpenGL)
-num_samples <#> Specify number of samples for software multi-sampling
-num_samples_st <#> Specify number of samples for hardware stereo multi-sampling
-occlusion_test Use the HP occlusion extension if available
-no_occlusion_test Do not use the HP occlusion extension
-stencil_buff Use the OpenGL stencil buffer (even if not enabled by default)
-no_stencil_buff Assumes there is not a working stencil buffer (some Windows video cards)
-double_buffer Use double-buffering for the graphics window (default)
-single_buffer Do not use double-buffering
-sort_first Sets the default parallel rendering sorting method to be the sort first method
-sort_last Sets the default parallel rendering sorting method to be the sort last method
-unmapdd Don’t map the detached display on startup
-vcount <#> Specifies the maximum number of vertices between begin/end pairs in a OpenGL
display list object. This option is useful for certain graphics cards (most modern Nvidia
based) when dealing with large display objects - it will usually impact the performance of
creating the display list objects. Every graphics card/driver will be optimal at a different
vcount value so testing is necessary to achieve maximum performance.
-X Starts the X version of EnSight (uses Mesa OpenGL instead of native OpenGL,
bypassing the hardware graphics card. This is the same as -glsw)
Section 6. Resource Options
-chres <f> Collab hub resource filename
-res <f> Resource filename
Section 7. Distributed Rendering (HPC & DR) Specific Options
-offscreen Batch offscreen rendering
-onscreen Batch onscreen rendering
-pc Compositing mode

Page 14
HOW TO COMMAND LINE START-UP OPTIONS
This will use ssh as the remote shell for an automatic connection.
Server Examples (when started manually):
ensight102.server -c clientmachine -readerdbg
Specifies “clientmachine” as the machine on which the client is running, and that information on user-defined-reader
library loading should be printed out.
ensight102.server -ports 1310 -scaleg 3.7 -scalev 3.7
Specifies that communication is to occur on port 1310, and that the geometry and all vectors are to be scaled by a
factor of 3.7.
ensight102.server [options]
-buffer_size <#> Set element buffer size for Unstructured Auto Distribute
-c <host> “host” indicates where the client is running
-ctarget <#> Set the number of chunks per server for parallel rendering.
-ctries <#> The number of times (1 second per try) to try to connect client and server.
-ether Ethernet device name such as ln0
-gdbg Print some debugging info for EnSight format geometries
-h, -help Prints the usage list
-maxoff Turns off maxsize checking
-no_ghosts Don’t produce ghosts in Unstructured Auto Distribute
-no_metric Don’t print metric for Unstructured Auto Distribute
-pipe Forces the server to use a named pipe connection (must be on same machine)
-ports <#> Allows user specification of socket communication port.
-readerdbg Prints user-defined-reader lib loading information in shell window upon startup of server
-scaleg <#> Provide scale factor to scale geometry by
-scalev <#> Provide scale factor to scale all vectors by
-security <#> Provide number for client to server security check or else random token is generated
-sock Forces the server to use a socket connection
-soshostname <host> Allows different name for servers to connect back to Server-of-Servers with
-time Prints out timing information
-writerdbg Prints user-defined-reader lib loading information in shell window upon startup of server
ensight102.sos [options]
-buffer_size <#> Set element buffer size for Unstructured Auto Distribute (passes on to servers)
-c <host> “host” indicates where the client is running
-cports Allows specification of socket communication port to the client.
See also -ports, -sports.
-ctarget <#> Set the number of chunks per server for parallel rendering (passes on to servers).
-ctries <#> The number of times (1 second per try) to try to connect client and server.
-ether Ethernet device name such as ln0
-gdbg Print some debugging info for EnSight format geometries (passes on to servers)
-h, -help Prints the usage list
-maxoff Turns off maxsize checking (passes on to servers)
-no_ghosts Don’t produce ghosts in Unstructured Auto Distribute (passes on to servers)
-no_metric Don’t print metric for Unstructured Auto Distribute (passes on to servers)
-pipe Forces the server to use a named pipe connection (must be on same machine) (passes
on to servers)
-ports <#> Allows user specification of socket communication port. (passes on to servers)
Has the effect of setting -cports and -sports to be the same.
-readerdbg Prints user-defined-reader library loading information in shell window upon startup of
server (passes on to servers)
-rsh <cmd> Remote shell program to use for automatic connection of servers. (passes on to servers)

Page 15
HOW TO COMMAND LINE START-UP OPTIONS
SOS (Server-of-Servers) Examples (when started manually):
ensight102.sos -c clientmachinename -soshostname sosmachinename
Specifies “clientmachinename” as the machine on which the client is running, and that the individual servers should
connect back to “sosmachinename”.
ensight102.sos -readerdbg -gdbg
Specifies that the sos and any servers print out user-defined-reader library loading information, and that the servers
print out EnSight data format geometry loading information.
-scaleg <#> Provide scale factor to scale geometry by (passes on to servers)
-scalev <#> Provide scale factor to scale all vectors by (passes on to server)
-security <#> Provide number for client to server security check (passes on to servers)
-slog <f> Create SOS log file ‘f’
-sock Forces the server to use a socket connection
-soshostname <host> Allows different name for servers to connect back to Server-of-Servers with (passes on
to servers)
-sports Allows specification of socket communication port to the servers.
See also -ports, -cports.
-time Prints out timing information (passes on to servers)
-writerdbg Prints user-defined-reader library loading information in shell window upon startup of
server (passes on to servers)

Page 16
HOW TO USE ENVIRONMENT VARIABLES
Use Environment Variables
INTRODUCTION
There are a number of environment variables that can be set to control and modify aspects of EnSight. These are
generally described in sections of the documentation where they apply. However, for convenience, a summary of
them is indicated below. All, except those indicated otherwise, are optional.
Note: None of the environment variables associated with specific user defined readers and writers are included here.
See the appropriate README files or other documentation for each reader/writer.
BASIC USAGE
List sorted by Category:
Name Location Category Description
CEI_FONT_GLYPHCACHESIZE Client Font Number of font characters to keep in memory at a given
time (default 500). Increasing this number will use more
memory but may increase rendering speed if many
different characters are in use.
CEI_FONT_NOSYSTEMFONTS Client Font Disable the loading of fonts from the system directories,
and use only the fonts provided by CEI.
CEI_FONTPATH Client Font A list of ":" separated directories (";" on Windows) where
EnSight looks for .ttf and .ttc font files.
ENSIGHT_FONT_DEFAULT_ANNOT Client Font Specify family to be used for annotation defaults
ENSIGHT_FONT_DEFAULT_ANNOT_STYLE Client Font Specify style to be used for annotation defaults
ENSIGHT_FONT_DEFAULT_OUTLINE Client Font Specify family to be used for ID and axis defaults
ENSIGHT_FONT_DEFAULT_OUTLINE_SCALE Client Font Specify the relative scale for the outline font. (The value
100.0 is the default, 200.0 is 2x larger, 50.0 is 1/2 size).
ENSIGHT_FONT_DEFAULT_OUTLINE_STYLE Client Font Specify style to be used for ID and axis defaults
ENSIGHT_FONT_DEFAULT_SYMBOL Client Font Specify family to be used instead of the symbol font
ENSIGHT_FONT_DEFAULT_SYMBOL_STYLE Client Font Specify style to be used with the symbol font
ENSIGHT10_FIXED_FONT_SIZE Client Font defines font size - expecting range between 10 and 100
(old)
CEI_ENABLE_PBUF Client Graphics Enable/disable the use of pbuffers for off-screen rendering
CEI_ENABLE_PMAP Client Graphics Enable/disable the use of pixmaps for off-screen rendering
CEI_PIXELFORMAT Client Graphics Specify pixel format for mono rendering
CEI_PIXELFORMAT_ST Client Graphics Specify pixel format for stereo rendering
CVF_NO_WM_OVERRIDE Client Graphics Change the behavior of detached displays so that the
'OverrideRedirect' attribute is not used on the Windows.
ENSIGHT_PICK_SCALE Client Graphics If > 1, modifies the scaling of the GL viewport
CEI_RSH Client/
SoS
Networking Alternative to default ssh command
CVF_COMM2_NAGLE Client/
Server
Networking Enable Nagle (RFC896) network feature (on by default).
ENSIGHT10_SOCKBUF Client/
SoS/
Server
Networking Sets socket buffer size (can be different between client and
server)
DISPLAY Client Other Do not remote the display from a different machine as this
is inefficient and prone to problems. Run the client on your
local machine and the server remotely and connect them
as EnSight is optimized for this configuration.
ENSIGHT10_MAX_CTHREADS Client Parallel The maximum number of threads to use for each EnSight
client. Threads in the client are used to accelerate sorting
of transparent surfaces. If not defined, then the EnSight
client chooses the number of threads based on the number
of processors available and license limitations.

Page 17
HOW TO USE ENVIRONMENT VARIABLES
ENSIGHT10_MAX_SOSTHREADS SoS Parallel The maximum number of threads to use on the server of
server in order to start up server processes in parallel
rather than serially. If not defined, then EnSight chooses
the number of threads based on the number of processors
available and license limitations.
ENSIGHT10_MAX_THREADS Server Parallel The maximum number of threads to use for each EnSight
server. Threads are used to accelerate the computation of
streamlines, clips, isosurfaces, and other compute-
intensive operations. If not defined, then the EnSight
server chooses the number of threads based on the
number of processors available and license limitations.
ENSIGHT10_RES Client/
SoS/
Collab
Resources Specify a resource file name that the client reads
ENSIGHT10_SERVER_HOSTS Client/
SoS
Resources Specify quoted strings of space delimited host names (e.g.
“host1 host2 host1 host3”) to be used for EnSight servers.
The host names are used in the order they occur. A host
name may occur multiple times
LSB_MCPU_HOSTS Client/
SoS
Resources If either the ‘-use_lsf_for_servers’ or ‘-
use_lsf_for_renderers’ command line options are
specified, then the client will evaluate this environment
variable for resources. The environment variable specifies
a quoted string such as “host1 5 host2 4 host3 1”
which indicates 5 CPUs should be used on host1, 4 CPUs
should be used on host2, and 1 CPU should be used on
host3. The hosts will be used in a round-robin fashion.
CEI_ARCH All Path Description of hardware & OS (set automatically on
EnSight startup)
CEI_HOME All Path Location of EnSight installation (required)
CEI_PDFREADER Client Path Application for reading EnSight .pdf help files
CEI_PYTHONHOME Client Path Point to a different Python runtime library. Default is
CEI_HOME/apex31/machines/CEI_ARCH/python271
CEI_UDILPATH Client Path A list of ":" separated directories (";" on Windows) where
EnSight looks for user-defined image libraries.
ENSIGHT_PATHREPLACE Client Path Replaces the data path with the path found in this
environment variable
PATH Client Path Must include $CEI_HOME/bin
TMPDIR Server Path Location for temporary files. Default is usually /tmp or /usr/
tmp
CEI_CONTROLLER_KEY Client Tracking See CEI_INPUT
CEI_INPUT Client Tracking To specify the tracking library. To select trackd, use:
setenv CEI_INPUT trackd (for csh or equivalent users)
The value of CEI_INPUT can either be a fully-qualified
path and filename or simply the name of the driver, in
which case EnSight will load the library libuserd_input.so
from directory:
$CEI_HOME/apex31/machines/$CEI_ARCH/udi/
$CEI_INPUT/
For the trackd interface you will also need to set:
CEI_TRACKER_KEY <num>
CEI_CONTROLLER_KEY <num>
CEI_TRACKD_DEBUG Client Tracking Turn on debug information from the trackD user defined
input library.
CEI_TRACKER_KEY Client Tracking See CEI_INPUT
ENSIGHT10_INPUT Client Tracking Input device to use for EnSight (same as CEI_INPUT)
ENSIGHT10_READER Server User Path to the location of additional user-defined readers
ENSIGHT10_READER_ Server User Set to 0 in order to not load user-defined extra. Any other
setting (or unset) loads extra.
ENSIGHT10_UDMF Server User Sets directory location of user defined math functions to be
loaded by EnSight at startup
Name Location Category Description

Page 18
HOW TO USE ENVIRONMENT VARIABLES
ENSIGHT10_UDW Server User Sets directory location of user defined writers to be loaded
by Ensight at startup
UNSTRUCT_AUTODISTRIBUTE_USE_GHOSTS
Server Autodistribute Sets unstructured server autodistribution to use ghost
processing. (Same effect as, and takes precedence over,
using -use_ghosts command line argument)
UNSTRUCT_AUTODISTRIBUTE_USE_METRIC
Server Autodistribute Sets unstructured server autodistribution to calculate the
ghost metric. (Same effect as, and takes precedence over,
using -use_metric command line argument)
ENSIGHT_FORCE_POLYHEDRAL_CLIPCUT n
Server Part Creation EnSight can clip or cut with the traditional algorithm that
tesselates the element faces with additional face elements
or the polyhedral algorithm that shows the clipped/cut
faces with the exact representation of the element face. If
you always want to see a clip or cut face without additional
tesselation, then use option 2.
n = 0, 3D Zoo elements clipped or cut with traditional
algorithm.
n=1, Treat 3D Zoo elements as polyhedral only if there are
polyhedral elements in the part when it is clipped or cut.
n=2, Treat 3D Zoo elements as polyhedra.
SLIMD8_SERVERS
Server License EnSight can set slimd8 server hostname(s) and port.
setenv SLIMD8_SERVERS “huey:7790”
setenv SLIMD8_SERVERS “huey:7790; dewey:8890”
Name Location Category Description

Page 19
HOW TO CONNECT ENSIGHT CLIENT & SERVER
Connect EnSight Client & Server
INTRODUCTION
EnSight is a distributed application with a client that manages the user interface and graphics, and a server that reads
data and performs compute-intensive calculations. The client and server each run as separate processes on one or
more computers. Before EnSight can do anything useful, the client process must be connected to the server process.
For a simple operation on the same machine (standalone), the client and server processes will be started and
connected for you. If you desire more control over the standalone operation or want to take advantage of a
distributed operation, you have the options described below.
Necessary Prerequisites
EnSight must have been installed and the CEI_HOME and the command search path set properly. If you successfully
performed the installation as described in the Installation Guide, then these settings should be correct.
(See $CEI_HOME/ensight102/doc/Manuals/Installation.pdf if you need this manual.)
SIMPLE STANDALONE OPERATION (CONNECTION OCCURS AUTOMATICALLY)
If you want to run Ensight client and server (or SOS) on the same machine (standalone), and you have not changed
the default automatic connections to be elsewhere, you can simply do the following:
To Start Ensight:
Non Windows:
At the prompt In a shell window, type:
ensight102
Windows:
To Start Ensight in SOS mode: (reminder that you need a gold license key for this)
Non Windows:
At the prompt in a shell window, type:
ensight102 -sos
Windows:
Note: To add another dataset or replace the existing dataset (which EnSight refers to as another case), see Adding Another Case
below
$ ensight102
Either double click the EnSight
10.2 icon on the desktop,
or
Start > CEI > EnSight 10.2
$ ensight102 -sos
Start > CEI > EnSight 10.2 SOS

Page 20
HOW TO CONNECT ENSIGHT CLIENT & SERVER
CONNECTING MANUALLY
ensight102.client -cm will start a client that expects a manual connection and will prompt the user to start the
server/SOS manually. You can do something like the following:
The Server should now make the connection. To see if the connection is successful, you can click on the Information
button in the Tools Icon Bar on the Desktop. You should see “Connection accepted” in the EnSight Message Window
Note: the machine you are running the client on will be referred to as CLIENT_HOST.
the machine you desire to run the server on will be referred to as SERVER_HOST
In a second window, log onto the SERVER_HOST machine using telnet (or ssh or equivalent).
The SERVER_HOST does not have to be of the same operating system as the CLIENT_HOST.
Start the ensight server on the SERVER_HOST machine, using the appropriate script and the -c option.
ensight102.server -c CLIENT_HOST
or for SOS
ensight102.sos -c CLIENT_HOST
The -c CLIENT_HOST option tells the EnSight Server to connect to the EnSight Client listening on CLIENT_HOST.
Example if doing a
telnet into a
SERVER_HOST which is a
windows machine
Example if doing a telnet into a
SERVER_HOST which is a linux machine.
Example of doing a telnet from a
linux machine to a unix machine.
Example of doing a telnet
from a windows machine to
a windows machine.
ensight10_server -c wclient
ensight10.server -c myclient

Page 21
HOW TO CONNECT ENSIGHT CLIENT & SERVER
which comes up. You can also check the Connection Details under the Case menu. Licensing information should also
appear in the Graphics Window. If the connection failed, please consult Manual Connection Troubleshooting below
and Troubleshooting the Connection in the Installation Guide before contacting CEI support.
Manual Connection Troubleshooting
A manual connection can fail for any of several reasons. Because of the complexity of networking and customized
computing environments, we recommend that you consult your local system administrator and/or CEI support if the
following remedies fail to resolve the problem.
ADVANCED USAGE
Command Line Options
Command line options can be used to streamline many of the connection processes.
.
Problem Probable Causes Solutions
For Unix Systems:
Unable to telnet into the
SERVER_HOST machine
Telnet service not allowed or not
running on the SERVER_HOST
machine.
Get system administration help to be able to perform this
operation. It may be that your site requires the use of ssh
or some other equivalent.
Ensight server does not start on
SERVER_HOST machine.
EnSight is not properly installed on
the SERVER_HOST
Verify the installation on the SERVER_HOST as described
in the Installation Guide. Making sure that the proper
environment variables and command path have been set.
Startup Command Description
ensight102
ensight102.client -c Starts up client and autoconnects to localhost.*
ensight102 -sos
ensight102.client -c -sos Starts up client and auto connects to sos on localhost. This requires a gold key.*
ensight102.client Starts up client with no connection.*
ensight102.client -c hostname Starts up client and auto connects to the hostname. The host localhost is are used is used if
hostname is not listed.*
ensight102.client -c hostname -sos Starts up client and auto connects the sos to the host specified.*
ensight102.client -cm Starts up a client, and prompts for a manual connection.*
* Note that if you are starting from a PC in a command window, change the period to an underscore: ensight102.client becomes
ensight102_client. Also if you specify a resource file to use in the start up, it takes precedence over connection settings.

Page 22
HOW TO CONNECT ENSIGHT CLIENT & SERVER
Adding Another Case
You would add another case when you want to add an additional dataset (called a “case”) to your EnSight session.
This is often used for things like A-B comparisons or for assembling components that have been analyzed in different
solvers. You can also use the process described below to replace the current case with a new one without having to
restart EnSight.
You can add or replace cases
directly from the Case menu,
From either option, this dialog will appear
when adding a case.
If you keep the current case the optional
settings are available and will be applied
to the new added case.
Create viewport - If checked the added
case will appear in a new viewport.
Apply Context - The context from the first
case is applied to the new case.
Clone current connection - Use the same
server connection as the first case.
Manual connection - Add the new case
using a manual connection even if the
first connection was auto connected.
Reflect model - Reflect the new case
about an axis using the Origin specified.
For more information on Cases, see How To Load Multiple Datasets (Cases)

Page 23
HOW TO CONNECT ENSIGHT CLIENT & SERVER
Other Auto connection requirements
The auto-connect mechanism requires that certain conditions exist in your computing environment for auto
connections to work when running the EnSight server or SOS process on a different computer. Specifically, EnSight
depends on a correctly working 'ssh' command that doesn't require passwords. The notes below assume using the
default 'ssh' command.
Alternatively, EnSight can use a replacement command for 'ssh' as long as that replacement command follows 'ssh'
syntax or ‘rsh’ syntax
(i.e. rsh [-l username] hostname command)
Should you wish to use an alternative command for 'ssh', you may specify this command on the EnSight command
line with the '-ssh alternative_command_name' command line option where 'alternative_command_name' is the
replacement command. Typically, one of these mechanisms is used in computing environments that use either 'ssh'
or 'k5rsh'.
On Unix Systems:
1. You have a .cshrc file (even if you are running some other command shell such as /bin/sh) in your home
directory on the EnSight server host that contains valid settings for CEI_HOME, and that your path variable
includes the bin directory of CEI_HOME. For example, if your EnSight is installed in /usr/local/CEI and you
are running EnSight on an Linux or Unix system (other architectures use a different library path variable), your
.cshrc should contain:
setenv CEI_HOME /usr/local/CEI
set path = ( $path $CEI_HOME/bin )
To verify the settings, simply try to start the server.
2. Your .cshrc file (or files sourced or executed from there) has no commands that cause output to be written (e.g.
date or pwd). Any output can interfere with EnSight server startup.
3. You can successfully execute a remote shell command from the client host system to the server host system. The
name of the remote shell command varies from system to system. While logged on to the client host system,
execute one of the following (where serverhost is the name of your server host system):
ssh serverhost date
If successful, the command should print the current date.
If any of these conditions are not met, you will be unable to establish a connection automatically and will have to use
the manual connection mechanism. Note that it is not uncommon for system administrators to disable operation of all
remote commands for security reasons. Consult your local system administrator for help or more information.
Note that if you wish to use ‘rsh’ instead of ‘ssh’, then you need to have a valid .rhosts file in your home directory
on all systems on which you wish to run the EnSight server. The file permission for this file must be such that only the
owner (you) has write permission (e.g. chmod 600 ~/.rhosts). A .rhosts file grants permission for certain
commands (e.g. rsh or rlogin) originating on a remote host to execute on the system containing the .rhosts file.
For example, the following line grants permission for remote commands from host clienthost executed by user
username to execute on the system containing the .rhosts file:
clienthost username
There should be one line like this for every client host system that you wish to be able issue remote commands from.
It is sometimes necessary to add an additional line for each client host of the form clienthost.domain.com
username (where domain.com should be changed to the full Internet domain name of the client host system). To
verify this, simply try to rsh to the remote machine.
On Windows Systems:
1. You have the EnSight server (ensight102_server) installed on the same system as your EnSight client (if you plan
to connect to the same system)
---- OR ----
2. You can successfully execute a remote shell command from the client host system to the server host system.

Page 24
HOW TO CONNECT ENSIGHT CLIENT & SERVER
Note: By default EnSight will use the ‘ssh’ command. ssh is not a default component on Windows
workstations and must be installed by the user from one of many third party sources. However, Windows
does include a rsh command which EnSight can optionally use. Note, however, only systems running
Windows Server have the RSH service and can respond by executing the EnSight server.
The name of the remote shell command varies from system to system. While logged on to the client host system,
execute one of the following (where serverhost is the name of your server host system):
ssh serverhost date
rsh serverhost date
If successful, the command should print the current date.
If condition 1. or 2. is not met, you will be unable to establish a connection automatically and will have to use the
manual connection mechanism. Note that it is not uncommon for system administrators to disable operation of all
remote commands for security reasons. Consult your local system administrator for help or more information.
Manual connection Troubleshooting
An automatic connection can fail for any of several reasons. Because of the complexity of networking and customized
computing environments, we recommend that you consult your local system administrator and/or CEI support if the
following remedies fail to resolve the problem.
Problem Probable Causes Solutions
For Unix Systems:
Automatic connection fails or is
refused
Server (remote) host name is
incorrect for some reason.
Is the server host entered correctly in the Hostname
field? Try running telnet serverhost from the client
machine.
Incorrect or missing .rhosts file
in your home directory on the
server host.
Follow the instructions on .rhosts files (as described in
the Basic Operation section, step 1 above). If you cannot
successfully execute a remote command (such rlogin
or rsh) from the client host to the server host, you will not
be able to connect automatically.
The user account (i.e. login name)
on the client host does not exist on
the server host.
Enter your login name on the server host in the Login
name field.
The server executable is not found
on the server system
Is the entry in the Executable [path/]name field correct? If
the server executable is NOT in your default command
search path on the server, you must include the full path
name to the executable. For example, /usr/local/
CEI/ensight102/bin/ensight102.server.
Your .cshrc does not contain a
valid setting for CEI_HOME.
Add the appropriate line as described in the Basic
Operation section, step 2 above.
Your .cshrc file (or files executed
by it) causes output to be written.
This is interpreted as a server
startup error.
Remove the offending commands from your .cshrc file.
As a test, do the following:
% cd
% mv .cshrc .cshrc-SAVE
Create a new .cshrc file that contains only the lines to set
CEI_HOME and path as described in the Basic
Operation section, step 2 above. If that test works, you
will need to examine your .cshrc to find and remove the
offending lines.
For Windows Systems:
Automatic connection fails or is
refused (trying to connect to
same host system)
Server not installed or not
executable.
You should be able to locate the server executable
(ensight102_server) using Windows Explorer. Double
click on it and see if a console window opens with “This is
EnSight Server 10.2” etc. If this doesn’t happen, refer to
“Troubleshooting the Installation” in the Getting Started
Manual.

Page 25
HOW TO CONNECT ENSIGHT CLIENT & SERVER
Other Notes
Connection Name - Hostname flexibility
When you specify '-c hostname' on the command line, EnSight will start up a server on the hostname.
Users with complex computing environments should migrate to using ceishell (see the demo by typing ceistart102).
Network ports used by EnSight and SLiM
Client/Server Mode
The EnSight client connects to the slimd8 license manager via TCP port 7790 typically. This actual port used is
defined in $CEI_HOME/license8/slim8.key and appears on the 'slimd' line as the number after 'slimd'.
The client listens for connections from the EnSight server on TCP port 1106. It also communicates with the
collaborative hub on TCP port 1107. If the client is listening for external commands, it will use TCP port 1104.
If port 1106 is used by another process, EnSight will give you an error "Address already in use", and there are two
possible solutions:
1: use another port with command line option "-ports ####" for both client and server (inconvenient)
2: kill (or have root kill) the process that has the port locked.
For example, determine the process:
/sbin/fuser 1106/tcp
the result comes back....
1106/tcp: 314159o
in this case you(or root, if necessary) would kill it...
kill -9 314159
Note that the specific commands to use will vary depending on operating system.
Path to the server is incorrect If using the EnSight Connect dialog, check that the
correct path is specified in the “Executable” field.
If running from the ensight102 command, first ensure that
your PATH environment variable contains the paths for
the ensight102 “client” and “server” directories. You can
check and correct the value of PATH in the Start
>Settings >ControlPanel >System_Environment dialog.
Incorrect hostname entered in the
“Hostname” field of the Connection
settings dialog.
Make sure that the hostname is correct, including the
case of all letters. The ONLY way to confidently see the
hostname (in the correct case) from Windows is to open
a Command Prompt window and type:
> ipconfig /all
The Host Name will be one of the first things listed.
Automatic connection fails or is
refused (trying to connect to a
remote server)
Same causes as for a Unix system See “For Unix Systems” portion of this table above.
Problem Probable Causes Solutions

Page 26
HOW TO CONNECT ENSIGHT CLIENT & SERVER
Server of Server Mode
When running in Server of Server mode (SOS), the SOS is threaded and will start up server processes in parallel
(subject to CPU availability and license restrictions) using ports 1110 through 1117. To limit the number of threads,
set the environmental variable ENSIGHT10_MAX_SOSTHREADS to the maximum number of threads (max is 8).
Distributed Renderer - used by parallel compositor
Ports 8739 to 8789 must be available to EnSight for its own internal TCP/IP connections when running the parallel
compositor in EnSight DR.
SEE ALSO
Chapter 2 of the Getting Started Manual
How To Load Multiple Datasets (Cases)

Page 27
HOW TO READ DATA
Read and Load Data
Read Data
INTRODUCTION
EnSight supports a number of file formats common in computational analysis. In addition, CEI has defined generic
data formats (in both ASCII and binary versions) that can be used for both structured and unstructured data. In many
cases analysis codes output this data directly (i.e. FLUENT, STAR-CD, KIVA, etc.)
BASIC OPERATION
Simple Interface
Reading data into Ensight can be accomplished with a
“simple interface” if an association is known for the data
format type and you wish to load all parts.
Otherwise, the more traditional method for loading data
into EnSight can be accomplished with the “advanced
interface”. It provides more control over the reading of
data files and the part creation process. The first step is
the selection of appropriate files. The second step is the
loading of parts. Both steps have many similarities
regardless of the data format. These basic steps are
described below. Variations from the methods shown will
be described in Chapter 2 (Reader Basics) of the User
Manual for the various formats. Both of these methods
are accessed under File->Open...
1. Select File > Open...
2. If not already selected,
toggle Simple Interface
on.
3. Navigate to the desired
directory using typical
navigation methods.
4. Filter the list using the
File type, if desired.
5. Select the desired file.
This file’s extension is what
will be mapped to a reader
in the
ensight_reader_extension.
map.
6. Click Okay
(Double clicking the file in
step 4. is also allowed.)
The simple interface method of reading data into EnSight works for most formats and requires a file extension-to-
reader mapping file (ensight_reader_extension.map). This file can reside in the site_preferences directory and/or
each user can have his own personal one in his personal EnSight defaults directory (located at
%HOMEDRIVE%%HOMEPATH%\(username)\.ensight102 commonly located at C:\Users\username\.ensight102 on Vista
and Win7 and newer, C:\Documents and Settings\yourusername\.ensight102 on older Windows, and ~/.ensight102 on
Linux, and in ~/Library/Application Support/EnSight102 on the Mac). A sample of this file is shown below. The mapping
file associates file extensions to readers. If this file is not provided or an association is not known, or the format
doesn’t allow it due to required intermediate information (such as Plot3D currently), the simple interface method
cannot be used and the OK button will not be active. One is then required to use the advanced Interface method

Page 28
HOW TO READ DATA
At this point (provided the association is successful and the data is readable) all parts of the model will be loaded into
EnSight and will appear in the graphics screen and in the Parts List. If the association is not successful, an error
message will result.
Note that variables in the data are also listed at this point. They have not yet been activated. The process for doing so
will be discussed in How To Activate Variables.
Ensight_reader_extension.map file example:
The following is a sample containing associations for EnSight Case, EnSight5, STL and MSC/Dytran:
EnSight file extension to format association file
Version 1.0
#
# Comment lines start with a #
#
#
# The format of this file is as follows:
#
# READER_NAME: reader name as it appears in the Format chooser in the EnSight Data Reader dialog
# NUM_FILE_1: the number of file_1_ext lines to follow
# FILE_1_EXT: the extension that follows a file name minus the “.”, i.e., “geo”, “case”, etc.
# There should be one definition after the :. Multiple FILE_1_EXT lines may exist
# NUM_FILE_2: the number of file_2_ext lines to follow
# FILE_2_EXT: the extension of a second file that will act as the result file. This is only used
# for formats that require two file names. As with FILE_1_EXT, there may be multiple
# FILE_2_EXT lines.
# ELEMENT_REP: A key word that describes how the parts will be loaded (all parts will be loaded the
# same way). One of the following:
# “3D border, 2D full”
# “3D feature, 2D full”
# “3D nonvisual, 2D full”
# “Border”
# “Feature angle”
# “Bounding Box”
# “Full”
# “Non Visual”
# If option is not set then 3D border, 2D full is used
# READ_BEFORE: (optional) The name of a command file to play before reading the file(s)

Page 29
HOW TO READ DATA
# READ_AFTER: (optional) The name of a command file to read after loading the parts
# Definition for Case files
READER_NAME: Case
NUM_FILE_1: 2
FILE_1_EXT: case
FILE_1_EXT: encas
ELEMENT_REP: 3D feature, 2D full
# Definition for EnSight5 files
READER_NAME: EnSight 5
NUM_FILE_1: 2
FILE_1_EXT: geo
FILE_1_EXT: GEOM
NUM_FILE_2: 2
FILE_2_EXT: res
FILE_2_EXT: RESULTS
ELEMENT_REP: 3D feature, 2D full
# Definition for STL files
READER_NAME: STL
NUM_FILE_1: 4
FILE_1_EXT: stl
FILE_1_EXT: STL
FILE_1_EXT: xct
FILE_1_EXT: XCT
ELEMENT_REP: 3D feature, 2D full
# Definition for Dytran files
READER_NAME: MSC/Dytran
NUM_FILE_1: 2
FILE_1_EXT: dat
FILE_1_EXT: ARC
ELEMENT_REP: 3D border, 2D full
READ_AFTER: read_after_dytran.enc

Page 30
HOW TO READ DATA
Advanced Interface
When using the advanced method, the user similarly specifies the files, but can also specify the format, and other
format and time options. He then has control over whether all parts will be loaded into EnSight, or whether EnSight
will be informed of their existence, but not actually be loaded yet.
1. Select File > Open...
2. Toggle Advanced
Interface, if not already
set.
3. Navigate to the desired
directory using typical
navigation methods.
4. Filter the list using the
File type, if desired.
5. Select the desired file.
This file’s extension is what will
be mapped to a reader in the
ensight_reader_extension.map.
6. Click the applicable Set
Button(s) (in this case, the
Set d3plot button)
If a mapping is known, the
correct Format will be
automatically chosen for you.
7. Select the correct Format
- if not already correct.
The list shown is dependent on
the presence of internal and
user-defined readers at your
site, and in your preference
settings. For the list of
available readers please see
Native EnSight Format
Readers or Other Readers.
8. Optionally set any
Format options.
Note the options presented will
vary according to the data
format.
Big-Endian is only necessary for
legacy binary case gold files
written on Unix platforms.
All but the Casefile format will
allow input of measured point
data. See EnSight5 Measured/
Particle File Format. Plot3d,
Casefile, and Special HDF5
structured formats will provide a
field for a boundary file. See
EnSight Boundary File
Format
(Continued on next page)

Page 31
HOW TO READ DATA
The parts in the model will now appear in the Parts list in EnSight. If you did a Load all parts, the parts will be loaded
and active and will also be visible in the Graphics window.
9. Optionally set any Time
options.
.
10. Click Select parts to load...
If you want to pick and choose which
parts get loaded.
or click Load all parts
If you want to have all parts loaded.

Page 33
HOW TO READ DATA
Note that all parts in the case can be loaded by right clicking on the parent Case 1, instead of individual parts.
If there are any exceptions to this general process, please see the details for specific readers in Chapter 2 (Other
Readers) of the User Manual
SEE ALSO
How To Use ens_checker
And if your data is unstructured, when you click on Load
part, you will see a dialog like that to the right, wherein
you can set:
1. The initial Visual Representation to use
2 A description other than the default, if desired.
And click Load as new part to get the part created.
If the data is structured, then you will
see a dialog like the one to the right,
wherein you can set:
1. From, To, and Step IJK values
for the selected part(s).
The From and To values are
inclusive.
Valid values in the From and To
fields are numbers advancing from
1(the min for each part), or
numbers decreasing from 0(the
max for each part):
1,2,3,... ---> <---...-3,-2,-1,0
|---------------------------------------|
min max
(always 1) (varies per part)
If you specify values that will be outside of the range of an
individual part, the proper min or max values for the given part will
be used.
The Defined Min and Defined Max fields are for reference only.
2. If the selected part has Iblanking, you can build based on
the value (Inside selects cells where Iblank=1, Outside
selects Iblank=0, All selects all cells ignoring Iblanking).
3. The initial Visual Representation to use
4. A description other than the default, if desired.
If you leave the Description field blank, it will default to what is
shown in the Parts list.
And click Load as new part to get the part created.

Page 35
HOW TO USE ENS_CHECKER
Use ens_checker
INTRODUCTION
This program attempts to check the integrity of the EnSight Gold (or EnSight6) file formats. Most files that pass this
check will be able to be read by EnSight (see Other Notes below). If EnSight Gold (or EnSight6) data fails to read into
Ensight, one should run it through this checker to see if any problems are found.
Ens_checker makes no attempt to check the validity of floating point values, such as coordinates, results, etc. It is
just checking the existence and format of such. Invoke ens_checker using the version of EnSight that you are using.
For example, for EnSight 10.2, use ens_checker102.
BASIC OPERATION
Program invocation:
If you invoke the program without any arguments, it will prompt you for the casefile to read. For example:
> ens_checker102
*****************************************************************
* EnSight Data Format Checker *
* =========================== *
* Currently, *
* 1. Must be run from directory in which casefile is located. *
* 2. Handles EnSight6 and EnSight Gold formats only. *
* 3. Does not process SOS casefiles. *
*****************************************************************
<Enter casefile name (must be in directory containing it!) > mydata.case
You can alternatively invoke the program with the casefile on the command line.
> ens_checker102 mydata.case
Sample runs:
As ens_checker works it will be providing feedback. This feedback is important in interpreting what is wrong in the
files. Here is a sample run, which was successful:
> ens_checker102 3by3.case
*****************************************************************
* EnSight Data Format Checker *
* =========================== *
* Currently, *
* 1. Must be run from directory in which casefile is located. *
* 2. Handles EnSight6 and EnSight Gold formats only. *
* 3. Does not process SOS casefiles. *
*****************************************************************
<Enter casefile name (must be in directory containing it!) > 3by3.case
Casefile to Process:
--------------------
3by3.case (Opened successfully)
---------------------
Major Sections Found:
---------------------
Required FORMAT section (at line 1)
Required GEOMETRY section (at line 4)
Optional VARIABLE section (at line 7)
Optional TIME section (at line 11)
---------------
FORMAT Section:
---------------

Page 36
HOW TO USE ENS_CHECKER
EnSight 6 Format (set at line 2)
-------------
TIME section:
-------------
Info for timeset number: 1
----------------------------
Time set: 1 (at line 12)
No description provided
Number of steps: 1 (at line 13)
Time values: (starting on line 14)
time values[1] = 0
>-------------------<
> TIME section OKAY <
>-------------------<
-----------------
GEOMETRY Section:
-----------------
--------
Model filename is: 3by3.geo (at line 5)
Static geometry
--------
Opened 3by3.geo successfully
File type is: ASCII
Description 1: EnSight test geometry file
Description 2: ==========================
node ids: assign
element ids: assign
Global section:
Number of nodes: 64
Coordinates for (64) nodes found
Part 1:
Description is: 3 x 3 xy
Unstructured Part
Number of quad4 elements is: 9
Connectivities for (9) quad4 elements found
Part 2:
Description is: 3 x 3 yz
Unstructured Part
Number of quad4 elements is: 9
Connectivities for (9) quad4 elements found
Part 3:
Description is: 3 x 3 xz
Unstructured Part
Number of quad4 elements is: 9
Connectivities for (9) quad4 elements found
Part 4:
Description is: 3 x 3 45
Unstructured Part
Number of quad4 elements is: 9
Connectivities for (9) quad4 elements found
>-----------------------<
> GEOMETRY section OKAY <
>-----------------------<
-----------------
VARIABLE Section:
-----------------
scalar per node: scalar (at line 8)
Filename is: 3by3.scl

Page 37
HOW TO USE ENS_CHECKER
Non transient variable
--------
Opened 3by3.scl successfully
Description: 3by3 scalar variable
Global section:
(64) Nodal scalar values for unstructured nodes found
vector per node: vector (at line 9)
Filename is: 3by3.vct
Non transient variable
--------
Opened 3by3.vct successfully
Description: 3by3 vector variable
Global section:
(192) Nodal vector values for unstructured nodes found
>-----------------------<
> VARIABLE section OKAY <
>-----------------------<
>----------- Hooray! ----------<
> <
> Data verification SUCCESSFUL <
> <
> with No Warnings <
> <
>------------------------------<
And here is a sample run, with a problem, namely a ‘block’ line is missing:
> ens_checker102 3by3s.case
*****************************************************************
* EnSight Data Format Checker *
* =========================== *
* Currently, *
* 1. Must be run from directory in which casefile is located. *
* 2. Handles EnSight6 and EnSight Gold formats only. *
* 3. Does not process SOS casefiles. *
*****************************************************************
Casefile to Process:
--------------------
3by3s.case (Opened successfully)
---------------------
Major Sections Found:
---------------------
Required FORMAT section (at line 1)
Required GEOMETRY section (at line 4)
Optional VARIABLE section (at line 7)
Optional TIME section (at line 11)
---------------
FORMAT Section:
---------------
EnSight 6 Format (set at line 2)
-------------
TIME section:
-------------
Info for timeset number: 1

Page 38
HOW TO USE ENS_CHECKER
----------------------------
Time set: 1 (at line 12)
No description provided
Number of steps: 1 (at line 13)
Time values: (starting on line 14)
time values[1] = 0
>-------------------<
> TIME section OKAY <
>-------------------<
-----------------
GEOMETRY Section:
-----------------
--------
Model filename is: 3by3s.geo (at line 5)
Static geometry
--------
Opened 3by3s.geo successfully
File type is: ASCII
Description 1: EnSight test geometry file
Description 2: ==========================
node ids: assign
element ids: assign
Global section:
Number of nodes: 0
Part 1:
Description is: 3 x 3 xy block
Structured Part
Not iblanked
i j k = 4 4 1
Number of nodes: 16
Number of cells: 9
Block X coordinates for (16) nodes found
Block Y coordinates for (16) nodes found
Block Z coordinates for (16) nodes found
Part 2:
Description is: 3 x 3 yz block
===> Problem:
-------------
Looking for one of the following valid line types:
element type (unstructured types, any of the following:
point tria6 tetra10 penta15
bar2 quad4 pyramid5 hexa8
bar3 quad8 pyramid13 hexa20
tria3 tetra4 penta6
block (structured block)
part (the next part)
but found the following:
4 4 1
>-------------------------<
> GEOMETRY section FAILED <
>-------------------------<
>-*-*-*-*-*-* bummer! *-*-*-*-*-*-<
> <
> Verification of the data FAILED <
> <
>-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-<

Page 39
HOW TO USE ENS_CHECKER
After fixing the ‘block’ line and running the program again, another problem is encountered - namely, an extra space
at the end of the second line of x coordinates for the block that is part 2.
> ens_checker102 3by3s.case
*****************************************************************
* EnSight Data Format Checker *
* =========================== *
* Currently, *
* 1. Must be run from directory in which casefile is located. *
* 2. Handles EnSight6 and EnSight Gold formats only. *
* 3. Does not process SOS casefiles. *
*****************************************************************
Casefile to Process:
--------------------
3by3s.case (Opened successfully)
---------------------
Major Sections Found:
---------------------
Required FORMAT section (at line 1)
Required GEOMETRY section (at line 4)
Optional VARIABLE section (at line 7)
Optional TIME section (at line 11)
---------------
FORMAT Section:
---------------
EnSight 6 Format (set at line 2)
-------------
TIME section:
-------------
Info for timeset number: 1
----------------------------
Time set: 1 (at line 12)
No description provided
Number of steps: 1 (at line 13)
Time values: (starting on line 14)
time values[1] = 0
>-------------------<
> TIME section OKAY <
>-------------------<
-----------------
GEOMETRY Section:
-----------------
--------
Model filename is: 3by3s.geo (at line 5)
Static geometry
--------
Opened 3by3s.geo successfully
File type is: ASCII
Description 1: EnSight test geometry file
Description 2: ==========================
node ids: assign
element ids: assign
Global section:
Number of nodes: 0
Part 1:
Description is: 3 x 3 xy block
Structured Part
Not iblanked

Page 40
HOW TO USE ENS_CHECKER
i j k = 4 4 1
Number of nodes: 16
Number of cells: 9
Block X coordinates for (16) nodes found
Block Y coordinates for (16) nodes found
Block Z coordinates for (16) nodes found
Part 2:
Description is: 3 x 3 yz block
Structured Part
Not iblanked
i j k = 4 4 1
Number of nodes: 16
Number of cells: 9
===> Problem:
-------------
Previous lines end with 1 extra chars on the line,
but line 2 has 2 extra chars. The lines must be consistent
or EnSight will have trouble reading it.
===> Problem:
-------------
Not successful reading 16 X block coordinates
>-------------------------<
> GEOMETRY section FAILED <
>-------------------------<
>-*-*-*-*-*-* bummer! *-*-*-*-*-*-<
> <
> Verification of the data FAILED <
> <
>-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-<
After eliminating the extra space, the file then checked out fine.
ADVANCED USAGE
Redirecting Output to a File:
ens_checker is writing to stderr, so if you want to redirect output to a file, you need to use “>&”. For example, the
following will place the output of the run into a file called output.file:
> ens_checker102 3by3.case >& output.file
OTHER NOTES
The word “most” is used above because one of the things that could pass the checker, but fail in EnSight is element
connectivity of EnSight6 files with node ids. The ens_checker checks that node ids used in the element connectivities
lie within the min and max range of the node ids, but does not verify that there is actually a node with each individual
id.
The validity of model extents, presence of nan’s, etc. are currently checked to some degree in ens_checker, but
again, this is a format checker - not a model integrity checker.
SEE ALSO
User Manual:
EnSight Gold Casefile Format
EnSight6 Casefile Format

Page 41
HOW TO LOAD MULTIPLE DATASETS (CASES)
Load Multiple Datasets (Cases)
INTRODUCTION
Normal operation of EnSight involves one client process (the graphics and user interface) interfacing with one server
process (data I/O and computation) to postprocess your data. There are however several other configurations
possible. One of these is the ability to connect a single client to multiple servers at the same time, with each server
maintaining a unique dataset. Each of these servers can potentially run on different machines.
The main use of this capability is to visualize multiple datasets simultaneously. Each dataset is loaded into a separate
case and can be viewed in the same window or in separate viewports. You can perform before and after comparisons
of the same problem or compare experimental with simulated results. The same operation (such as a clip or a particle
trace) can be performed in both cases simultaneously. Created parts always belong to the same case as the parent
from which the part was created. As a consequence, you cannot perform operations that combine parts (such as a
merge) from multiple cases.
When EnSight reads a new case, it searches the current list of variables for matches with the variables from the new
case. If it finds a match (based on an exact match of the variable name), it will not enter the new variable in the list.
Rather, the matched name will be used for both. This behavior is based on the assumption that the identical variable
names represent the same physical entity and should therefore be treated the same. If the new variable name does
not match any existing name, the new variable is added to the list as usual.
Up to 32 cases can be active at one time. You can add a new case or replace an existing case to a running session
by using the File->Open... process (if you want to load all parts and don’t need to control other options available when
loading cases) or the File->Data (reader)... process (which provides greater control). Adding a case starts a new
server process, connects it to the client, and either loads all the parts (if you used Open...) or allows you to specify the
data format and files as well as which parts to load into the new server and what optional settings to use as the case
is created. One of the helpful uses of the replace case option is to load a new dataset into EnSight without re-starting
the client. You can of course also delete cases you no longer need.
It is possible to allow EnSight to link cases together in which operations performed on one case are performed on all
cases. See the Release Notes for a list of limitations and for details on linking cases see How To Compare Cases.
Server
Client
Server
Client
Server
Normal Operation Two Cases

Page 42
HOW TO LOAD MULTIPLE DATASETS (CASES)
BASIC OPERATION
Once an existing case has been loaded in the normal manner, further case operations can be accessed through:
Add a Case
To add a case to a running EnSight session
File->Open...
or through:
Case->Add..., Replace..., Delete,,.
Do File->Open..., or Case->Add...
1. Select Keep currently loaded data
This will add, rather than replace, the
case
2. If desired, enter a name for the case
(other than the default).
The name will be displayed in the Case
menu.
3. Set other optional settings.
Select Server launch configuration if you
have a predefined configuration.
Link operations for all cases see How To
Compare Cases.
Apply Context From Case 1 will cause the
new case to inherit positioning etc. from
case 1.
Create new viewport for this case will
place the new case in a new viewport.
Clone current connection will cause the
same connection method as current one.
Manual connection will cause a manual
connection to be used - even if current
connection(s) were automatic.
Reflect Model About Axis allows the model to be reflected as
it is read in. Pick the axis and specify the origin location.
4. Click Okay.

Page 43
HOW TO LOAD MULTIPLE DATASETS (CASES)
The EnSight client will now start the connection process for the new server. Depending on the launch or connection
settings chosen, the new server will be started automatically or you will have to manually start another server. The
default is to start a new server automatically if your original connection was automatic, or to cause you to start
another server manually if your original connection was manual. You can follow the progress of the connection in the
Message area. See the EnSight Getting Started Manual or How To Connect EnSight Client and Server for more
information. Once connected, EnSight will also load all parts of this new case if you use this method.
You will then be presented
with the Open... dialog.
Navigate to and select your
data, and use the Simple
interface to load all parts.
(Note that the file type must be
recognized for this method to
work.)
Or, use the Advanced
interface, and control the
Format and other options.
As well as being able to
Select parts to load, etc.

Page 44
HOW TO LOAD MULTIPLE DATASETS (CASES)
Replace a Case
You can replace an existing case. This is most useful when you wish to load a new dataset without having to stop and
re-start the client. To replace a case:
You will now be presented with the Open... dialog, just as shown in Add Case above. You can use the Simple
Interface and load all parts, or control the options and part loading by using the Advanced interface. The server
associated with the selected case is terminated and the EnSight client will now start the connection process for the
new server. Again, depending on the launch configuration chosen, the new server will be started automatically or you
will have to manually start another server. The default is to start a new server automatically if your original connection
was automatic, or to cause you to start another server manually if your original connection was manual. You can
follow the progress of the connection in the Message area. See How To Connect EnSight Client and Server for
more information.
Delete a Case
To delete a case:
Do File->Open... and select Replace currently loaded data, or
Case->Replace...
This will open the dialog shown. You can optionally set a case
name or choose a predefined launch configuration, or just use
the default.
Click Okay
1. Select the case you wish to
delete in the Case menu (Case >
casename).
2. Select Case > Delete...
You will be asked to confirm the
deletion. If confirmed, the server
associated with the selected case is
terminated.

Page 45
HOW TO LOAD MULTIPLE DATASETS (CASES)
Displaying Parts by Case
By default all parts from all cases are displayed in the Main Parts list and they are displayed in a hierarchical manner
by case. See How To... Introduction to Part Creation for more details on viewing the parts list.
Case Viewport Display
One of the chief advantages of the case feature is the ability to perform side-by-side comparisons of different
datasets. One way to do this is to display each case in a separate viewport. To do this:
1. Create as many additional
viewports as you need to display
your cases. See How To Define
and Change Viewports for more
information.
2. Select the case whose parts you
wish to display only in certain
viewports in the Case menu
(Case > casename).
3. Select Case > Viewport Visibility...
4. Click in the desired viewport to
enable or disable display of the
selected case. Black means the
selected case is not displayed in
the viewport, green means that it
is displayed.

Page 46
HOW TO LOAD MULTIPLE DATASETS (CASES)
ADVANCED USAGE
EnSight’s cases capability has also been used to achieve coarse-grained parallelism for very large datasets by
partitioning a mesh into blocks and reading each block into a different case. Each case can run on different machines
or on different CPUs of a multiprocessor host. Since the EnSight client places the geometry from the different cases
in the same coordinate system, the blocks are effectively “stitched” back together for viewing. Operations such as
clipping and isosurface calculation are then automatically performed in parallel. However, since there is no
communication between the servers (in the current release) you cannot trace particles originating in one block and
expect them to cross a block boundary into a different block. (It should be noted that EnSight’s server-of-server
capability is an alternate, and usually better way to do parallel operations on a model.)
OTHER NOTES
When you perform an archive operation, a binary dump file is produced for each active server (case). The archive
information file contains details about the cases and can be used to restart the EnSight client as well as all servers
active when the archive was performed. See How To Save and Restore an Archive for more information.
SEE ALSO
User Manual: Case Menu Functions
How To Manual: Compare Cases

Page 47
HOW TO COMPARE CASES
Compare Cases
INTRODUCTION
EnSight has long had the ability to load multiple datasets and included tools to help compare them. Each of these
datasets is loaded as a separate EnSight Case. But no functionality or capability existed to try to make case
comparison easy or automated for the user.
The first step instructions on using multiple EnSight cases, is to see How to Load Multiple Datasets (Cases) which
will explain how multiple cases are loaded in EnSight. All of this functionality for reading and comparing multiple
cases is available to the user in a somewhat tedious step-by-step process. This “How To” was written to document a
new and more automated case compare capability named “case linking” which is intended to provide easy case
comparison functionality.
The goal of linking all the cases is to quickly and uniformly perform the same operation over all of the cases. So
transformations, part attribute changes, part and variable creation and query operations are performed automatically
and uniformly across all of the loaded cases. When one case is changed, all are changed in the same way.
To use case linking, first load a dataset and perhaps set up what you want to visualize. Then load the next case and
toggle on "Link operations for all cases". This will read in the new case, apply the context file from the first case and
automatically place the new case in its own linked viewport. Subsequent cases loaded will also be linked together
and each appear in their own linked viewport.
Case linking remains on until you turn it off (either right click on a case in the parts dialog or turn it off via the Case
pulldown). Once turned off, the case linking can not be turned back on in the current session.
Limitations
Every dataset must contain the same number of parts.
Case linking does not use part id nor part name, but rather part order in the part list to match up the parts. Therefore
the parts must match up in the same order in the part list.
Same model variables must exist with same names across the cases. Load all cases prior to doing calculations.
The geometry must be in roughly the same dimensions.
What are linked?
Once turned on, case linking applies all of the previous and subsequent operations that have been and will be applied
to any case and applies them to all of the cases as follows:
Any case added will apply the context file from the first case and place the new case in a new, linked viewport.
The second case will automatically split the screen into a left/right viewport. Other cases added will produce
“thumbnail” viewports down the left side.
Once the number of cases added is greater than the number of viewports that can be viewed, a scroll bar is added.
All transformations in all viewports are linked.
Any part attribute modified will be applied to the corresponding parts of the other cases.
Any part created (e.g. a clip part) will be created through the same parts of the other cases.
Any variable created will be duplicated across all loaded cases. Constant variables will have the case number
appended to their name (e.g. “variable_02”). Scalar and vector variables will appear only once in the variable list.
Queries will be performed through all cases and plotted on the same plotter.
Interactive probe queries will be performed at the same screen position in the linked viewports.
Rotational and mirrored symmetry will be applied to all the cases.
Caveat
This is a capability that is evolving. For the most current conditions and limitations please refer to the Release Notes.

Page 49
HOW TO COMPARE CASES
BASIC OPERATION
Add a Case
To add a case to a running EnSight session. First verify that your datasets all fall within the limitations described
above. Then read in the first dataset in the normal manner. Next, load subsequent linked datasets. Finally do any
calculations, manipulations, part creations etc.
Do File->Open..., or Case->Add...
1. Select Keep currently loaded data
This will add, rather than replace, the
case
2. If desired, enter a name for the case
(other than the default).
The name will be displayed in the Case
menu.
3. Set other optional settings.
Link operations for all cases to compare
this newly added case to the existing one.
Toggle this on. When this is toggled on
other options become unavailable.
Server connection options are still
available with the Link option.
Note: The case linking toggle is only
available on the addition of the second
case. All subsequent cases adopt the
Link setting of the second case. If the Link
toggle is on for the second case, the
dialog will no longer even appear for
subsequent cases.
Grayed out options are no longer necessary if you Link
operations for all cases as they now automatically happen.
4. Click Okay.

Page 50
HOW TO COMPARE CASES
The EnSight client will now start the connection process for the new server. Depending on the launch or connection
settings chosen, the new server will be started automatically or you will have to manually start another server. The
default is to start a new server automatically if your original connection was automatic, or to cause you to start
another server manually if your original connection was manual. You can follow the progress of the connection in the
Message area. See the EnSight Getting Started Manual or How To Connect EnSight Client and Server for more
information. Once connected, EnSight will also load all parts of this new case if you use this method, and, if the “Link
operations for all cases” toggle is on, a new linked viewport labeled with the case will be created for the data. Load all
of your cases prior to doing calculator functions.
You will then be presented
with the Open... dialog.
Navigate to and select your
data, and use the Simple
interface to load all parts.
(Note that the file type must be
recognized for this method to
work.)
Or, use the Advanced
interface, and control the
Format and other options.
As well as being able to
Select parts to load, etc.

Page 52
HOW TO COMPARE CASES
How to end case linking
Toggle off Case Linking using the top menu entry under Case. Do Case>Case Linking to toggle it off. And once you
turn it off you can continue working with the unlinked cases, but you cannot turn linking back on during the remainder
of the EnSight session.
:
1. When you are finished with the
portion of your analysis
facilitated by Case Linking,
simply toggle off Case>Case
linking and the cases will no
longer be linked.
2. Warning: once you end case
linking you can no longer case
link in this EnSight Session.
3. When Case Linking is turned off
you can now change features in
one viewport and they will no
longer change in the other
viewports. You can calculate
variables in one case that will no
longer be calculated in the other
cases.

Page 53
HOW TO COMPARE CASES
Case linked Calculations
If you are going to do calculations with multiple cases, it is recommended that you load all the cases first, then do the
calculations.
Calculation of a variable such as vsq = velocity*velocity on a certain part, such as a clip plane, in one of the cases will
cause that same variable to be calculated on the corresponding clip plane in all the other cases when case linking is
on. The variable vsq will show up once in the variable list if it is a vector or scalar as always. If the variable is a
constant such as that returned by the EnSight Flow function then there will be a constant variable for each case in the
variable list calculated on the corresponding cases. Constant variables from cases besides the first, will have the
case number appended to their name (e.g. “flow_02” for the case 2 flow).
To compare a variable across cases, use the new CaseMapDiff calculator function. This will give you a variable that
results from the subtraction of that variable from the CaseMap of that variable from the chosen case. See the
example below for an illustration of using this function to compare the pressure across cases.
Case Mapping Tips
The searching algorithm in CaseMap and CaseMapDiff slows dramatically as the size of the model grows. Consider
starting EnSight with the -hpc (formerly -gold) option if you have an hpc (formerly gold) license, to maximize your use
of Threading. At your first attempt at casemapping, use the faster ‘search only’ (option 0) flag, which will result in an
undefined value if the local search fails, and will not resort to the slower global search used by the ‘nearest value’
search option. When case mapping finishes, check your results by right clicking on the variable and edit the palette
and, under the Options tab in the Palette dialog, change the ‘Display Undefined’ as Invisible. This will remove the
CaseMapDiff Calculator function example:
Select the Field part in Case 2, calculate CaseMapDiff of the
variable pressure from Case 1 using the nearest value. Now
create a Y clip of the field and color by the variable. See that
the CaseDiff variable is zero everywhere at Case 1 and has a
non-zero value of CaseDiff at Case 2 because it equals (Case2
pressure - Case 1 pressure).

Page 54
HOW TO COMPARE CASES
undefined value as a ‘hole’ in your mesh to give you a sense of the number of failures in your case mapping. If you
have holes in your mesh, and if the case map was relatively quick, and the variable that you are mapping is
elemental, then consider creating a nodal variable and rerunning using search option 0 flag. Nodal variables tend to
succeed in the searching algorithm better. Or if you are using a nodal variable and still getting undefined values, try
using ‘nearest value’ (search option 1) flag, which, if the local search fails, will ‘look around’ using a slower, global
search.
You can restrict the search using the ‘parts to map from’ pulldown. If both cases have matching part numbers, use the
‘Part number match’ and the search will be restricted to matching part(s) in the same list position in the Part List. Or I
can use ‘Parts selected for case to map from’ and select the parts in each case to use for searching. Or if I’m mapping
to parts that are all the same dimension (say 2D) then I can select ‘Dimensionality match’ to only use parts in the
‘case to map from’ that are the same dimension as my selected parts. Warning, if you use the default search option
‘Global search’, then EnSight will search the 3D, 2D, 1D, and 0D parts in the ‘case to map from’, which may slow
performance dramatically.
ADVANCED USAGE
A common usage scenario is to load all your cases with case linking turned on, do your common calculations and
perform the operations that case linking takes care of most easily. Then turn it off to complete the post processing.
OTHER NOTES
When calculator functions are executed and then subsequent cases are loaded, this sometimes works, however this
is not recommended. It is recommended that you load all your cases first and then do your calculations so that they
can all occur on the existing cases at once.
SEE ALSO
User Manual: Case Menu Functions
How to Manual: Load Multiple Datasets (Cases)

Page 55
HOW TO LOAD TRANSIENT DATA
Load Transient Data
INTRODUCTION
From its inception, EnSight has been used extensively to postprocess time-varying or transient data. In many cases,
dynamic phenomena can only be understood through interactive exploration as a transient case is animated. EnSight
handles all types of transient data. All variables as well as mesh coordinates and connectivity can vary over time. The
rate at which variables (or the mesh) change can differ (supported through the EnSight Gold and EnSight6 Case data
format only).
EnSight can postprocess transient data in many ways. The Player (Solution Time) area lets you easily set the
current time step, step through time (manually or automatically), or restrict the range of time to a region of interest.
You can perform query operations to extract information over time. You can use the flipbook capability to create an
on-screen animation of your data changing over time and continue to interact with it during animation playback.
EnSight’s keyframe animation capability can be used to create high-quality video animations of transient data.
This article covers reading transient data into EnSight.
BASIC OPERATION
Reading transient data into EnSight is essentially the same as reading static data (see How To Read Data for more
information). By default, the last time step will become the current time step. This behavior is based on the
assumption that the last step will contain the largest dynamic range of the variable data so that variable palettes will
be initialized properly.
For many data formats, some type of “results” file supplies the necessary time information, including number of
steps, actual solution time at each step, and how to access the dynamic variable and geometry files. However, some
formats supported by EnSight include this information in the same file that contains other geometry or variable data.
EnSight 6 and EnSight Gold formats have a casefile which contains solution time information and how this is tied to
each variable and the geometry. The manner for each format can vary widely enough that we refer you to User
Manual 2.1 Reader Basics, User Manual 2.1 Native EnSight Format Readers, and User Manual 2.1 Other
Readers
However, you can override this
by clicking the Specify Starting
step toggle and entering the
desired time step under the
Time options tab in the File >
Open dialog.
Note, for some data formats,
you can also monitor the
dataset for new timesteps as
described in User Manual 5.1
Solution Time.

Page 56
HOW TO LOAD TRANSIENT DATA
ADVANCED
If you wish to read transient data that is being updated (that is, perhaps the solver is in the process of writing the data
and you are looking at it as the solution proceeds: coprocessing) then you will need to get your solver to write out the
maximum number of steps keyword if the data is PLOT3D Results File Format or EnSight Gold Casefile Format.
Or, if you are using another format and have a custom user-defined reader, then you will need to add a routine called
USERD_get_max_time_steps that cues the EnSight Server that the number of time steps can be updated (and pro-
vides a maximum never-to-exceed number of time steps that can be loaded). Currently the EXODUS II Reader has
this capability.
The user chooses the action which will occur when a new timestep becomes available. Either the timestep will
automatically update to the last timestep available or you can stay at the current timestep. For the latter, the End time
value for the solution time dialog will update to reflect the new timestep availability, but the time will not be modified.
SEE ALSO
How To Change Time Steps, How To Animate Transient Data, How To Query/Plot
User Manual: Flipbook Animation, Query/Plotter
Click on the advanced button to pop up the
“Solution time” dialog. If the current dataset is set
for timestep monitoring, the pulldown options for
Monitor for new time steps will be available.
Click this pulldown to decide what action will be
taken when new timesteps are available.

Page 57
HOW TO USE SERVER OF SERVERS
Use Server of Servers
INTRODUCTION
EnSight102, using an hpc (formerly gold) license key has the capability of dealing with spatially partitioned data or
temporally decomposition in an efficient distributed manner by utilizing what we call a server-of-servers (SOS for
short). An SOS server resides between a normal client and a number of normal servers. Thus, it appears as a normal
server to the client, and as a normal client to the various normal servers.
When reading spatially decomposed data (or when the decomposition is done on the fly), each server is responsible
for only a portion of the geometry for all time. This is useful, for example, when the entire geometry for a single
timestep simply cannot fit into one server on one machine. When the data is temporally decomposed, each server is
responsible for all of the geometry but only at one timestep. This is useful, for example, when the entire geometry at
one timestep fits on one server, and the user desires to precache (read ahead) to other timesteps to speed up time
changes.
This arrangement allows for distributed parallel processing of the various portions of a model or different portions of
time, and has been shown to scale quite well.
Currently, EnSight SOS spatially decomposed capability is only available for EnSight5, EnSight6, EnSight Gold,
Plot3d, and some EnSight User-Defined Reader data formats. All data formats permit temporal decomposition.
For spatial decomposition, please recognize that your data must be spatially partitioned in some manner (hopefully in
a way that will be reasonably load-balanced) in order for this approach to be useful. This partitioning can be done
externally, be done by a reader internally, or be auto_distributed by the EnSight servers. Each of these options for
spatial decomposition will now be discussed, because they have limitations. Temporal decomposition will be
discussed at the very end of this document.

Page 58
HOW TO USE SERVER OF SERVERS
SPATIAL PARTITIONING OF DATA DONE OUTSIDE ENSIGHT
Choose “Don’t decompose” in the SOS options tab if the data is already partioned outiside of EnSight and you don’t
want EnSight to do the decomposition. This option requires that each portion of the model be prepared as a stand-
alone partitioned dataset, that can be read as such by an EnSight server. For example, if it were EnSight gold format,
there will be a casefile (.case) and associated gold geometry and variable results file(s) for each partitioned dataset.
There will also need to be an SOS casefile (.sos), which is a simple ascii file which informs the SOS about pertinent
information needed to run a server on each of the machines that will compute the various portions and what case file
partition it is to read. The SOS will read the sos casefile (.sos), and each server will read one of these pre-partitioned
(.case) datasets. The SOS will conglomerate geometry together so that the client sees the whole model. The EnSight
formats, PLOT3D, and any user-defined readers using our 1.0 or 2.0 APIs can be used
The advantage of external partitioning is that once the data has been partitioned once, the partitioning is done.
EnSight’s SOS and servers can then operate without expending any effort on partitioning. The disadvantage is that it
is not easily changed. Some formats require that the number of servers be the same as the number of partitioned
datasets. However, for EnSight Gold format, EnSight now has the capability of running more than one of these
datasets on a given server - so it is possible to run the model on fewer servers than the number of partitioned
datasets. And the number of those servers is easily changed. See How To Load Spatially Decomposed Case
Files.
Data can be partitioned prior to reading in EnSight, for example, by a solver, or by an external partitioning utility as
described below.
Partitioning with a Solver, or Self-Partitioning
Note: If you do your own partitioning, please be aware that, as of EnSight 10.2, each dataset is no longer required to
have all parts present in all of the partitioned data files. EnSight now uses the part name as the unique identifier, so, if
the part is present in the dataset, it must be consistently named everywhere: in all partitioned datasets over all
timesteps. Thus one can fairly easily partition as desired, whether that be with decomposed parts across several
datasets, or with parts empty (or even nonexistent) in all but one of the datasets, etc. Note that in EnSight Case Gold
format, an empty part need only have the “part” line, the part number, and a consistent “description” line (or, now, it
can be left out altogether).
EnSight’s Partition102 Utility
Included in the EnSight distribution is a command-line Partition Utility that will take EnSight Case Gold multi-file
format, C-binary unstructured datasets and partition them for you using geometric partitioning (thick slicing the
geometry along it’s longest edge into chunks). This utility will work for static, changing coordinate or changing
geometry datasets. It will not work for ascii files, for single file format, measured/particle data, or datasets with
multiple timesets (i.e. all variables must be on same timeset). It will also not work for structured data (which must be
server decomposed, see below).
Simply type partition102 at the command prompt to begin. This command line program will prompt you for the
name of the input case file and the number of partitions in the x, y, and z and whether or not to use ghost elements,
etc. and will create (in a directory of your choosing) a case sos file (.sos) pointing to the partitioned case files ready
for loading into EnSight server of server mode.
You should place each partitioned portion of the model on the machine that will compute that portion. On the machine
where the EnSight SOS will be run, you will need to place the sos casefile. If you move the case files around to
different locations and/or different machines, you will need to edit the sos file (.sos) to properly indicate the machines
and directories where the case files are located. Once you load the data into EnSight Server of Server mode,

Page 59
HOW TO USE SERVER OF SERVERS
calculate the variable ServerNumber in the EnSight calculator and color your geometry by this variable to visualize
the spatial distribution chosen by the partition utility. The partition utility simply takes the bounding box of the data and
divides it into a grid according to the number of partitions in the x, y, and z-directions so works best on data that is
cubic in shape.
SPATIAL PARTITIONING DONE BY A READER, “READER DECOMPOSE”
If the “Reader decompose” option is available, then the reader for your chosen format is SOS aware. You would
choose “Reader decompose” in the SOS options tab to read the data in partitions on each server. If this option is
available, then you will usually choose it because the reader knows how to best decompose the data. This method
requires that the reader be based on our 2.0 or later User-defined reader API, which is “server-aware”, and that it
does its own determination of what data goes to each server. Some “multiblock” formats for example, can easily
distribute certain blocks to certain servers. And they can do so based on the number of servers that are being used at
the time. There is still the requirement that each server be informed of the same number of total parts. But the reader
can return different portions of a given part based on which server is querying. And yes, a given part can be empty for
some servers.
This type of partitioning reader has the advantage of being adaptable to the number of servers used. It does require
the development of such a reader. Examples of that allow reader decompose are as follows: CGNS-XML, CTH,
xdmf2, Exodus, Flow3d, Silo and VTK readers. In the data reader dialog (File>Open...) under the SOS options tab,
are the SoS options for the selected data reader. One option is to pass wildcards to the server, for example if the data
file refers to a set of files (file*.vtm).
PARTITIONING DONE BY ENSIGHT SERVERS, “SERVER DECOMPOSE”
If your data is not already decomposed nor is the Reader decompose option available, then EnSight has the final
option of using the EnSight server to decompose (also called auto-distribute, since the EnSight server automatically
does the distribution). Some formats/readers allow for an spatial auto-distribute capability that occurs within each
server. Pre-partitioning is not required. Each server will determine its portion using a connectivity-based partitioning
algorithm (selecting N elements in the connectivity order), and will read and act just on that portion. Note that this
connectivity based algorithm is different than the partition utility described above.
Currently this capability is available to Plot3d and EnSight Case gold format.
It can be implement in User-defined readers (at level 2.08 or greater), which have implemented the “*_in_buffers”
routines.

Page 60
HOW TO USE SERVER OF SERVERS
So, since none of the user-defined readers distributed by EnSight have currently implemented the needed *_in_buffer
routines or structured reader cinching capability to take advantage of this option, only the internal EnSight Gold and
Plot3d readers can be used with Server decompose (auto_distribute). However if you have on-site user defined
readers, these may include this capability.
Use of SOS with our native, Case Gold format can use an ASCII SOS Casefile which is a map for how data is to be
distributed to the Servers using auto-distribute.
FORMAT OF THE SOS CASEFILE:
The format for this file is as follows: (Note that [ ] indicates optional information, and a blank line or a line with # in the
first column are comments.)
FORMAT (Required)
type: master_server datatype (Required)
where: datatype is required and is one of the formats of EnSight’s internal readers (which
use the Part builder), namely:
gold ensight6 ensight5 plot3d
or it can be the string used to name any of the user-defined readers.
Note: For user-defined readers, the string must be exactly that which is defined in the
USERD_get_name_of_reader routine of the reader (which is what is presented in the Format
pulldown of the Data Reader dialog).
If datatype is blank, it will default to EnSight6 data type.
[auto_distribute: on/off] (Optional for structured or unstructured data)
EnSight server will automatically distribute data to the servers (also called Server decompose)
specified below if this option is present and set to “on”. This will require that each of the servers
have access to the same data (or identical copies of it). For structured data: use only if the
datatype is gold, plot3d or a 2.06 or greater user-defined reader (which has implemented
structured cinching). For unstructured data: use only if the datatype is gold, or a 2.08 (or
greater) user-defined reader. Additionally, be aware that 2.* user-defined readers should
implement the special functions defined in README_USERD_IN_BUFFERS file if memory is to
be used efficiently in the unstructured auto-distribute process.
[use_resources: on/off] (Optional, to allow specification of server machines to come from the “resource file”)
[do_ghosts: on/off] (Optional for unstructured auto_distribute - default is on (before version 10.1.4(a)),
and is off for later versions)
Allows user to control whether ghost cells will be produced between the distributed portions.
Please note that this could alternatively be set with the -use_ghosts command line argument, or
by setting the UNSTRUCT_AUTODISTRIBUTE_USE_GHOSTS environment variable to 1.
[buffer_size: n](Optional for unstructured auto_distribute and do_ghosts - default is 100000)
Allows user to modify the default buffer size that is used when reading node and element
information of the model when producing ghost cells.
[want_metric: on/off](Optional for unstructured auto_distribute and do_ghosts - default is on (before version
10.1.4(a), and is off for later versions.)
If set on, a simple metric will be printed in the shell window that can indicate the quality of the
auto_. The unstructured auto_distribute method relies on some coherence in the element
connectivity - namely, that elements that lie next to each other are generally listed close to each
other in the data format.
The metric is simply the (#total_nodes / #nodes_needed_if_no_ghosts).
When no ghosts, the value will be 1.0. The more ghosts you must have, the higher this metric
will be. If the number gets much more than 2.0, you may want to consider partitioning yourself.
Please note that this could alternatively be set with the -use_metric command line argument, or
by setting the UNSTRUCT_AUTODISTRIBUTE_USE_METRIC environment variable to 1.
NETWORK_INTERFACES (Note: This whole section is optional. It is needed only when more than one network
interface to the sos host is available and it is desired to use them. Thus, distributing the servers
to sos communication over more than one network interface)
number of network interfaces: num(Required - if section used)
where: num is the number of network interfaces to be used for the sos host.
network interface: sos_network_interface_name_1(Required - if section used)

Page 61
HOW TO USE SERVER OF SERVERS
network interface: sos_network_interface_name_2(Required - if section used)
.
.
network interface: sos_network_interface_name_num(Required - if section used)
SERVERS (Required)
number of servers: num [repeat](Required)
where: num is the number of servers that will be started and run concurrently.
repeat indicates that the first server specification should be repeated num times for use
with resources. Other server specifications will be ignored.
#Server 1 (Comment only)
machine id: mid (Required)
where: mid is the machine id of the server.
executable: /.../ensight92.server(Linux/Unix/Apple Required, must use full path)
or ensight92_server.bat (Windows only Required, must use .bat extension)
[directory: wd](Optional)
where: wd is the working directory from which ensight92.server will be run
[login id: id](Optional)
where: id is the login id. Only needed if it is different on this machine.
[data_path: /.../dd](Optional)
where: dd is the directory where the data resides. (Full path must be provided if you use this).
casefile: yourfile.case (Required, but depending on format, may vary as to whether it is a casefile, geometry file,
neutral file, universal file, etc. Relates to the first data field of the Data Reader Dialog.)
[resfile: yourfile.res](Depends on format as to whether required or not. Relates to the second data field of the Data
Reader Dialog.)
[measfile: yourfile.mea](Depends on format as to whether required or not. Relates to the third data field of the Data
Reader Dialog.)
[bndfile: yourfile.bnd](Depends on format as to whether required or not. Relates to the fourth data field of the Data
Reader Dialog.)
--- Repeat pertinent lines for as many servers as declared to be in this file ---
BASIC OPERATION
To use Server of Servers, depending on the method of spatial partitioning (Externally partitioned, Reader partitioned,
or Server partitioned) described above, you do the following:
External partitioning
1. Partition your data, and distribute it (or make it available) to the various machines on which you will run servers.
2. Create the sos casefile, which defines the data format to use, the server machines, the location of server
executables on those machines, and the name and location of the [partitioned] data for the servers. Each server in
the casefile will reference different data. Examples will be shown below.
3. Run EnSight with the -sos command line option(or use ensight102.sos in place of ensight102.server if connecting
manually) and provide it with the sos casefile. You can run EnSight like:

Page 62
HOW TO USE SERVER OF SERVERS
ensight102 -sos
Using the command in this way runs the SOS on the same machine as the client. If you want to control where the
SOS runs, connect manually instead (a manual example will be shown later in this article). Also note that if you want
to load all parts, you could have simply included the sos casefile on the command line, like:
ensight102 -sos /home/bjn/dat/sos/cube_10.sos
Additionally, you can use resources in combination with a sos casefile if desired. See How To Use Resource
Management for an example.
Spatial partitioning done by a reader, “Auto distribute Reader decompose”
If you use a reader that can do its own partitioning, you can use an sos casefile in which each server references the
Then under File->Open,
set the sos casefile under
the data tab, with a format
of Case SOS.
Under the SOS options tab,
you can verify that Auto
distribute is set to Don’t
decompose (because the
data is already
decomposed).

Page 63
HOW TO USE SERVER OF SERVERS
same data, OR take advantage of a resource file and not have to create an sos casefile. Note that for this method,
under the SOS options tab in the File->Open dialog, you will see that Auto distribute is set to Reader Decompose.
It is probably easiest to describe the usage based on an example. So using the Exodus reader, lets run an Exodus
model on two servers (computer1 and computer2), first using the .sos case file and then the .res file (you don’t use
them both at the same time). The files we will reference are:
sample.exo (the Exodus data file)
servers.sos (the SOS casefile)
FORMAT
type: master_server MultiExodusII
SERVERS
number of servers: 2
#Server 1
#------------
machine id: computer1
executable: ensight102.server
data_path: /home/user/exodus
casefile: sample.exo
#Server 2
#------------
machine id: computer2
executable: ensight102.server
data_path: /home/user/exodus
casefile: sample.exo
servers.res (the resource file, see How To Use Resource Management for more details)
#!CEIResourceFile 1.0
SOS:
host: localhost
SERVER:
host: computer1
host: computer2
Flow3D SOS Case file example which uses two computers (computer1 and computer2), and 4 servers, with 4 files
(flsgrf1.dat, flsgrf2.dat, flsgrf3.dat and flsgrf4.dat) located on a common file system that both computers can read: /
scratch/data/lowres and perhaps name it servers.sos. It will also be necessary that the machine where you start up
your server of server has the Flow3d reader (must be either a linux or windows machine) and it is able to start up
servers using passwordless ssh.
FORMAT
type: master_server Flow3D-Multiblock
SERVERS
number of servers: 4
#Server 1
#------------
machine id: computer1
# for same machine use
#machine id: localhost
executable: ensight102.server
# for windows use
#executable: ensight102_server
data_path: /scratch/data/lowres/
casefile: flsgrf*.dat
#Server 2
#------------
machine id: computer1

Page 64
HOW TO USE SERVER OF SERVERS
executable: ensight102.server
data_path: /scratch/data/lowres/
casefile: flsgrf*.dat
#Server 3
#------------
machine id: computer2
executable: ensight102.server
data_path: /scratch/data/lowres/
casefile: flsgrf*.dat
#Server 4
#------------
machine id: computer2
executable: ensight102.server
data_path: /scratch/data/lowres/
casefile: flsgrf*.dat
Your servers.res file will be the same as above except it will have four servers, and perhaps named four_servers.res.
#!CEIResourceFile 1.0
SOS:
host: localhost
SERVER:
host: computer1
host: computer1
host: computer2
host: computer2
1. For the exodus example above, make sure your sample.exo data file is available to the various computers on
which you will run servers. For the Flow3d example above, make sure all four flsgrf*.dat files are in the same
directory and available to all the computers.
2. Create the sos casefile, Or the resource file appropriate for your format above (use one or the other). You can
copy/paste from the examples above.
3. Run EnSight using one of the following (not both):
ensight102 -sos
Then set the servers.sos file in the File->Open dialog (format Case SOS). This will let you load all parts, or
select the ones to be loaded. Or use ensight102 -sos servers.sos on the command line if you want to load all
parts.
-- OR if you want to use the resource (.res) file --
Choose the sample.exo file or the flsgrf*.dat in the File->Open dialog (format MultExodusII, format Flow3d-
Multiblock respectively), and place the appropriate .res file in the Set resource file field under the SOS options
tab. For Flow3d data, toggle ON the Pass wild cards to server option, which will allow the asterisk in flsgrf*.dat
to pass down to the servers to handle appropriately. This will let you then load all parts, or select the ones to be
loaded. Or use ensight102 -sos -res servers.res on the command line and set sample.exo (or flsgrf*.dat) file
in the File->Open dialog (format MultExodusII, Flow3D-Multiblock, respectively). Or, for exodus format, use
ensight102 -sos -res servers.res sample.exo on the command line if you want to load all parts. You cannot
use the command line for Flow3D format because you must tell EnSight to pass the asterisk to the servers and
this appears to only work from the dialog.
There are several other variations that could be used, including the use of a manual connection with the SOS. They
all have similar corresponding options.
Spatial partitioning by EnSight Servers “Auto_distribute, e.g. Server decompose”
If you use EnSight Gold, Plot3d, or a User-defined reader that is capable (as described above), you can let EnSight
do the partitioning. You can use an sos casefile in which each server references the same data, or take advantage of
a resource file and not have to create an sos casefile. Note that for this method, under the SOS options tab in the

Page 65
HOW TO USE SERVER OF SERVERS
File->Open dialog, you will see that Auto distribute is set to Server Decompose.
It is probably easiest to describe the usage based on an example. So using the EnSight Gold format, lets run a simple
model on two servers (computer1 and computer2). The files we will reference are:
cube.case (the EnSight Gold data file)
two_partitions.sos (the SOS casefile)
FORMAT
type: master_server gold
auto_distribute: on
do_ghosts: on
SERVERS
number of servers: 2
#Server 1
#------------
machine id: computer1
executable: ensight102.server
data_path: /home/user/exodus
casefile: cube.case
#Server 2
#------------
machine id: computer1
executable: ensight102.server
data_path: /home/user/exodus
casefile: cube.case
two_servers.res (the resource file, see How To Use Resource Management for more details)
#!CEIResourceFile 1.0
SOS:
host: localhost
SERVER:
host: computer1
host: computer2
1. Make sure your cube.case data is available to the various machines on which you will run servers.
2. Create the two_partitions.sos sos casefile, or the two_servers.res resource file
3. Run EnSight like:
ensight102 -sos
Then set the two_partitions.sos file in the File->Open dialog (format Case SOS). This will let you load all parts,
or select the ones to be loaded. Or use ensight102 -sos two_partitions.sos on the command line if you want
to load all parts.
-- or --
Open the cube.case file in the File->Open dialog (format Case), and place two_servers.res in the Set resource
file field under the SOS options tab. This will let you then load all parts, or select the ones to be loaded. Or use
ensight102 -sos -res two_servers.res on the command line and set cube.case file in the File->Open dialog
(format Case). Or use ensight102 -sos -res two_servers.res cube.case on the command line if you want to
load all parts.
There are several other variations that could be used, including the use of a manual connection with the SOS. They
all have similar corresponding options.

Page 66
HOW TO USE SERVER OF SERVERS
Example SOS Casefile
This example deals with a EnSight Gold dataset that has been partitioned into 3 portions, each running on a different
machine. The machines are named joe, sally, and bill. The data is not in the same location on all machines. Note that
the optional data_path line is used on two of the servers, but not the third.
FORMAT
type: master_server gold
SERVERS
number of servers: 3
#Server 1
machine id: joe
executable: ensight102.server
data_path: /usr/people/john/data
casefile: portion_1.case
#Server 2 is a Windows machine (notice .bat extension)
machine id: sally
executable: ensight102_server.bat
data_path: D:\john\data
casefile: portion_2.case
#Server 3
machine id: bill
executable: ensight102.server
casefile: /scratch/temp/john/portion_3.case
If we name this example sos casefile - “all.sos”, and we run it on yet another machine - one named george, you would
want the data distributed as follows:
On george: all.sos
On joe (in /usr/people/john/data): portion_1.case, and all files referenced by it.
On sally (in /scratch/sally/john/data): portion_2.case, and all files referenced by it.
On bill (in /scratch/temp/john): portion_3.case, and all file referenced by it.
By starting EnSight with the -sos command line option (which will autoconnect using ensight102.sos instead of
ensight102.server), or by manually running ensight102.sos in place of ensight102.server, and providing all.sos as the
casefile to read in the Data Reader dialog - EnSight will actually start three servers and compute the respective
portions on them in parallel.
So, one could do the following (after preparing the all.sos file):
On “george”, run the client and the sos by invoking the ensight102 script in a shell window (non-windows) or
Command Prompt window (windows), like:
george>> ensight102 -sos
Or one could run the client on the “myclient” machine, telnet (or equivalent) into the “george” machine and run the sos
there, by using the following commands:
:
If “myclient” is a non-windows machine:
In a window on “myclient”: In a window that is telneted into the “george” machine:
myclient>> ensight102.client -cm If “george: is a non-windows machine:
george>> ensight102.sos -c myclient
If “george is a windows machine:
george>> ensight102_sos -c myclient
If “myclient” is a windows machine:
In a Command Prompt window on “myclient”: In a Command Prompt window that is telneted into the
“george” machine:
myclient>> ensight102_client -cm If “george: is a non-windows machine:
george>> ensight102.sos -c myclient

Page 67
HOW TO USE SERVER OF SERVERS
In either case, you would enter the all.sos command as the file to read in the Data Reader dialog once EnSight is up
and connected. And the servers on “joe”, “sally”, and “bill” would be started and used automatically.
ENVIRONMENT Variables
The following Environment variables will directly affect the SOS performance, see How To Setup for Parallel
Computation.
ENSIGHT10_MAX_THREADS
ENSIGHT10_MAX_SOSTHREADS
Additionally, rather than specifying whether unstructured ghost processing and metric calculations will be done in an
sos casefile, you can specify this via command-line argument (-use_ghosts and -use_metric), or via the following
environment variables. Remember that the ghost processing and metric calculation is defaulted off.
UNSTRUCT_AUTODISTRIBUTE_USE GHOSTS 1 will set ghost processing on.
UNSTRUCT_AUTODISTRIBUTE_USE_METRIC 1 will set metric on.
The environment variable settings will take precedence over the command line arguments.
Optional NETWORK_INTERFACES section notes
If the machine named george had more than one network interface (say it had its main one named george, but also
had one named george2), we could add the section shown below to our casefile example:
NETWORK_INTERFACES
number of network interfaces: 2
network interface: george
network interface: george2
This would cause machine joe to connect back to george, machine sally to connect back to george2, and machine bill
to connect back to george. This is because the sos will cycle through its available network interfaces as it connects
the servers. Remember that this is an optional section, and most users will probably not use it. Also, the contents of
this section will be ignored if the -soshostname command line option is used.
Example SOS Casefile for PLOT3D, Using structured auto_distribute
This example shows a plot3d dataset (post.x and post.q) that has not been partitioned, but is on an nfs mounted disk
available to each server machine. EnSight will distribute the data to the 3 servers defined. IO will not necessarily be
great since each server will be reading from the same file, but execution will be enhanced by the partitioning. We will
use the same machines used in the previous example.
FORMAT
type: master_server plot3d
auto_distribute: on
SERVERS
number of servers: 3
#Server 1
machine id: joe
executable: ensight102.server
data_path: /scratch/data
casefile: post.x
resfile: post.q
#Server 2
machine id: sally
executable: ensight102.server
data_path: /scratch/data
casefile: post.x
resfile: post.q
#Server 3
If “george is a windows machine:
george>> ensight102_sos -c myclient

Page 68
HOW TO USE SERVER OF SERVERS
machine id: bill
executable: ensight102.server
data_path: /scratch/data
casefile: post.x
resfile: post.q
Example SOS Casefile for EnSight Gold, Using unstructured auto_distribute
This example shows an EnSight Gold dataset (trial.case) that has not been partitioned, but is on an nfs mounted disk
available to each server machine. EnSight will distribute the data to the 3 servers defined. IO will not necessarily be
great since each server will be reading from the same file, but execution will be enhanced by the partitioning. We will
use the same machines used in the previous examples.
FORMAT
type: master_server gold
auto_distribute: on
do_ghosts: on
buffer_size: 10000
want_metric: on
SERVERS
number of servers: 3
#Server 1
machine id: joe
executable: ensight102.server
data_path: /scratch/data/gold
casefile: trial.case
#Server 2
machine id: sally
executable: ensight102.server
data_path: /scratch/data/gold
casefile: trial.case
#Server 3
machine id: bill
executable: ensight102.server
data_path: /scratch/data/gold
casefile: trial.case
Special Case:
If using auto_distribute (and thus each server will be accessing the same data files), and the servers will all be run on
the same machine, then one can add the word “repeat” to the end of the “number of servers: num” line and then only
define one set of Server info. For example:
FORMAT
type: master_server gold
auto_distribute: on
SERVERS
number of servers: 3 repeat
#Server 1
machine id: joe
executable: ensight102.server
data_path: /scratch/data/gold
casefile: trial.case
Structured Auto Distribute Note:
If using structured auto_distribute, the default decomposition scheme is to do so in the i, j, or k direction that has the
largest dimension. This may not always be the best direction for a given analysis. Thus, through the use of an
environment variable, the user can set the axis to use. The chosen axis will be used unless the dimension in that
direction will not allow for all servers to contain data (namely, as long as the dimension in the chosen direction is

Page 69
HOW TO USE SERVER OF SERVERS
greater than the total number of servers used). To use the this option, set the following to 0, 1, 2, or -1:
setenv SAD_DECOMPOSE_AXIS 0 (for the i axis)
1 (for the j axis)
2 (for the k axis)
-1 (to use the default largest dimension scheme,
same as not setting the variable)
PROBLEMS
If you load your data using SOS and it does not run any faster, or it appears to be using more total memory than you thought, or
you are missing geometry, then consider the following tips.
1. The Server of Server (SOS) Console will tell you where the output is logged. For example:
Server output logged to file </tmp/enssoLOzqmV>
and should echo the servers that get started as follows:
CvfLaunch is going to run:
( ensight102.server -c steve -ports 1110 -sosid 0 -auto_distribute -jm_url
connect%3a%2f%2fsteve%3ftransport%3dsocket%26port%3d1110%26sockbufsize%3d2097152%26timeout%3d60%26nc
onnections%3d4%26connect%5fdirection%3djoin ) >>/tmp/enssoamE7ZE 2>&1 &
CvfLaunch is going to run:
( ensight102.server -c steve -ports 1110 -sosid 1 -auto_distribute -jm_url
connect%3a%2f%2fsteve%3ftransport%3dsocket%26port%3d1110%26sockbufsize%3d2097152%26timeout%3d60%26nc
onnections%3d4%26connect%5fdirection%3djoin ) >>/tmp/enssoamE7ZE 2>&1 &
2. Is all of your geometry showing? If not then some of the servers may not be reading their portion of the geometry correctly, or
they may not have started properly, or they may be hung up and frozen. Check and make sure you have all of your server processes still
running.
3. Each reader behaves differently. Some readers require that you enter an asterisk (*) to load multiple spatially decomposed files
( for example spcth* in the Data Reader dialog Data tab set name field). In the SOS Options tab of the data reader dialog, make sure you
check the toggle to allow asterisks to be passed to the Servers if the filename has an asterisk, verify that your autodistribute pulldown
choice is correct, and verify that you have chosen a valid resource file in the resource file field. Finally, each reader has a unique set of
format options that may or may not impact SOS operation. Please look up individual reader functionality in the User Manual.
4. If you know how many elements are in a given part, then when you are running SOS do a Query>Show Information>Part and
verify that it has the proper number of elements. You can also do a Query>Dataset to find the total number of elements. If it has a
multiple number of elements equal to the number of servers, then you have the problem that all servers are loading all of the data. For
example, with 4 Servers, your part has a multiple of four of all the element types. If you don’t remember how many elements you have, try
loading your data without SOS, and write down how many elements you have, then repeat with SOS and compare.
A multiple number of elements, can be an indication that you’ve chosen the external decompose option above and every Server
thinks that it is supposed to be reading all of the data that it encounters. Another sign of this is that each server process still consumes
the same amount of memory as a single server process without SOS. All servers are loading all of the data. Another sign of this problem
is that SOS runs slower. All Servers are busy with all your data AND with communications. You may want to try Reader Decompose if
the reader allows this option, or Auto Decompose to allow the Servers to decompose your data, and recount your number of elements.
5. The calculator includes a function, ServerNumber, that Calculates the server number. Simply select all your parts and calculate
this value and color your geometry by ServerNumber. Now you can visualize what servers are responsible for what portion of the
domain. If you color your geometry by ServerNumber variable, and the ServerNumber legend does not have the same range as the
number of servers that you are using, then something is wrong. For example, with 4 servers, the ServerNumber legend should have a
range of 1 to 4 and you should see colors on your geometry ranging from 1 to 4. If the range is from 1 to 1, then your servers may not
have started up and you are just running client and server or Server number 1 has all of your data and servers 2-4 have none.. If the
range is from 3 to 3, then Server number 3 has all of your data and servers number 1, 2, and 4 do not have data for some reason. If the
range is from 1-4 (indicating that there are 4 Servers), but you only see your geometry colored all one color, then it may be that you are
experiencing the problem discussed in item 2 above: each Server is loading all of the data and you have 4 times the geometry
overlapping on the client display, and only the last color shows up.
6. EnSight does include the capability to trick client and server into thinking they are in SOS for isolating problems. Simply set the
following environmental variables as follows:
setenv AUTODISTRIBUTE_DEBUG_TOTAL_SERVERS 50
setenv AUTODISTRIBUTE_DEBUG_CURRENT_SERVER 13
setenv AUTODISTRIBUTE_DEBUG_N_OF_M 1
The first and second make the server think it is server 13 out of 50, and the last one turns this all on when set to 1. This will enable
you to run EnSight in normal client and server mode, but the server will behave as if it is server 13 out of 50, thus allowing you to isolate
problems and validate behavior, while only using memory of one server.

Page 70
HOW TO USE SERVER OF SERVERS
TEMPORAL DECOMPOSITION
All of the previous discussion was spatial. This section will cover temporal decomposition. All formats should be
able to use temporal decomposition as long as there is sufficient room on your servers so that each server can load
the geometry and variables for one full timestep. Temporal decomposition is really just temporal caching of the
timesteps before and after the current timestep. Each server reads one timestep and calculates all variables and
creates all parts that you have created in your analysis on the current timestep. Therefore, changing timestep to the
next (or previous) timestep occurs much more rapidly because the server that has responsibility that step has it pre-
cached does not need to do I/O nor calculations nor part creation, and must simply pass its data up to the client. Note
that the caching is for timesteps right around the current timestep: five servers and the current timestep is 6, might
mean that one server is responsible for timestep 6 and the others are responsible for timesteps 4, 5, 7, and 8.
Changing to timestep 12 will not benefit from the cached timesteps, and will, in fact, slow EnSight down: all five
servers now will load five new timesteps simultaneously: 10, 11, 12, 13, and 14.
SEE ALSO
How To Read Data
How To Read User Defined
How To Setup for Parallel Computation
How To Use Resource Managament
How To Use Root Level Server of Servers
User Manual: Server-of-Server Casefile Format

Page 71
HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES
Load Spatially Decomposed Case Files
INTRODUCTION
If one has multiple EnSight gold casefiles (each of which contain a spatially decomposed portion of the same model),
they can be read using one or more servers (as long as the number of servers is less than or equal to the number of
casefiles). In other words, when it is desired to read N casefiles with M servers (M<=N), an additional section can be
added to the SOS casefile to accomplish this. Note that the following important restrictions/limitations will apply:
1. M (number of servers) must be less than or equal to N (number of casefiles).
2. Unstructured data only. (Note: a similar capability exists for structured data. See How to Use Block Continuation)
3. Auto distribute may not be specified in the SOS casefile.
4. None of the following can be specified in the partition casefiles:
GEOMETRY
measured:
match:
boundary:
rigid_body:
Vector_glyphs:
BLOCK_CONTINUATION
<any of the options>
MATERIAL
<any of the options>
Note: that some of the restrictions (such as measured) may eventually be lifted. But currently all of the above are
in effect.
5. All of the normal SOS requirements still apply.
a) All parts must be present in all cases. (Empty parts are allowed)
b) The same variables must exist in all cases.
c) The same timesets must be used in all cases.
Note: If the desired number of servers is equal to the number of casefiles, one can either use the procedure
described in this How To, or could use the normal SOS procedures (see How To Use Server of Servers).
BASIC OPERATION
To postprocess your partitioned EnSight Gold unstructured data on fewer servers than casefiles, run SOS using an
SOS casefile that has a MULTIPLE_CASEFILES section.
Three possible methods are available for your convenience. They all accomplish the same thing in slightly different
ways. So use whichever is easiest for your situation.
Note: in using one of the 3 the methods below, one should determine something about how the data resides, or is
available to EnSight. Namely, how will one need to specify the path to the data.
Since the whole idea is that the number of servers may vary, and Ensight will determine which casefiles go
to which servers, there are really only two possibilities for paths.
A) There is a global path for all of the data. And thus each server needs to know this global path (which it
will prepend to each casefile).
B) Each casefile has its own path. And each server needs to know the path for each.

Page 72
HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES
Example
Method 1
Specify the number of and the actual files in the sos casefile
A) Using global path:
MULTIPLE_CASEFILES
total number of cfiles: 3
cfiles global path: /home/bjn/data
cfiles: file1.case
file_b.case
bruce.case
B) Using path per casefile:
MULTIPLE_CASEFILES
total number of cfiles: 3
cfiles: /home/bjn/data1/file1.case
/home/bjn/data2/file_b.case
/home/bjn/data3/bruce.case
Method 2
Specify the number of, the pattern, and the start and increment
A) Using global path:
MULTIPLE_CASEFILES
total number of cfiles: 3
cfiles global path: /home/bjn/data
cfiles pattern: file**.case
cfiles start number: 0
cfiles increment: 1
OR
MULTIPLE_CASEFILES
total number of cfiles: 3
cfiles pattern: /home/bjn/data/file**.case
cfiles start number: 0
cfiles increment: 1
Available Section lines: Comments
MULTIPLE_CASEFILES Required for all methods
total number of cfiles: n Used for method 1 and 2
cfiles global path: global_path Optional, used for methods 1 and 2
cfiles: partition_1.case Used for method 1
partition_2.case
.
.
partition_n.case
cfiles pattern: partition_*.case Used for method 2
cfiles start number: # Used for method 2
cfiles increment: # Used for method 2
cfiles file: filename Used for method 3

Page 73
HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES
B) Using path per casefile:
Note: method 2 does not have a way to have a separate path for each casefile.
Method 3
Similar to 1., but place the info in a separate file
A) Using global path:
MULTIPLE_CASEFILES
cfiles file: all_together_cfiles.txt
and in all_together_cfiles.txt, (first line contains number of, second line contains the optional global path, then
filenames come 1 per line on the following lines). Like:
3
/home/bjn/data
file1.case
file_b.case
bruce.case
B) Using path per casefile:
MULTIPLE_CASEFILES
cfiles file: separated_cfiles.txt
and in separated_cfiles.txt, (first line contains number of, second line must be the word “none” - indicating no global
path specified, then filenames come 1 per line on the following lines). Like:
3
none
/home/bjn/data1/file1.case
/home/bjn/data2/file_b.case
/home/bjn/data3/bruce.case
Another Example
An EnSight Gold unstructured transient geometry model with a couple of variables, in 4 partitions, like:
Using Method 1:
If they all reside in the same directory (/home/bjn), a method 1 SOS casefile that will use just 2 servers (perhaps
named bjn_4x2.sos) should look like:
FORMAT
type: master_server gold
MULTIPLE_CASEFILES
total number of cfiles: 4
cfiles global path: /home/bjn
cfiles: bjn1.case
bjn2.case
bjn3.case
bjn4.case
SERVERS
number of servers: 2 repeat
bjn1.case bjn2.case bjn3.case bjn4.case
bjn1.geo0000 bjn2.geo0000 bjn3.geo0000 bjn4.geo0000
bjn1.geo0001 bjn2.geo0001 bjn3.geo0001 bjn4.geo0001
bjn1.scalar0000 bjn2.scalar0000 bjn3.scalar0000 bjn4.scalar0000
bjn1.scalar0001 bjn2.scalar0001 bjn3.scalar0001 bjn4.scalar0001
bjn1.evector0000 bjn2.evector0000 bjn3.evector0000 bjn4.evector0000
bjn1.evector0001 bjn2.evector0001 bjn3.evector0001 bjn4.evector0001

Page 74
HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES
machine id: gun
executable: ensight102.server
Using Method 2:
If they all reside in the same directory (/home/bjn), a method 2 SOS casefile that will use just 2 servers should look
like:
FORMAT
type: master_server gold
MULTIPLE_CASEFILES
total number of cfiles: 4
cfiles global path: /home/bjn
cfiles pattern: bjn*.case
cfiles start number: 1
cfiles increment: 1
SERVERS
number of servers: 2 repeat
machine id: gun
executable: ensight102.server
Using Method 3:
For this one, lets change things and say that they reside in separate directories, like:
the SOS casefile could look like:
FORMAT
type: master_server gold
MULTIPLE_CASEFILES
cfiles file: /scratch/bjn.txt
SERVERS
number of servers: 2 repeat
machine id: gun
executable: ensight102.server
and the /scratch/bjn.txt file could look like:
4
none
/scratch/portion1/bjn1.case
/scratch/portion2/bjn2.case
/scratch/portion3/bjn3.case
/scratch/portion4/bjn4.case
or could look like: (See the Other Notes below)
4
/scratch
portion1/bjn1.case
portion2/bjn2.case
portion3/bjn3.case
portion4/bjn4.case
/scratch/portion1 /scratch/portion2 /scratch/portion3 /scratch/portion4
bjn1.case bjn2.case bjn3.case bjn4.case
bjn1.geo0000 bjn2.geo0000 bjn3.geo0000 bjn4.geo0000
bjn1.geo0001 bjn2.geo0001 bjn3.geo0001 bjn4.geo0001
bjn1.scalar0000 bjn2.scalar0000 bjn3.scalar0000 bjn4.scalar0000
bjn1.scalar0001 bjn2.scalar0001 bjn3.scalar0001 bjn4.scalar0001
bjn1.evector0000 bjn2.evector0000 bjn3.evector0000 bjn4.evector0000
bjn1.evector0001 bjn2.evector0001 bjn3.evector0001 bjn4.evector0001

Page 75
HOW TO LOAD SPATIALLY DECOMPOSED CASE FILES
OTHER NOTES:
When your casefile data resides in separate directories below a parent, such as:
/home/bjn
/home/bjn/data1
/home/bjn/data2
/home/bjn/data3
it is valid to use the global path to specify the parent directory, and the individual files to give the path on down. Such
as:
cfiles global path: /home/bjn
cfiles: data1/file1.case
data2/file_b.case
data3/bruce.case
This will result internally as the same thing as if you had done:
cfiles: /home/bjn/data1/file1.case
/home/bjn/data2/file_b.case
/home/bjn/data3/bruce.case
APPENDED_CASEFILES Variation:
If you desire to use all casefiles on one server, you can obviously do so with the above option by using the SOS with
one server. However, there is a variation on this option that can be used without using the SOS. It can be used with
a client and server alone.
It is very similar to the MULTIPLE_CASEFILES option in an SOS casefile, except that it is placed in the first regular
casefile of the series - the one that you will read. It uses APPENDED_CASEFILES as the section header, and lists
just the additional casefiles (not the one that this is placed in).
So instead of using the SOS with an SOS casefile like:
FORMAT
type: master_server gold
MULTIPLE_CASEFILES
total number of cfiles: 4
cfiles global path: /home/bjn
cfiles: bjn1.case
bjn2.case
bjn3.case
bjn4.case
SERVERS
number of servers: 1
machine id: gun
executable: ensight102.server
You could place the following in bjn1.case:
FORMAT
type: ensight gold
GEOMETRY
model: bjn1.geo
VARIABLE
scalar per node: scalar bjn1.scl
APPENDED_CASEFILES
total number of cfiles: 3
cfiles global path: /home/bjn
cfiles: bjn2.case
bjn3.case
bjn4.case
Note that all current limitations for the MULTIPLE_CASEFILES option (which were enumerated above) also
apply to the APPENDED_CASEFILES option. The two options cannot be used in combination. It is an either
or situation.

Page 77
HOW TO READ USER DEFINED
Read User Defined
INTRODUCTION
EnSight provides a mechanism for users to write their own readers and have the code automatically link and execute
at run-time (using a shared library).This capability is documented in the EnSight Interface Manual. As indicated in
that manual, sample readers, as well as the code for several actual readers are provided below the following
directory: $CEI_HOME/ensight102/src/readers/. In subdirectories underneath, there may exist other
README files that contain additional information on using existing user defined readers.
Also, as explained in that manual, be aware that a udr_checker.c file is provided in $CEI_HOME/ensight102/src/
readers/checker directory. This can be used to debug your User-defined reader before using it with EnSight.
OTHER NOTES
When starting EnSight (ensight102 or ensight102.server), you can use the command line option “-readerdbg” to echo
user defined reader loading status. This will allow you to see what readers are actually being loaded.
Set the environment variable ENSIGHT10_READER to point to the path where additional user defined readers exist
and then start up with the -readerdbg option described above to verify that you are loading the reader(s) of interest.
SEE ALSO
The EnSight Interface Manual, as well as:
How To Read Data

Page 78
HOW TO DO STRUCTURED EXTRACTION
Do Structured Extraction
INTRODUCTION
When loading structured parts (normally by right clicking on a part in the Parts list that has not yet been loaded), there
is some flexibility in what is actually extracted. If the model contains iblanking, then you have control over which
iblanking domain to use, namely Inside, Outside (blanked out), or All (which ignores the iblanking). If no iblanking in
the model, the domain is All by default. You can do things like extracting all or portions of zones at original or coarser
resolutions or doing the extractions on single or multiple zones.
BASIC OPERATION
When extracting the domain parts, whether iblanked or not, some (but definitely not all combinations) of the options
include:
Extracting a complete zone at original resolution,
1. Right click on the desired zone, and
click Load Part.
Optionally you can change the iblank
domain, choose the element
representation, and provide a part
description.
2. Hit the Load as new part button.
The part will be created and shown in the
graphics window. In the example below, it
is shown in border representation mode.

Page 79
HOW TO DO STRUCTURED EXTRACTION
Extracting a complete zone at coarser resolution,
1. Right click on the desired zone, and
click Load Part.
Optionally you can change the iblank
domain, choose the element representation,
and provide a part description.
2. Modify the Step values.
These should be positive integer values. A
step of two means to deal with every other
plane, a step of four means every fourth
plane, etc.
3. Hit the Load as new part button.
The part will be created and shown in the
graphics window. In the example below, it is
shown in border representation mode. Note
that it is considerably coarser than the
previous because step values of 2, 4, and 5
were used in the ijk directions respectively.

Page 80
HOW TO DO STRUCTURED EXTRACTION
Extracting portions of a zone,
1. Right click on the desired zone, and
click Load Part.
Optionally you can change the iblank
domain, choose the element representation,
and provide a part description.
2. Modify the From and To values.
These can be anything between the ranges
shown in the Min and Max columns. By
default they will be the entire range, but you
can modify them.
3. Hit the Load as new part button.
The part will be created and shown in the
graphics window. In the example below, it is
shown in border representation mode. Note
that you now get a portion instead of the
whole. Note also that we got original
resolution because we set step values back
to one. The step values can be other than
one, and your portion will be at the coarser
resolution.

Page 81
HOW TO DO STRUCTURED EXTRACTION
Extracting the same portions over multiple parts,
1. Select the structured zones desired.
Optionally you can change the domain
2. Modify the From and To values.
These can be anything between the ranges shown in the Min
and Max columns (which will now be the min and max of all
parts selected). By default the From and To will be the entire
range, but you can modify them. Additionally, “-1” is a valid
entry, indicating the last plane. Minus numbers are ways to
specify the plane from the max back toward the min, thus -2
equals the next to last plane. (Note: Zero is treated the same
as -1)
3. Hit the Load as new part button.
In this example, 4 parts will be created, and they will
each be the full extent IK plane at J = 1 for each of the
four zones. Note that the IK ranges can actually vary
per part because the max is specified, but each zone
may be less than the max.
In our example, we then changed From and To to be “0”, thus
extracting the last plane in each zone. Note the image below.
The image at the right includes complete zones that were
extracted, but shown in feature angle representation so
you get the feel of the complete zone.

Page 82
HOW TO DO STRUCTURED EXTRACTION
Note: Prior to EnSight10, one could also extract multiple planes within the same zone while loading the part, through
the use of a delta column. This has been discontinued, but the same effect can be achieved by using the delta field
within an ijk clip.
SEE ALSO
How To Read Data
User Manual: Using Node Ranges:

Page 83
HOW TO USE RESOURCE MANAGEMENT
Use Resource Management
INTRODUCTION
Resources are used to specify which computers are used for running the various EnSight components, specifically
the Server (ensight102.server), the SOS (ensight102.sos), the CollabHub (ensight102.collabhub), and the distributed
renderers (ensight102.client). If you are running a single client and server on a single computer, you may skip this
document.
Resources are an alternative way to specify these computers compared to SOS case files, PRDIST files, Connection
Settings, and command line options. While these other ways are still valid and take precedence for backwards
compatibility, resources greatly simplify specifying computers in a dynamic network environment. For example, SOS
Case files and PRDIST files no longer need to be edited to reflect the current node allocation from cluster batch
schedulers. Resources coupled with native reader support in the SOS even make SOS Case files unnecessary.
Resources can be specified via command line arguments and environment variables. Resources can be specified
multiple times; precedence rules determine which resources ultimately get used. This allows sites to specify defaults
while allowing those to be overridden.
NOTE: While resources can still be specified according to this document, the entire resource management
support is moving to the newer technology called “cei-shell”.
BASIC OPERATION
Resource Files
Resources can be specified via a resource file. Here is an example of a resource file:
#!CEIResourceFile 1.0
SOS:
host: localhost
SERVER:
prologue: “setup_job”
epilogue: “cleanup_job”
host: server1
host: server2
host: server3
host: server4
COLLABHUB:
host: pc0
RENDERER:
prologue: “setenv DISPLAY :0.0”
# epilogue:
host: pc1
host: pc2
host: pc2
Resource files must begin with the ‘#!CEIResourceFile 1.0’ line. Afterwards, they may have up to four optional
sections: SOS, SERVER, COLLABHUB, and RENDERER. Each of the four sections contains one or more ‘host:
hostname’ lines. These lines specify which computers to use for the corresponding section. ‘hostname’ must be an
Internet/intranet routable host name or IP address. A given host name may appear on multiple lines within a section
or in different sections. If it appears multiple times within a section, then that host will run multiple instances of the
corresponding EnSight component if needed.
Additionally, each section may have an optional ‘prologue: cmd’ line and/or an optional ‘epilogue: cmd’ line.
These specify a command to execute on each host before and after the corresponding EnSight component. Note that
the cmd string must be quoted, and may include appropriate job backgrounding symbols (e.g. ‘&’).
At version 2.0, the resource file can accept an optional ‘shell:’ line, like:
#!CEIResourceFile 2.0
SOS:
host: bunker
shell: "/usr/local/bin/ssh"

Page 84
HOW TO USE RESOURCE MANAGEMENT
Note the new version number (2.0) and that the shell line string must be double quoted.
How to specify resources
Resources can be specified via resource files, environment variables, and command line options. Precedence rules
determine which resources will be used. Basically, the last occurrence of a resource section (e.g. SERVER) will be
used in its entirety. For example, if multiple SERVER resource sections are found, only one will be used as determined
by the precedence rules.
Since the EnSight Client, SOS, and CollabHub start other EnSight processes, they can use resources. The EnSight
Server and distributed renderers do not start other EnSight processes that require resources.
While many ways exist to specify resources, in practice only one or two will be used given the particular user’s
computational environment.
Client Resources
The EnSight client supports the following ways for specifying resources:
1. the ENSIGHT10_RES environment variable;
2. the ENSIGHT10_SERVER_HOSTS environment variable;
3. the ENSIGHT10_RENDERER_HOSTS environment variable;
4. the ‘-use_lsf_for_servers’ command line option;
5. the ‘-use_lsf_for_renderers’ command line option;
6. the ‘-use_pbs_for_servers’ command line option;
7. the ‘-use_pbs_for_renderers’ command line option;
8. the ‘-sosres file_name’ command line option;
9. the ‘-chres file_name’ command line option; and
10.the ‘-res file_name’ command line option.
If multiple resources are specified to the client, then they will be evaluated in the order indicated above with the later
methods taking higher precedence for a given section.
The ENSIGHT10_RES environment variable specifies a resource file name that the client reads.
ENSIGHT10_SERVER_HOSTS and ENSIGHT10_RENDERER_HOSTS specify quoted strings of space delimited host
names (e.g. “host1 host2 host1 host3”) to be used for EnSight servers and distributed renderers, respectively.
The host names are used in the order they occur. A host name may occur multiple times.
If either the ‘-use_lsf_for_servers’ or ‘-use_lsf_for_renderers’ command line options are specified, then
the client will evaluate the environment variable LSB_MCPU_HOSTS for the resources. The environment variable
specifies a quoted string such as “host1 5 host2 4 host3 1” which indicates 5 CPUs should be used on host1,
4 CPUs should be used on host2, and 1 CPU should be used on host3. The hosts will be used in a round-robin
fashion.
If either of the ‘-use_pbs_for_servers’ or ‘-use_pbs_for_renderers’ command line options are specified,
then the client will evaluate the environment variable PBS_NODEFILE for the resources. The environment variable
specifies a filename in which the file contains list of line delimited host names that were allocated by the PBS
scheduler.
The ‘-sosres file_name’ command line option specifies the pathname to a resource file. This file name is passed
to the SOS and processed by it; thus the file name must be accessible and readable by the ensight102.sos process.
If multiple ‘-sosres’ options are specified, only the last will be used.
The ‘-chres file_name’ command line option specifies the pathname to a resource file. This file name is passed
to the CollabHub and processed by it; thus the file name must be accessible and readable by the
ensight102.collabhub process. If multiple ‘-chres’ options are specified, only the last will be used.
The ‘-res file_name’ command line option specifies the pathname to a resource file. This command line option
can be specified multiple times. This might be useful when generating resource files dynamically: a single file might
specify only a particular type of resource (e.g. SERVER or RENDERER). The last occurrence of a particular section
takes precedence when multiple ‘-res’ options are given.
Finally, a resource file may be selected in the File->Open dialog for the SOS to use.

Page 85
HOW TO USE RESOURCE MANAGEMENT
SOS Resources
The EnSight SOS supports the following ways for specifying resources:
1. resources gathered and sent from the client;
2. the ‘-sosres file_name’ command line option;
3. the ENSIGHT10_RES environment variable;
4. the ENSIGHT10_SERVER_HOSTS environment variable;
5. the ‘-use_lsf_for_servers’ command line option;
6. the ‘-use_pbs_for_servers’ command line option;
7. the ‘-res file_name’ command line option; and,
8. a resource file specified via the File->Open dialog.
If multiple resources are specified to the SOS, then they will be evaluated in the order indicated above with the later
methods taking higher precedence for a given section. However, the SOS only uses SERVER section resources; the
other sections are ignored.
The ‘-sosres file_name’ command line option specifies the pathname to a resource file. If multiple ‘-sosres’
options are specified, only the last will be used.
The ENSIGHT10_RES environment variable specifies a resource file name that the SOS reads.
ENSIGHT10_SERVER_HOSTS specifies a quoted string of space delimited host names (e.g. “host1 host2 host1
host3”) to be used for EnSight servers.
If the ‘-use_lsf_for_servers’ command line option is specified, then the SOS will evaluate the environment
variable LSB_MCPU_HOSTS for the resources. The environment variable specifies a quoted string such as “host1 5
host2 4 host3 1” which indicates 5 CPUs should be used on host1, 4 CPUs should be used on host2, and 1 CPU
should be used on host3. The hosts will be used in a round-robin fashion.
If the ‘-use_pbs_for_servers’ command line option is specified, then the SOS will evaluate the environment
variable PBS_NODEFILE for the resources. The environment variable specifies a filename in which the file contains
list of line delimited host names that were allocated by the PBS scheduler.
The ‘-res file_name’ command line option specifies the pathname to a resource file. This command line option
can be specified multiple times. The last occurrence of a particular section takes precedence when multiple ‘-res’
options are given.
Finally, a resource file may be selected in the File->Open dialog for the SOS to use.
CollabHub Resources
The EnSight CollabHub supports the following ways for specifying resources:
1. resources gathered and sent from the client;
2. the ‘-chres file_name’ command line option;
3. the ENSIGHT10_RES environment variable;
4. the ENSIGHT10_RENDERER_HOSTS environment variable;
5. the ‘-use_lsf_for_renderers‘ command line option;
6. the ‘-use_pbs_for_renderers’ command line option; and,
7. the ‘-res file_name’ command line option.
If multiple resources are specified to the CollabHub, then they will be evaluated in the order indicated above with the
later methods taking higher precedence for a given section. However, the CollabHub only uses RENDERER section
resources; the other sections are ignored.
The ‘-chres file_name’ command line option specifies the pathname to a resource file. If multiple ‘-chres’
options are specified, only the last will be used.
The ENSIGHT10_RES environment variable specifies a resource file name that the CollabHub reads.
ENSIGHT10_RENDERER_HOSTS specifies a quoted string of space delimited host names (e.g. “host1 host2
host1 host3”) to be used for EnSight distributed renderers.
If the ‘-use_lsf_for_renderers‘ command line option is specified, then the CollabHub will evaluate the
environment variable LSB_MCPU_HOSTS for the resources. The environment variable specifies a quoted string such

Page 86
HOW TO USE RESOURCE MANAGEMENT
as “host1 5 host2 4 host3 1” which indicates 5 CPUs should be used on host1, 4 CPUs should be used on
host2, and 1 CPU should be used on host3. The hosts will be used in a round-robin fashion.
If the ‘-use_pbs_for_renderers’ command line option is specified, then the CollabHub will evaluate the
environment variable PBS_NODEFILE for the resources. The environment variable specifies a filename in which the
file contains list of line delimited host names that were allocated by the PBS scheduler.
The ‘-res file_name’ command line option specifies the pathname to a resource file. This command line option
can be specified multiple times. The last occurrence of a particular section takes precedence when multiple ‘-res’
options are given.
When using distributed rendering, any hosts specified via a prdist file are used instead of those given by RENDERER
resources. Additionally, any prdist file specified directly to the collabhub, will override one specified to the client.
A Client/Server Example
Resources are not used to specify where a server runs when it is part of a normal client/server session. The default
server connection in the Connection Setting dialog determines on which computer the server runs unless the Client
command line option ‘-c connection_name’ is specified.
A Simple SOS Example
The SOS can read any of the supported file formats in addition to the SOS Case file format. When a SOS Case file is
not used, then the number of EnSight Servers used is equal to the number of hosts specified in the SERVER resource
section.
1. The following resource file ‘my_hosts.res’ is created:
#!CEIResourceFile 1.0
SOS:
host: borg
SERVER:
host: drone1
host: drone2
host: drone3
host: drone1
2. EnSight is started with this command line:
ensight102 -res my_hosts.res -sos
The EnSight Client will automatically check out a gold key and will run on the local workstation, the SOS
(ensight102.sos) will be automatically started on computer ‘borg’ and will connect back to the client. Borg will need to
recognize the name of the computer that the client is running on.
3. In the File->Open dialog the LS-Dyna file ‘d3plot’ is selected and the ‘Load All’ button is clicked.
The SOS will start four EnSight Servers on computers ‘drone1’, ‘drone2’, ‘drone3’, and ‘drone1’ (presumably,
‘drone1’ might be a SMP). The ‘drone’ computers need to recognize the hostname borg in order to connect back to
the sos running on this computer.
Each of the servers will read 1/4 of the data set since the ‘Auto Distribute’ flag (on the SOS tab of the File->Open
dialog) is on by default for the LS-Dyna reader.
Another SOS Example
1. EnSight is started with this command line:
ensight102
2. The Case->Connection Settings dialog is opened. On the ‘SOS’ tab, an entry for host ‘borg’ is created. For
that entry, ‘Executable:’ is set to the name of command file ‘my_sos’, ‘Use default rsh cmd’ is
deselected, and ‘Alt rsh cmd:’ is set to ‘ssh’. The entry is saved and EnSight is terminated.
3. The following resource file ‘my_hosts.res’ is created:

Page 87
HOW TO USE RESOURCE MANAGEMENT
#!CEIResourceFile 1.0
SOS:
host: borg
SERVER:
host: drone1
host: drone2
host: drone3
host: drone1
4. On computer borg (assuming it is running Unix or Linux), the file ‘my_sos’ is created:
#!/bin/csh
setenv ENSIGHT10_SERVER_HOSTS ‘cat $PBS_NODEFILE‘
ensight102.sos $*
The file must be in the user’s default path and must be executable.
5. EnSight is started with this command line:
ensight102 -res my_hosts.res -sos
The EnSight Client will check out an hpc (formerly gold) license key and run on the local workstation, the command
file ‘my_sos’ will run on computer ‘borg’ which must be able to connect back to the local workstation by hostname.
The client will start up ‘my_sos’ via ssh. ‘my_sos’ sets the environment variable ENSIGHT10_SERVER_HOSTS to
be the contents of the file specified by the environment variable PBS_NODEFILE (OpenPBS’ dynamic list of
allocated nodes).
6. In the File->Open dialog the LS-Dyna file ‘d3plot’ is selected and the ‘Load All’ button is clicked.
The SOS will start EnSight Servers on computers specified in file $PBS_NODEFILE. Hosts specified in the SERVER
section of my_hosts.res are ignored since ENSIGHT10_SERVER_HOSTS takes precedence.
Each of the servers will read 1/N of the data set since the ‘Auto Distribute’ flag (on the SOS tab of the File-
>Open dialog) is on by default for the LS-Dyna reader.
A SOS Case File Example
When a SOS Case file is used with resources, it needs to be modified otherwise the resources will be ignored for the
EnSight Servers. This is done for backwards compatibility.
1. The file SOS case file ‘big_data.sos’ is modified. Two lines are added to the FORMAT section:
‘use_resources: on’ and ‘auto_distribute: on’. The ‘casefile: ‘ line for each server is brought to
the beginning of each subsection.
FORMAT type: master_server LS-DYNA3D
use_resources: on
auto_distribute: on
SERVERS
number of servers: 2
#Server 1
#---------
casefile: d3plot
machine id:
executable: ensight102.server
directory: /tmp
login id:
data_path: /tmp
#Server 2
#---------
casefile: d3plot
machine id:
executable: ensight102.server
directory: /tmp
login id:

Page 88
HOW TO USE RESOURCE MANAGEMENT
data_path: /tmp
Note that the ‘casefile:’ line must appear before the other lines for that server
when using resources.
2. The following resource file ‘my_hosts.res’ is created:
#!CEIResourceFile 1.0
SOS:
host: borg
SERVER:
host: drone1
host: drone2
host: drone3
host: drone1
2. EnSight is started with this command line:
ensight102 -res my_hosts.res -sos
The EnSight Client will run on the local workstation, the SOS (ensight102.sos) will run on computer ‘borg’.
3. In the File->Open dialog the SOS Case file ‘big_data.sos’ is selected and the ‘Load All’ button is clicked.
The SOS will start two EnSight Servers on computers ‘drone1’ and ‘drone2’. Only two servers are used since two
‘casefile: ‘ lines occur in the SOS Case file. The ‘number of servers: 2’ line is ignored as are the
‘machine id:’ lines.
Each of the servers will read half of the data set due to the line ‘auto_distribute: on’ in ‘big_data.sos’.
Another SOS Case File Example
1. The file SOS case file ‘big_data.sos’ is modified. Two lines are added to the FORMAT section:
‘use_resources: on’ and ‘auto_distribute: on’. The ‘number of servers:’ line is modified. One
server subsection is specified.
FORMAT
type: master_server LS-DYNA3D
use_resources: on
auto_distribute: on
SERVERS
number of servers: 4 repeat
#Server 1
#---------
casefile: d3plot
machine id:
executable: ensight102.server
directory: /tmp
login id:
data_path: /tmp
2. The following resource file ‘my_hosts.res’ is created:
#!CEIResourceFile 1.0
SOS:
host: borg
SERVER:
host: drone1
host: drone2
host: drone3
host: drone1

Page 89
HOW TO USE RESOURCE MANAGEMENT
2. EnSight is started with this command line:
ensight102 -res my_hosts.res -sos
The EnSight Client will run on the local workstation, the SOS (ensig