================================================================= This is an update to pizza.py offering better visualization of granular (DEM) LAMMPS simulations using pizza.py It is based on the version "pizza-3Jun09" but should also work fine with other versions. LAMMPS=Large Atomic and Molecular Massively Parallel Simulator. http://lammps.sandia.gov/ pizza.py=LAMMPS post processor http://www.sandia.gov/~sjplimp/pizza.html Christoph Kloss Linz, Oct. 9th, 2009 ================================================================= Author: Dipl.-Ing. Christoph Kloss Christian-Doppler Laboratory on Particulate Flow Modelling Institute of Fluid Mechanics and Heat Transfer Johannes Kepler University, Altenbergerstrasse 69, A-4040 Linz/Austria e-mail: christoph.kloss@jku.at phone: +43-(0)732-2468-6476 fax: +43-(0)732-2468-6462 web: fluid.jku.at // www.particulate-flow.at ================================================================= If you have any questions, dont hesitate to contact me at christoph.kloss@jku.at! TOPICS IN THIS README 1. WHY UPDATE PIZZA.PY 2. HOW TO UPDATE PIZZA.PY 3. HOW TO DO VISUALIZATIONS USING THE UPDATED PIZZA.PY ----------------------------------------------------------------- 1. WHY UPDATE PIZZA.PY ----------------------------------------------------------------- Pizza.py is a very fine postprocessing tool for LAMMPS. But it is lacking a possibility to export vectors such as velocity, force and scalars like the particle radius to the VTK format. This update provides the possibilty to also export + particle radius, + particle velocity vector, + particle rotational velocity vector, + particle force vector, + one customized vector (e.g. calculated by a fix or compute command) + up to two customized scalars (e.g. calculated by a fix or compute command) Additionally, the simulation box is also exported into VTK format and stored in an "*_boundingBox.vtk" file ----------------------------------------------------------------- 2. HOW TO UPDATE PIZZA.PY ----------------------------------------------------------------- Updating is very easy: Take the files "dump.py" and "vtk.py" and copy it to pizza.py's replace the previos ones. You should make a backup of your old "dump.py" and "vtk.py" in case the update is not compatible with your version of pizza.py ----------------------------------------------------------------- 3. HOW TO DO VISUALIZATIONS USING THE UPDATED PIZZA.PY ----------------------------------------------------------------- To use the updated pizza.py visualization possibilites, please use one of the following dump commands in your LAMMPS input script: dump d0 all custom 100 dump.1 id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius dump d1 all custom 100 dump.1 id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius (customScalar1) dump d2 all custom 100 dump.2 id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius (customScalar1) (customScalar2) dump d3 all custom 100 dump.3 id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius (customVector_X) (customVector_Y) (customVector_Z) dump d4 all custom 100 dump.4 id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius (customVector_X) (customVector_Y) (customVector_Z) (customScalar1) dump d5 all custom 100 dump.5 id type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius (customVector_X) (customVector_Y) (customVector_Z) (customScalar1) (customScalar2) (customVector_X/customVector_Y/customVector_Z) can be any additional vector you would like to postprocess, e.g. a custom vector calculated by a fix or compute command (customScalar1) and (customScalar2) can be any additional scalars you would like to postprocess, e.g. custom scalars calculated by a fix or compute command After the simulation is finished: + Start pizza.py by typing "python (path)/pizza.py" where (path) is the path where pizza.py is located + Type d=dump("dump.mySimulation") where "dump.mySimulation" has to be replaced the name of your dump file + If pizza.py states "Unscaling dump..." after the dump command, you should use the follwowing command: Type d.scale() + Type v=vtk(d) v.manyGran() to export the data to VTK format Now open paraview (www.paraview.org) and import the VTK files. To display the particles correctly, you should + Make a glyph by clicking on the "glyph" button In the object instpector: + Choose Scalars -->"radius" + Glyph type -->"Sphere" + Radius -->"1" + Scale mode -->"Scalar" + Set Scale Factor -->"1" In a similar fashion, you can set up vector glyphs to visualize velocity etc... Have fun! Christoph Kloss