Releases: ComputationalRadiationPhysics/picongpu
Bremsstrahlung, EmZ, Thomas-Fermi, Improved Lasers, C++11
This is the first release of PIConGPU requiring C++11. We added a newly developed current solver (EmZ), support for the generation of Bremsstrahlung, Thomas-Fermi Ionization, Laguerre-modes in the Gaussian-Beam laser, in-simulation plane for laser initialization, new plugins for in situ visualization (ISAAC), a generalized particle calorimeter and a GPU resource monitor. Initial support for clang (host and device) has been added and our documentation has been streamlined to use Sphinx from now on.
Please refer to our ChangeLog for a full list of features, fixes and user interface changes before getting started.
We also started continuous documentation ("a manual") with Sphinx:
https://picongpu.readthedocs.io
This page will in the mid time frame replace our wiki and will allow you to select a specific version of PIConGPU. Such a "release-aware documentation" is important to us since our tools, workflows and models naturally change over time (for the better). Also, you can contribute to it via pull requests!
Thanks to Axel Huebl, René Widera, Richard Pausch, Alexander Matthes, Alexander Grund, Marco Garten, Heiko Burau, Alexander Debus, Erik Zenker, Bifeng Lei and Klaus Steiniger for contributions to this release!
Absorber in z in 3D3V, Effective Charge in ADK Ionization
The absorbing boundary conditions for fields in 3D3V simulations were not enabled in z direction. This caused unintended reflections of electro-magnetic fields in z since the 0.1.0 (beta) release. ADK ionization was fixed to the correct charge state (principal quantum number) which caused wrong ionization rates for all elements but Hydrogen.
All fixes are backported to work in C++98 (and C++11) mode.
Please refer to our ChangeLog for a full list of features, fixes and user interface changes.
Thanks to Marco Garten, Richard Pausch, René Widera and Axel Huebl for spotting the issues and providing fixes!
Charge of Bound Electrons, openPMD Axis Range, Manipulate by Position
This release fixes a severe bug overestimating the charge of ions when used with the boundElectrons
attribute for field ionization. For HDF5 and ADIOS output, the openPMD axis annotation for fields in simulations with non-cubic cells or moving window was interchanged. Assigning particle manipulators within a position selection was rounded to the closest supercell (IfRelativeGlobalPositionImpl
).
All fixes are backported to work in C++98 (and C++11) mode.
Please refer to our ChangeLog for a full list of features, fixes and user interface changes.
Thanks to Axel Huebl, René Widera, Thomas Kluge, Richard Pausch and Rémi Lehe for spotting the issues and providing fixes!
Energy Density, Ionization NaNs and openPMD
This release fixes energy density output, minor openPMD issues, corrects a broken species manipulator to derive density weighted particle distributions, fixes a rounding issue in ionization routines that can cause simulation corruption for very small particle weightings and allows the moving window to start immediately with timestep zero. For ionization input, we now verify that the number of arguments in the input table matches the ion species' proton number.
All fixes are backported to work in C++98 (and C++11) mode.
Please refer to our ChangeLog for a full list of features, fixes and user interface changes.
Thanks to Axel Huebl, René Widera, Richard Pausch, Alexander Debus, Marco Garten, Heiko Burau and Thomas Kluge for spotting the issues and providing fixes!
Laser Wavepacket, Vacuum openPMD & icc
Laser Wavepacket, Vacuum openPMD & icc
This release fixes a broken laser profile (wavepacket), allows to use icc as the host compiler, fixes a bug when writing openPMD files in simulations without particle species ("vacuum") and a problem with GPU device selection on shared node usage via CUDA_VISIBLE_DEVICES
.
Please refer to our ChangeLog for a full list of features, fixes and user interface changes.
Thanks to René Widera and Richard Pausch for spotting the issues and providing fixes!
QED Synchrotron Photon & Fix Potential Deadlock in Checkpoints
This releases fixes a potential deadlock encountered during checkpoints and initialization. Furthermore, we forgot to highlight that the 0.2.0 release also included a QED synchrotron emission scheme (based on the review in A. Gonoskov et al., PRE 92, 2015).
Please refer to our ChangeLog for a full list of features, fixes and user interface changes.
Thank you to René Widera for spotting & fixing and Heiko Burau for the QED synchrotron photon emission implementation!
Beta Release - Full Multiple Species Support & openPMD
This release of PIConGPU, providing "beta" status for users, implements full multi-species support for an arbitrary number of particle species and refactors our main I/O to be formatted as openPMD (see http://openPMD.org). Several major features have been implemented and stabilized, highlights include refactored ADIOS support (including checkpoints), a classical radiation reaction pusher (based on the work of M. Vranic/IST), parallel particle-IDs, generalized on-the-fly particle creation, advanced field ionization schemes and unification of plugin and file names.
This is our last C++98 compatible release (for CUDA 5.5-7.0). Upcoming releases will be C++11 only (CUDA 7.5+), which is already supported in this release, too.
Please refer to our ChangeLog for a full list of features, fixes and user interface changes.
Thank you to Axel Huebl, René Widera, Alexander Grund, Richard Pausch, Heiko Burau, Alexander Debus, Marco Garten, Benjamin Worpitz, Erik Zenker, Frank Winkler, Carlchristian Eckert, Stefan Tietze, Benjamin Schneider, Maximilian Knespel and Michael Bussmann for contributions to this release!
0.1.2: Bug Fixes
This is version 0.1.2 of PIConGPU, a pre-beta version and pure bug fix release. It contains selected backports of critical issues in PIConGPU.
Two major bugs that have been fixed:
- laser wavepacket: which was not implemented as advertised in the documentation #1312
- libPMacc event system: could cause a simulation freeze #1326
please read the change log for further information.
0.1.1: Bug Fixes
0.1.0: Ionization & Bug Fixes
This is version 0.1.0
of PIConGPU, a pre-beta version.
Initial field ionization support was added, including the first model for BSI. The code-base was substantially hardened, fixing several minor and major issues. Especially, several restart related issues, an issue with 2D3V ZigZack current calculation and a memory issue with Jetson TK1 boards were fixed. A work-around for a critical CUDA 6.5 compiler bug was applied to all affected parts of the code, CUDA 7 support was added.
A note on versions of PIConGPU: This version introduces semantic versioning to PIConGPU. Previously, we planned to release a beta
release shortly after our initial alpha
release, implicating that our last releases were labeled as "release-candidates" (rc) for beta
(but added way to many features). We postponed the beta
release and will simply tag an upcoming version 0.Y.Z.
as our beta
release.