Skip to content

Releases: SmileiPIC/Smilei

v5.1

24 Jun 11:43
Compare
Choose a tag to compare
  • GPU:

    • 1Dcartesian geometry now available.
    • Compilation simplified and better documented.
    • Improved performance of particle sorting.
  • Features:

    • Relativistic field initialization now supports multiple species and both direction propagations.
    • Added the argument phase_offset in laser definitions such as LaserGaussian2D.
    • The LaserGaussianAM definition will only use one coordinate for its focus argument
      (the transverse coordinate of the focus in this geometry is zero).
    • Small improvements in PML for envelope model (AM and 2D).
    • Deprecated smilei_rand_max.
    • New namelist variables smilei_omp_threads and smilei_total_cores.
  • Happi:

    • In Scalar, it is now possible to make an operation on scalars such as "Uelm+Ukin".
    • The list of available scalars can be obtained from getScalars().
    • New arguments xoffset and yoffset to shift plot coordinates.
    • New argument timestep_indices as an alternative to timesteps.
    • Changed coordinate reference for 2D probe in 3D or AM geometry
      (zero is the box origin projected orthogonally on the probe plane).
  • Documentation:

    • Dark theme (click the switch on the bottom left, or set browser preferences).
  • Bug fixes :

    • dump_minutes often failed to write some checkpoint files.
    • "auto" limits in ParticleBinning could fail with only one side on "auto".
    • CFL condition is more accurately determined in AMcylindrical and the feature timestep_over_CFL should be more reliable in that geometry.

v5.0

17 Jan 14:31
Compare
Choose a tag to compare
  • GPU support (not all features are supported at the moment)

    • Both AMD and Nvidia GPUs
    • Cartesian geometry in 2D and in 3D
    • Moving Window
    • Diagnostics: Field, Probes, Scalar, ParticleBinning, TrackParticles

v4.8

04 Oct 09:43
Compare
Choose a tag to compare
  • LaserEnvelope model:

    • Now compatible with PML boundaries
    • In AMcylindrical geometry, the number of modes can be greater than 1 (only affects electromagnetic
      fields and the densities, not envelope or susceptibility)
    • multi-level tunnel ionization creates multiple electrons, improving the sampling
  • Diagnostics

    • Much faster DiagFields (speedup ~ x3)
    • DiagFields and DiagProbe: new parameter datatype
    • DiagPerformances: new parameter cumulative
  • Collisions: new parameter time_frozen

  • Species: in AMcylindrical geometry, the initial drift velocity profiles may be defined
    either in the x,r,θ directions with mean_velocity_AM or in the x,y,z directions with mean_velocity.

  • Lasers: changed the delay and phase of gaussian lasers at high incidence to make them consistent between boundaries.

  • Happi:

    • Operations in Fields, Probe, and ParticleBinning may now accept physical constants, units,
      or basic functions such as exp() or sin()
    • Probe has a new method changeField
    • Open has a new argument pint to disable the Pint package
    • multiPlot and multiSlide have a new argument legend_font
    • The title can be formatted with a placeholder for the current time in an animation
    • Various performance improvements
  • Friedman filter: now available in geometries 1Dcartesian and AMcylindrical (previously available only in 2Dcartesian)

  • Lehe solver for Maxwell equations now available in AMcylindrical geometry

  • Bugfixes:

    • Compilation fixed for the newest version of GNU make
    • Poisson Solver correction was not properly accounted for with SDMD
    • Bug correction using Monte-Carlo radiation and multiphoton Breit-Wheeler processes with checkpoints
    • C++11 compilation issue
    • Reading particle weights and momenta from hdf5 file
    • PML are now compatible with dynamic load balancing.
    • solved segfault with Multiphoton Breit-Wheeler process in AMcylindrical geometry
    • Collisional ionization incorrect for :math:Z^\star = Z-1
    • Field.getAxis was not accounting for the timestep
    • Bug correction in 1D relativistic Poisson solver
  • Experimental

    • B-TIS3 interpolation scheme to reduce the effects of numerical Cherenkov radiation is implemented up to interpolation order 2
    • New diagnostic: DiagNewParticles records particle information when they are created by ionization or other mechanisms
  • For developers: new table management for Monte-Carlo physical processes (transparent to users)

v4.7: PML, compiler support, etc.

11 Mar 22:14
Compare
Choose a tag to compare
  • Perfectly Matched Layers boundary conditions for EM fields (+2D Cartesian benchmark).
  • Improved performance for ARM-based processors including the Fujitsu A64FX
  • Improved performance for GNU, LLVM, arm-clang and Fujitsu compilers on all types of architectures
  • Lasers can be injected from all boundaries
  • Flag ponderomotive_dynamics removed from Species block. All Species interact with LaserEnvelope if present
  • Option to create neutrons for D-D fusion
  • Collisions can be done less often
  • Lasers can be injected from all boundaries
  • New 4th-order non-standard FDTD solver M4
  • Timestep dependent field interpolation scheme
  • LaserOffset:
    • may be re-used from a previous simulation
    • available from ymin, ymax, zmin and zmax
    • has new arguments fft_time_window and fft_time_step
  • Diagnostics:
    • Probes can include components of the Poynting vector PoyX, PoyY, PoyZ
    • Probes can be time-integrated
    • ParticleBinning diagnostics may accept "auto" as axis limits
    • Particle IDs may be modified in the DiagTrackParticles.filter (8 available bits)
    • Screens may have a cylinder shape
    • Scalar diagnostics for AM geometry now available
    • happi ParticleBinning now uses the keyword average instead of sum
  • Bugfixes:
    • Poynting scalars behaviour with several patches, or with checkpoints
    • Densities too low are put to 0 to avoid underflow
    • Prescribed fields in 2D
    • ellipticity = -1. was doing +1.
    • Setting units in happi's TrackParticles was wrong (for plotting only)
    • Current communication correction for FIR filters
    • Fix for particle merging segmentation fault in spherical and Cartesian modes
    • Tracked particles with the vectorized mode
    • momentum_initialization from a file did not take the proper file

v4.6: SDMD, new solver, new filters and more

02 Apr 14:03
Compare
Choose a tag to compare
  • Single-domain multiple decompositions
  • New 4th-order non-standard FDTD solver Bouchard for 2D and 3D geometries
  • New method for current filtering with a user-provided FIR kernel for 1D, 2D and 3D geometries
  • Diagnostics may now have a name (useful during post-processing)
  • Laser Envelope:
    • linear and circular polarization
    • ionization model
    • normalized laser frequency can be different from 1
  • Particles can be imported from a file
  • Some profiles can be imported from a file
  • Coulomb logarithm may be multiplied by a constant factor
  • Happi:
    • handles fonts
    • time slider available with multiple plotting
    • vsym option for symmetric graph
    • getXmoved now accounts for requested units
    • Tracked particles can be selected before sorting
  • Bugfixes:
    • Fix in the vectorized projection at order 4
    • Photons could not be read from numpy array
    • DiagFields with time_average did not work for densities
    • Prescribed fields caused unstable real fields
    • Initialisation from numpy or hdf5 caused wrong weights in AM geometry
    • Better positionning of collisionally-ionised electrons
    • Fix segfault from thermalizing boundary
    • Running a simulation displayed the wrong version v4.4

v4.5: Improvements and bugfixes

11 May 11:23
Compare
Choose a tag to compare
  • Changes:

    • Current filtering with adjustable number of passes per dimension
    • Improved axial boundary conditions for AMcylindrical geometry
    • Units in RadiationSpectrum diagnostic are more consistent with that
      of ParticleBinning
    • Ionisation current at fourth order of interpolation
    • Correction for :doc:collisions as suggested in [Higginson2020]_
  • Bugfixes:

    • PrescribedField was sometimes not applied by some OpenMP threads
    • Scalar Ukin_bnd was sometimes wrong with load balancing
    • Scalar Urad was sometimes wrong with moving window
    • On some systems, particles IDs were incorrect with ionization

v4.4

02 Apr 16:12
Compare
Choose a tag to compare
  • New radiation tables : old tables not valid anymore, and input files using QED processes need to be updated
  • Radiation spectrum diagnostic
  • Prescribed fields
  • Laser Envelope: equation solver with reduced numerical dispersion
  • AM geometry : subgrid in DiagFields, species-related currents and density in probes
  • LaserOffset not recomputed after restart
  • Bugfixes

More details in the doc.

v4.3

29 Nov 15:22
Compare
Choose a tag to compare

Additional features :

  • AMcylindrical : envelope, ionization, additional diagnotics, number of ppc per direction, binomial current filter, poisson solver, non-separable laser initialization per mode, improved diag field nomenclature
  • Particle injector
  • More control over the moving window movement
  • More control over the regular position initialization in Cartesian geometries
  • Bugfixes

Experimental features:

  • Particle merging
  • Nuclear reactions
  • Interface with the PICSAR library for AM spectral solver

v4.2

10 Jul 14:39
Compare
Choose a tag to compare
  • Different convention for circular polarization amplitude
  • Binomial filter in Cartesian 3D bug fix in parallel implementation
  • 1D and 2D laser envelope model
  • Cylindrical geometry with azimuthal Fourier decomposition (beta version)
  • Compatibility between various ionization and QED models
  • Bugfixes

v4.1

13 Dec 13:12
Compare
Choose a tag to compare
  • Probe diagnostics of currents and density per species
  • Field diagnostics with more than 2^32 points
  • Bugfixes
  • Disable usage of -ipo to compile

Some details in the doc.