Chapter A : Getting started
A2 : Software and hardware requirements
A3 : How to download Se.La.Vi. from the Internet and how to install it
Chapter B : Se.La.Vi.'s functions
Chapter C : Troubleshooting
TRADEMARKS :
IBM is a registered trademark of International Business Machines Corporation
MS-DOS is registered trademark of Microsoft Corporation.
Microsoft Windows is a trademark of Microsoft Corporation.
N.T.U.A. stands for National Technical University of Athens.
Se.La.Vi. (SciEntific
LAb for VIsualization) ,
is trademark of N.T.U.A. , Department of Mechanical Engineering, Fluids
Section.
INTRODUCTION :
This manual is designed by
the Se.La.Vi. developers
that took under consideration the user´s
requests. We hope that it will satisfy your own needs and if not, we´ re
waiting for your feedback
in order to improve this document.
HOW TO READ THIS MANULAL :
This manual assumes that you are familiar with the following :
It is created in HTML file format,
meaning that the highlighted words of a paragraph are links to other paragraphs
or even links to other HTML documents in the Internet.
If you are reading a printed copy please note that the contents may have been changed and that the latest version is available at : http://www.fluid.mech.ntua.gr/selavi/manual.htm
You should begin reading Chapter
[A:"Getting started"], paragraph [A1:"General
description"].
If you have not yet installed a version
of Se.La.Vi. to your computer, read paragraph [A2:"Software
and Hardware requirements"], and then visit Se.La.Vi.´s Home Page
at : http://www.fluid.mech.ntua.gr/selavi
After reading paragraph [A3:"How
to download Se.La.Vi. from the Internet and how to install it"]
, download
the latest version of the software and run the setup utility to install
it.
If you have already installed a version
of Se.La.Vi. please be sure that this is the latest.
Continue
reading this manual from paragraph
[A4:"What do you want to visualize today?"]
Chapter A : Getting
started
Se.La.Vi. (SciEntific LAb for VIsualization) is a scientific data visualization software with animation engine.
Se.La.Vi. is CFD (Computational Fluid Dynamics) oriented, meaning it has been designed to visualize data obtained through numerical simulations and describing flow phenomena.
Despite its original CFD orientation, Se.La.Vi. can also succesfully visualized data from other areas of science.
Se.La.Vi. is freeware and its versions for windows 3.1 (16 bit) and windows 95 (32 bit) are distributed through the Internet since December 96 for every academic and non-profitable use.
The home page of Se.La.Vi. at
the Internet is at the
following address : http://www.fluid.mech.ntua.gr/selavi
At this location, every visitor can
download the latest versions of the software,
have access to some of its applications, get
help and communicate
with the developers´ team. There
is also available a multimedia presentation and some of the bitmaps, videos
and VRML worlds created by Se.La.Vi.
A2 : "Software
and Hardware requirements"
Se.La.Vi. is available in 16-bit(OS
Microsoft Windows 3.1) and 32 bit(OS Microsoft Windows 95) versions.
(CPU)486-33, (RAM)8 MB, (disk free space)7 MB
(Screen resolution)640x480, (Color
Deapth)8 bit
(CPU)486-66, (RAM)16 MB, (disk free space)10 MB
(Screen resolution)640x480, (Color
Deapth)8 bit
(CPU)Pentium 166, (RAM)32 MB, Graphics Accelarator,
(Screen resolution)1024x768 , (Color
Deapth)24 bit True Color
Note :
Se.La.Vi.´s 32 bit versions do
not run properly under MS-Windows
3.1 with WIN32S. Please always use 16 bit versions for MS-Windows 3.1
Se.La.Vi.´s 32 bit versions are
not fully compatible with Windows NT. This problem will be fixed in the
future (version 1.432 and later) so
that Se.La.Vi.´s 32 bit versions can run under Windows NT 4 or higher.
A3 : "How
to download Se.La.Vi. from the Internet and how to install it"
Use your Internet browser to visit Se.La.Vi.´s Home Page at : http://www.fluid.mech.ntua.gr/selavi
There, you will find a section entitled : "DOWNLOAD" and a list of all available versions of Se.La.Vi.
Every versions ID looks like : B0X.X16 (16 bit) or B0X.X32 (32 bit)
for example : B01.016(oldest) , B01.116, B01.216 , B02.216(latest)
B01.032(oldest) , B01.132, B01.232 , B02.232(latest)
Reading carefully paragraph [A2:"Software and Hardware requirements"] choose the latest version that matches your system and click to its name on the list.
Your Internet browser will prompt you to save the slvbXX16.zip or slvbXX32.zip file to a folder. Choosing a folder the download procedure will begin. During downloading the connection may be lost. In this case please try again.
After downloading the slvbXX16.zip or slvbXX32.zip file, extract the compressed files included in it using WINZIP or any compatible uncompress utility.
If you extract the files to a new or empty folder it will be easy for you to delete them after the installation.
Run the extracted file [Setup.exe] and follow the instractions shown on your screen.
Setup.exe will copy all the necessary files to your hard disk and will create an icon to your start menu (32 bit) or a program group to your desktop (16 bit) .
At the end of the installation utility be sure that you get the message "Se.La.Vi. installed succesfully"
You can now delete the slvbXX16.zip or slvbXX32.zip file and all the extracted files.
Note :
If you have downloaded an update from a version to another and not a stand alone version, the setup.exe may be missing. In this case, please replace manually the old files under Se.La.Vi.´s folder with the new extracted files. Usually, the file you will need to replace, will be Selavi.exe. If a file named Readme.txt appears between the extracted files, please read it before you replace any file.
The 32 bit versions of Se.La.Vi. can be automatically uninstalled from :
My Computer-> Control Panel -> Add/Remove Programs
There you will find a list with all
the installed software. Choose
Se.La.Vi. and click the "Add/Remove" button to uninstall it.
Please follow that procedure only if you are a advanced user of windows
95.
A4 : "What
do you want to visualize today?"
Using Se.La.VI. you can visualize :
and create :
Se.La.Vi. can visualize data written
to ASCI files without any specific format.
These ASCI files are inserted in an Library of Objects , as File Objects. The library can contain File and Data Objects. The Data Objects are linked to the File Objects and they read, manipulate and finally visualize their contents. Many Data Objects may be linked to a single File Object. The library can contain many File Objects. Every Data Object is responsible for an area of a File Object. This area can be static, i.e. from character 1(begin of the file) to character 1567 (somewhere in the file) or dynamic, i.e. from character 1+1567*frame to character 1567+1567*frame (frame = 0,1,2,3,..) in order to create animation. Se.La.Vi. creates also animation from static data by moving or rotating them around an axis.
A Data Objects reads only numbers
from the contents of a File Object and ignores any comments.
Numbers
are all not null expressions
("0.1234E+02" , "-2345" , "234.78") and null
expressions
in the following formats : "0" , ".0" , "+0.00E+5"
, "-0.000E2" e.t.c.
Expressions
such as "NTIME = 45" , "A34" , "Second Part"
are taken as comments and the rest of the line is ignored.
The numbers can be separated with
spaces, tabs, commas or all of them. Every file object has a separator
property that defines the separation character between two numbers.
If you leave blank lines between
the data, which is not neccessery, you will help the Data Object which
reads the file to undestand the grid dimensions and geometry.
For example if you are writing a
2D, 521*62 grid to an ASCI file, with a point counter and a pressure coefficient
distribution on it, you will write 521*62 = 32303 [counter,x,y,Cp] vectors
meaning 32303*4 = 129298 numbers. The ASCI file will look like this :
1 , 0.100 , 1.564 , -.45
2 , 0.340 , 1.123 , -.49
. ..... ..... ....
. ..... ..... ....
129298
, 0.453 , 1.345 , -.42
In this case you should set Data
Objects number of sections = 62
If you leave a blank line every 521
vectors or 521*4 = 2084 numbers, the ASCI file will look like this :
1 , 0.100 , 1.564 , -.45
2 , 0.340 , 1.123 , -.49
. ..... ..... ....
. ..... ..... ....
521
, 0.453 , 1.345 , -.42
[blank line]
522 , 0.100 , 1.564 , -.45
523 , 0.120 , 1.264 , -.43
. ..... ..... ....
. ..... ..... ....
1042
, 0.234 , 1.234 , -3.8
[blank line]
1043 , 0.230 , 1.374 , -2.4
1044 , 0.250 , 1.464 , -2.4
. ..... ..... ....
. ..... ..... ....
. ..... ..... ....
. ..... ..... ....
129298
, 0.453 , 1.345 , -.42
In this case the Data Object will
automatically set number of sections
= 62
A step by step example is given in Se.La.Vi.´s Help Tour at : http://www.fluid.mech.ntua.gr/selavi/topo.htm
There, a file named topo.dat which describes a 3d topography is visualized and animated by rotation around an axis. The created library also exists under Se.La.Vi.´s folder at ..\demo\topo.lib
Please study this example carefully
before you continue reading
the manual.
It is required to leave blank lines
between the grid sections only if the items per section are not constant.
To visualize grids with N*M(N) dimensions, you must separate the sections(N)
with blank lines.
Data Objects which read unstructured
data ignore
sections number.
A5 : " Visualization
applications sample "
Title | Calculations by | Description | Image | Video |
Port injection in gasoline internal combustion engine. |
Theodorakakos Andreas |
Unsteady CFD simulation, following the finite volume methodology. Spray simulation following the discrete droplet method DDM (Lagrangian approximation) |
2 AVI Video files 364x480 37 frames 8 sec each |
|
3d flow developmend around a propeller in open water. |
Petros Chassapoyiannis |
The flow is modeled using a vortex particle method, where the blades are represented as lifting surfaces, the hub as a non-lifting body and their wake as vortex particles. |
AVI Video file 320x240 68 frames 8sec |
|
Wind turbine , blade-tower interaction. |
Lina Pothou |
View of the free particle wake. The blade and the tower are modeled as thin lifting surfaces generating wakes. |
AVI Video file 320x240 68 frames 8sec |
|
Unsteady laminar flow of the wake behind a cylinder. |
Theodora Pappou |
Here, the visualization procedure concerns the vorticity contours in the wake behind a cylinder over one period of the unsteady phenomenon. |
AVI Video file 500x378 20 frames 2 sec |
A more detailed description of those is available through the Internet under Se.La.Vi.´s Home Page (Just click to an item of the list)
Chapter B : "Se.LA.Vi.´s
functions"
B1 : "Library
of Objects , File Viewer and Properties of objects"
Use 'Add New File Object' button to add the ASCI file you want to visualize to the library as File Object.
Press 'Add New Data Object' button to create a new Data Object.
Se.La.Vi.'s wizard will then help you to Create a link between the Data Object and the File Object.
Use File Viewer in order to define the area of the file to which the Data Object refers.
If the Data Object refers to more than one frames (time steps) always define the area of the first frame (see paragraph B3)
At this point the Data Object is ready to read and
manipulate the contents of the file.
|
|||
Property | Data type | Values | Comments |
Name | string | Read only | |
Path | string | Read only | |
Size | long | Read only | |
Date | date | Read only | |
Time | time | Read only | |
Separator | integer | 0. Space
1. Tab 2. Comma 3. All |
Defines the separation character between two numbers. |
|
|||
Property | Data type | Values | Comments |
Name | string |
|
|||
Property | Data type | Values | Comments |
Parent file object | file object | Every data object
has only one parent file object.
Many data objects may have the same parent file. |
|
From | long | 1 - | Characters position in file |
To | long | 1 - | Characters position in file |
|
|||
Property | Data type | Values | Comments |
Dimensions | integer | 1 - | Data item dimension
examples :
[x, y] 2 [x, y,z ] 3 [x, y, z, Cp, Density, Mach number] 6 |
Data item type | integer | 0. Custom | free dimensions, can visualize any items |
1. [x] | dimensions = 1 | ||
2. [x,y] | dimensions = 2 | ||
3. [x,y,z] | dimensions = 3 | ||
4. [x,y,z,C ] | dimensions = 4
C is distributed on the grid |
||
5. [cnt,x] | dimensions = 2
cnt is a counter ( 1,2,3,…) |
||
6. [cnt,x,y] | dimensions = 3 | ||
7. [cnt,x,y,z] | dimensions = 4 | ||
8. [cnt,x,y,z,C] | dimensions = 5 | ||
9. [fixed lines] | dimensions 2*3 = 6 : 2 [x,y,z] items | ||
10. [fixed triangles] | dimensions 3*3 = 9 : 3 [x,y,z] items | ||
11. [fixed rectangles] | dimensions 4*3 = 12 : 4 [x,y,z] items | ||
Position X | integer | 1 - dimensions | |
Position Y | integer | 1 - dimensions |
See data item - positions |
Position Z | integer | 1 - dimensions | |
Position Color Value | integer | 1 - dimensions | |
Position u Vector | integer | 1 - dimensions | |
Staggered | Boolean | True/False | staggered collocated |
Quality | integer | 0. Normal |
Draw :
1 polygon for every staggered polygon , 4 polygons for every collocated polygon |
1. Good |
4 polygons for every staggered polygon , 16 polygons for every collocated polygon |
||
2. Better |
16 polygons for every staggered polygon , 64 polygons for every collocated polygon |
||
3. Best |
64 polygons for every staggered polygon , 256 polygons for every collocated polygon |
||
4. High |
256 polygons for every staggered polygon , 1024 polygons for every collocated polygon |
||
5. Super |
1024 polygons for every staggered polygon , 4096 polygons for every collocated polygon |
|
|||
Property | Data type | Values | Comments |
Total items | long | 1 - | example : a 500x67 grid has 500*67=33500 items |
Total sections | long | 1 - | example : a 500x67 grid has 67 or 500 sections |
Parts | integer | 1 - | 1 part |
Parts orientation | integer | 0. Vertical | 2 parts : vertical |
1. Horizontal | 2 parts : horizontal | ||
2. Both | 2 parts : both | ||
Apply cut | Boolean | True/False | true false |
|
|||
Property | Data type | Values | Comments |
Draw type | integer | 1. Blobs |
used to visualize blobs |
2. Horiz. lines |
used to visualize filaments | ||
3. Vertical lines |
|||
4. Grid |
|||
5. Grid & surface |
used to visualize panels | ||
6. Surface |
|||
7. Blobs & hor. Lines |
|||
8. Blobs & ver. Lines |
|||
9. Grid & Blobs |
|||
Draw mode | integer | 1. Blackness | |
2. Not merge pen | |||
3. Mask not pen | |||
4. Not copy pen | |||
5. Mask pen not | |||
6. Invert | |||
7. Xor pen | |||
8. Not mask pen | |||
9. Mask pen | |||
10. Not Xor pen | |||
11. Nop | |||
12. Merge not pen | |||
13. Copy pen | Copy pen is the default value | ||
14. Merge pen not | |||
15. Merge pen | |||
16. Whiteness | |||
Real or pure Light (shadows) | Boolean | True/False | true(real) false(pure) |
Lines width | integer | 0 - 7 | Press
plus and minus buttons to modify
'lines width' property. |
Blobs radius | integer | 0 - 76 |
Press plus and minus buttons to modify
'blobs radius' . Click blob to modify 'blobs draw border' property. |
Blobs draw border | Boolean | True/False | See 'blobs radius' property |
Fill color | RGB | ||
Border Color | RGB | ||
Color scale colors | RGB | Five(5) RGB colors : Left color, Left-Center color, Center color, Center Right color , Right color | |
Color scale min | double |
Use Auto Limits command or Define Minimum and Define Maximum commands to set this values. ( See Properties Map at Draw Type ) |
|
Color scale max | double |
|
|||
Property | Data type | Values | Comments |
Translation x,y,z static | double | Blue column | |
Translation x,y,z animated | double | Red
column
Animated translation example : Translation_x = Static_translation_x + Frame * animated_translation_x |
|
Rotation x,y,z static | double | ||
Rotation x,y,z animated | double | ||
Scaling x,y,z static | double | ||
Scaling x,y,z animated | double | ||
Transformations file path | string | Data object can
read all static transformations from a ASCI file in following format
:
Trans_x , Trans_y , Trans_z Rot_x , Rot_y , Rot_z Scal_x , Scal_y , Scal_z |
|
|||
Property | Data type | Values | Comments |
Draw in animation | Boolean | True/False | |
Animation geometry static | Boolean | True/False | True : object
has static grid dimensions
False : object has dynamic grid dimensions Dynamic grid dimensions example : Total Sections = a1 + a2 * Frame Total Items = b1 + b2 * Frame |
Read only once | Boolean | True/False | Read data from the file only at the first frame |
Dynamic sections a1 | long | 1 - |
See Animation - Animation Geometry Dynamic, items, sections |
Dynamic sections a2 | long | 1 - | |
Dynamic items b1 | long | 1 - | |
Dynamic items b2 | long | 1 - | |
New items are the last | Boolean | True/False | Applies to dynamic
grids. If the grid increases his dimensions by the time, new items are
created. Using this option you can determine if the new items are written
into the file before or after the previous items.
(See Properties Map at Animation) |
Between interpolation | integer | 1. none |
See Animation - Between interpolation |
2. linear | |||
3. square |
B2 : "Tv1 , the Output Window"
Click 'Eye' Icon to draw.
Click 'Garbage' icon to destroy graphic buffer. Use this option if you get incorrect results while drawing.
From 'Frame' combo box select the frame you want to draw.
At the left side column you can define the camera and the ambient parameters.
The 'View' menu gives many options to configure the output window.
Animation can be created in two types :
In order to transform unsteady data into animation it
is required to fulfill two lists. The Objects Order list
and the Play list as they are shown in the example
beside.
Objects order list describes the way and the sequence which the Data Objects read data from File Objects. This list is filled in automatically based on the animation properties of the Data Objects and looks like :
[Fx] name
[Dy] name
>Read a1,a2,a3,…,an,…
meaning : At the n time step Data Object y reads an items(i.e. [x,y,z] ) from File Object x . If the Data Object has static animation geometry then a1=a2=a3=…=an=…
The Objects Order of the previous mentioned example could be translated as :
At every time step the Data Object 2, reads 72 items from the File Object 1, at every time step the Data Object 4, reads 72 items from the File Object 3, ….
Play list is created by the "create play list" button and defines the position of the Data into the File Object in every time step. It looks like :
Fn,Dy = s,e
which means that the Data Object y at the time step n reads the interval between the character s and the character e from its relative File Object. The Play list is created only once except if the order of the data has been changed. If this is the case, the Play list has to be destroyed and recreated.
Se.La.Vi. is able to export its graphic buffer to VRML
files, version 1.0
The choice of the number of colors and the accuracy, affect as much the
final result as the size of the exported file.
In general, what we want is the VRML files to be small
in order to be easily transferred trough the Internet.
When the switch "form file" is activated
, Se.La.Vi. adds to the file comments and tab characters for the file to
be a little larger but easiest to read.
B5 : "Creating animation and video from *.BMP series"
Se.La.Vi. is accompanied by another independent program "spam.exe" which can project series of BMP pictures one after the other , and produce by them FLC and AVI files.
In reverse it is also able to export series of BMP pictures
from FLC and AVI files.
Chapter C : Troubleshooting
C1 : "Installation
and execution errors"
INSTALLATION ERRORS : If an error occurs
during installation, please be sure that the file you downloaded is not
corrupted and that no error occurs while extracting the compressed files
from it. To be sure, try to download the file again and compare the files
size.
EXECUTION ERRORS : If you have already
installed Se.La.Vi. but selavi.exe does not run, please ensure that you
downloaded a version compatible with your Operation System and your hardware.
Using Se.La.Vi. some miscellaneous error
messages may appear. If such an error message appears to your screen while
using Se.La.Vi. please try to compare it with the following categories
of error messages and their suggested solutions :
The line width value takes only positive values.
If you set a negative value for line width , you get an 'Invalid property value' message .
To solve the problem set a valid property value.
If you increase the memory reserved for polygons (red number), you will not have any more problems.
These error messages mostly appear when
your computer is out of disk space or you try to read large files
with little Ram. The solution is to set free some disk space
from the hard disk where windows are installed. If you still have this
problem then you can solve it only by adding more Ram to your Computer.
If you get this message but you are sure that the file exists, exit Se.La.Vi. without saving the Library . Run Se.La.Vi. again and try to reload the library.
Those error messages do not have typical
solutions. Please try to find what is responsible for the error (think
about the actions you did at last) and contact
with us. You can also e-mail us the files and a small description so
that we can fix the problem.
These error messages usually appear when
an installation error occurred or a DLL is removed from ..\..\system. You
may solve the problem by reinstalling Se.La.Vi. or trying to recover the
missing file.
If the error message that appears
to you does not match with any of the previous mentioned categories and
your problem persists , please contact
through e-mail with the developers' team.
Se.La.Vi. 's MANUAL, RELEASE 2.0
Authored by E. M. Spartalis ,
Approved by
S.G.Voutsinas (Assistant Professor)
D. G. Triantos (Ph.D. Student)
Athens, April 14, 1997