PLUTO 4.0 contains several major improvements over previous releases:
1. Structural Changes
- The naming syntax of the code has been slightly changed in order to make it more standard and to avoid confusion between MACROS and Functions. While macro names conserve the traditional "ALL_UPPER_CASE" syntax, function names have been replaced by using "CamelCase" letter, where compound words are joined without spaces or underscore and have initial capital letter, e.g. MAKE_GEOMETRY() –> MakeGeometry(). See section 0.6 of the User's Guide.
- Doxygen is now used as standard documentation system for PLUTO and, although far from being complete, it is meant to replace the old Developer's guide. Please refer to Doc/Doxygen/html/index.hml.
- ArrayLib is no longer necessary and has been replaced by a compact, largely debugged subset of functions directly incorporated into the code. Parallel executables are compiled by choosing an appropriate makefile from the Config/ directory. Several bugs have been fixed in porting PLUTO to several thousand processor architectures.
- PLUTO 4 is now compatible with Chombo 3.1 for AMR applications.
- Staggered arrays now contain one more point in the direction of staggering and span from -1...NX_TOT-1 in the staggered dir.
- Limiter names have been changed to upper case:
- minmod_lim –> MINMOD_LIM
- vanleer_lin –> VANLEER_LIM
- Makefile build has changed to a more flexible structure.
2. I/O Changes
- VTK files are now correctly written using node-centered rather than cell-centered coordinates. This will produce more accurate visualization with VisIt or Paraview.
- Asynchrounous binary I/O of single-precision files.
- HDF5 output format is now available also with the static grid version of the code using single- or double-precision datafiles (*.dbl.h5, *flt.h5). Double precision HDF5 can also be used for restart.
- Output interval may be given in wallclock time.
3. AMR
- RK2 time-stepping is now supported with Chombo;
- Bug fix: support for entropy switch;
- Bug fix: Internal boundary + AMR.
4. (Major) Physics Addition
- New FARGO-MHD module is available for Cartesian/polar and spherical geometries and it is completely parallel in all 3 directions.
- New INCLUDE_ROTATION flag allows to solve the HD/MHD equations in a rotating frame of reference using a fully conservative formulation.
- Isothermal EoS has been added to the HD module. The implementation has been further extended to support a spatially-varying sound speed.
- ShearingBox module extended to adiabatic EoS and fully parallel in all 3 directions.
- Body forces have been re-implemented using simpler functions that prescribe either the vector components or the gravitational potential.
- Entropy Switch for RHD/RMHD modules
5. Extras
- A new more flexible algorithm to assign initial conditions by interpolating (external) input data files is available.
- Parallel decomposition may be used-defined using the -dec n1 [n2] [n3] command line argument.
- Improved handling of "internal boundary" regions inside the computational domain.
6. Visualization
- New pyPLUTO visualization tool for quick visualization of PLUTO binary files.
- IDL: improved getT() function to compute the temperature;
- IDL: new ptools() functions for computing averages in 3D datasets;
- IDL: improved pload procedure to read also HDF5 files from thestatic grid version of the code.
- GNUPLOT: support for reading single or multiple data files
- VisIt/Paraview: can now read HDF5 Chombo data files and .h5 PLUTO new format files.