Next:
Contents
Contents
Visualisation of SPH data using SPLASH - v1.12.2
Daniel Price
Contents
Introduction
What it does
What it doesn't do
SPLASH , the paper
Version History
Licence
Getting started
Compiling the code
Fortran 90/95 compilers
PGPLOT
Compiling and linking with PGPLOT
Reading your data
Environment variables
PGPLOT
Endian changing
Variables affecting all data reads
Ascii data read
GADGET-2 data read
VINE data read
sphNG data read
Stephan Rosswog data read
Dragon data read
Command line options
Basic SPLASH usage
Simple two column plot
Rendered plots
Cross section slice
Vector plots
Contour plots
Moving forwards and backwards through data files
Zooming in and out / changing plot limits
Producing a postscript figure for a paper
Producing a sequence of plots for a movie
Ten quick hints for producing good-looking plots
Changing plot settings
set (m)ultiplot
Plotting more than one column from the same file on the same page (multiplot)
(d)ata options
Re-reading the initial data / changing the dump file
Using only a subset of data files / plotting every
th dump file
Plotting a subset of data files in non-sequential order
Plotting more than one file without re-reading the data from disk
Calculating additional quantities not dumped
Plotting data in physical units
Rescaling data columns
Changing the default column labels
Plotting column density in g/cm
without having x,y,z in cm
Changing physical unit settings
Changing the axis label to something like
Changing the time units
(i)nteractive mode
Adapting the plot limits
Making the axes logarithmic
Colouring a subset of the particles and retaining this colour through other timesteps
Working out which particles formed a particular object in a simulation
Plotting only a subset of the particles
Rendering using only a subset of the particles
Tracking a set of particles through multiple timesteps
Taking an oblique cross section interactively
(p)age options
Overlaying timesteps/multiple dump files on top of each other
Plotting results from multiple files in the same panel
Plotting more than one dump file on the same page
Changing axes settings
Turning axes off
Turning axes labels off
Using logarithmic axes labels
Changing the size of the plotting surface
Dividing the plotting page into panels
Tiling plots with the same
and
axes
Using non-proportional scales for spatial dimensions
Using non-square axes on coordinate plots
Changing the character height for axes, labels and legends
Using a thicker line width on plots
Changing the foreground and background colours
Plotting axes, legends and titles in white even when the labels are plotted in black
le(g)end and title options
Adding titles to plots / repositioning titles
Turning off/moving the time legend
Changing the text in the time legend
Making the legend read ``z='' instead of ``t=''
Plotting the time legend on the first row/column of panels / nth panel only
Plotting a length scale on coordinate plots
Annotating a plot with squares, rectangles, arrows, circles and text
particle plot (o)ptions
Plotting non-gas particles (e.g. ghosts, boundary, sink particles)
Plotting non-gas particles on top of rendered plots
Using ghost particles in the rendering
Turn off plotting of gas particles
Plotting dark matter particles
Plotting a column density plot of dark matter/N-body particles
Plotting sink particles
Plotting sink particles with size proportional to the sink radius
Plotting a point mass particle with physical size
Changing graph markers for each particle type
Plotting each particle type in a different colour
Changing the order in which different particle types are plotted
Plotting using lines instead of dots (e.g. for energy vs time plots)
Plotting multiple lines with different colours/line styles and a legend
Joining the dots
Plotting the size of the smoothing circle around selected particles
Locating a particular particle in the data set
Making sure absolutely all particles are plotted
Plotting in different coordinate systems (e.g. cylindrical coordinates)
Plotting vector components in different coordinate systems
Plotting orbital velocities
Plotting against azimuthal angle/cylindrical radius/etc
Plotting the exact solution to common test problems
Plotting an exact solution from a file
Changing the exact solution line style & colour
Setting the number of points used in an exact solution calculation
Plotting an inset plot of residual errors from an exact solution
plot (l)imits
Using plot limits which adapt automatically for each new plot
Using adaptive plot limits for the colour bar but not for the coordinates
Setting plot limits manually
Making plot limits relative to a particular particle
Plotting in a comoving reference frame
Setting the origin to correspond to a particular particle
Scaling plot limits by a fixed amount
Plotting with log axes.
Plotting the square root, inverse or square of a quantity
Resetting limits for all columns
Restoring all plot limits to their minimum and maximum values in the current dump file
Using a subset of data restricted by parameter range
Plotting only particles with
,
and
(r)endering options
Changing the number of pixels in a rendered image
Changing the colour scheme
Plotting contours as well as the rendered image
Plotting contours instead of a rendered image
Changing the number of contour levels
Adding numeric labels to contours
Turning the colour bar off/ moving the colour bar label
Changing the style of the colour bar
Using a horizontal colour bar
Using `plot-hugging' colour bars
Plotting ticks on only one side of the colour bar
Changing the text in the colour bar label
Using coloured particles instead of rendering to pixels
Using normalised interpolations
Speeding up the rendering on 3D column integrated plots
Using density weighted interpolation
Selecting and rendering only a subset of the particles
Changing the label used for 3D projection plots
Changing ``column density'' to ``surface density'' on 3D plots
(v)ector plot options
Changing the number of arrows on vector plots
Changing the number of pixels in vector plots
Changing the size of arrows on vector plots
Plotting vector arrows in white instead of black or vice-versa
Turning off the legend for vector plots
Moving the vector plot legend
Plotting stream/fieldlines instead of arrows
Turning arrow heads off for vector plots
Hiding vector arrows where there are no SPH particles
Plotting a vector plot in a cross section slice
Making all arrow the same length (i.e., showing direction only, not magnitude)
(x) cross section/3D plotting options
Plotting a cross section slice through 3D data
Plotting a cross section line through 2D data
Rotating the particles
Setting the origin about which particles are rotated
Adding 3D perspective
Using 3D surface rendering
Plotting 3D box / 3D axes
Setting up animation sequences
Plotting a sequence of frames rotating a data set through 360 degrees
Plotting a `fly-around' of 3D data
Plotting a flythru of 3D data
Adding a steady zoom sequence to a movie
Adding a steady change of colour bar limits
Adding steady movement of the 3D observer
Miscellaneous other useful things
Saving plot settings / plot limits to disk
My attempt at in-built help
Keyboard shortcuts to menu options
Exiting SPLASH
Advanced plotting examples
Rendered plot of star formation data
Multi-panelled figure
Surface rendering
Using asplash to plot energy vs time plots
Powerspectrum of 1D data
Plotting azimuthally-averaged disc surface density and Toomre Q parameter
Other useful information
Converting binary dump files to ascii using SPLASH
Using SPLASH to calculate global quantities as a function of time.
Fixing the PGPLOT file naming system
Reading/processing data into images without having to answer prompts
Making frames across multiple processors
What about boundaries? How does the rendering work near a boundary?
How does SPLASH handle multiple particle types?
Using special characters in the plot labels
Making movies
Outputting the raw pixel map to a file
User contributions / Wishlist for future improvements
Acknowledgements
Source code overview
Coordinate transformation details
Cylindrical Polar Coordinates
Spherical Polar Coordinates
Toroidal Coordinates
Exact solution details
Errors
Shock tubes (Riemann problem)
Riemann solver
Polytrope
Linear wave
Sedov blast wave
Toy stars
Static structure
Linear solutions
Non-linear solution
MHD shock tubes
h vs
Writing your own read_data subroutine
Bibliography
About this document ...
Daniel Price 2009-07-15