Skip to content

Releases: entity-toolkit/entity

v1.4.1

21 May 22:02
fcec132

Choose a tag to compare

What's Changed

  • Fixed bugs introduced for NVIDIA systems by @haykh in #208
  • Port: Async ADIOS2 write and option to choose aggregators per node by @LudwigBoess in #207
  • Smoothing of Distribution Moments Now Uses Shape Functions by @haykh in #206

Full Changelog: v1.4.0...v1.4.1

v1.4.0

18 May 13:22
58a0a53

Choose a tag to compare

New features

  • #174
  • #188
  • #181
  • #183
  • New pgens/examples/ category with usage examples of specific features.
    • custom_energy_distribution
    • custom_spatial_distribution
    • match_fix_field_boundaries
    • external_fields
    • custom_emission
    • atmosphere
    • replenish_injector
    • custom_particle_update
    • piston
    • moving_window
  • #186
  • #196
  • Proper Eckart-frame velocity calculation + stress-energy tensor for GR #187

Breaking changes for the users

  • C++20 is the new standard, CMake 3.5+ is now required (per 98669a2)
  • Unnecessary inheritances of arch::ProblemGenerator are now removed
  • Unnecessary inheritances of arch::EnergyDistribution, arch::SpatialDistribution are removed

API changes for the users

  • [radiation] added to input substituting the previous [algorithms.synchrotron] etc.
  • [species.cooling] is now [species.radiative_drag].
  • traits::compatible_with in PGen is now ::traits::pgen::compatible_with, imported from a header #include "traits/pgen.h". All default pgens have been changed.
  • pgen::ext_force is substituted with pgen::ExternalFields to also support external field components ::ex1, ::ex2, ::ex3, ::bx1, ::bx2, ::bx3 (external em fields) on top of the already supported ::fx1, ::fx2, ::fx3 (external force). Example usage included in pgens/examples/external_fields.
  • Spatial distribution class can now return Kokkos::pair<real_t, real_t> with .first being the number density of injected particles, and .second being the weight (sqrt(h) is then multiplied to the returned weight). 685c1e2

Architectural changes for the devs

  • C++20 concept-s and requires-clauses replace the sfinae tests #161
  • plog and toml11 headers are now explicitly in the include directory and are fixed fc13991.
  • Parameter reading is fully modularized.
  • Cooling changed to RadiativeDrag; now accepts multiple entries.
  • PrtlPusher similarly changed to ParticlePusher; now accepts composition of different values.
  • Contstructor for kernel::[sr/gr]::Pusher_kernel are now cleaner accepting auxiliary classes: PusherParams, PusherArrays, and PusherBoundaries as well as Policies.
  • additional unit tests added for the problem generator traits.
  • srpic.hpp and grpic.hpp are now subdivided into different dedicated header files with explicit functions.
  • kernel::sr::Pusher_kernel now accepts a set of extra policies, which encode (a) whether to apply atmospheric boundary conditions, (b) custom particle update, (c) external fields/forces, (d) emission policies.
  • code styles are now enforced with clang-tidy, clang-format and cmake-format.
  • added mandatory pre-merge test scripts to be run before any merge takes place.

Bug fixes

  • #132 (fixed in v1.3.3)
  • #169
  • #175
  • FIXED boundaries for fields now properly transform the passed field components from tetrad basis to code units (per 1d34ab9)
  • v1.3 GRPIC vacuum solution is unstable at high resolutions -- GRPIC now uses "no gradient" conditions for Dr on the axes inside the Ampere kernel
  • #170
  • #173
  • GlobalInjector now works with the tracking
  • #199
  • Significant comm speedup for particles #202
  • GPU-aware MPI fixed on Intel PVC nodes #202

Minor changes

  • bumped all dependency version (incl. Kokkos to 5.0.0, and ADIOS2 to 2.11.0)
  • support for 2D arrays in input file (per e207373)
  • -D TESTS=ON can now be used together with pgen to also compile all unit tests.
  • GRPIC now compiles when no init_flds is present in pgen (per f13a68d)
  • stdc++fs now only links with non-AppleClang compilers, since on Apple Clang it's linked by default, and will raise an error if linked explicitly.
  • clear_interval can now be controlled per each species.
  • stats output which is written into the .csv file now has a better print precision (per 5603df3).
  • #201 npart_t and ncells_t are now tied to uint32_t. new counter (loop index) types introduced: cellidx_t and prtlidx_t
    new range types introduced: cell_range_t and prtl_slice_t; use of implicit size_t is minimized

Changes

New Contributors

Full Changelog: v1.3.3...v1.4.0

v1.3.3

09 Feb 22:55
5bf97fd

Choose a tag to compare

What's Changed

  • Fixed the random number generator issue on large # of GPUs by @haykh in #177

Full Changelog: v1.3.2...v1.3.3

v1.3.2

26 Jan 19:23
eeef561

Choose a tag to compare

What's Changed

  • Fixed a bug for output of floating point time by @haykh in #172

Full Changelog: v1.3.1...v1.3.2

v1.3.1

22 Dec 22:38
fdbc26a

Choose a tag to compare

What's Changed

  • Fieldsolver & Deposit Toggles fixed in GR by @haykh in #162

Full Changelog: v1.3.0...v1.3.1

v1.3.0

16 Dec 00:34
4d0dba0

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.2.5...v1.3.0

v1.2.5

07 Nov 19:10
d56d4d4

Choose a tag to compare

What's Changed

  • Changes in interpolation method for auxiliary fields in GR by @alisagk in #148

Full Changelog: v1.2.4...v1.2.5

Stats output fixed and tested

06 Oct 18:29
69bac9f

Choose a tag to compare

What's Changed

  • Some issues with the stats output by @haykh in #139

Full Changelog: v1.2.3...v1.2.4

v1.2.3

15 Sep 18:37
8ff0030

Choose a tag to compare

What's Changed

Full Changelog: v1.2.2...v1.2.3

v1.2.2

29 Aug 06:05
63ce560

Choose a tag to compare

What's Changed

  • 1D FldsBC and PrtlBC properly forwarded from mesh class by @haykh in #135

Full Changelog: v1.2.1...v1.2.2