Releases: SmileiPIC/Smilei
v5.1
-
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 asLaserGaussian2D
. - The
LaserGaussianAM
definition will only use one coordinate for itsfocus
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
andsmilei_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
andyoffset
to shift plot coordinates. - New argument
timestep_indices
as an alternative totimesteps
. - Changed coordinate reference for 2D probe in 3D or AM geometry
(zero is the box origin projected orthogonally on the probe plane).
- In
-
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 inParticleBinning
could fail with only one side on"auto"
.- CFL condition is more accurately determined in
AMcylindrical
and the featuretimestep_over_CFL
should be more reliable in that geometry.
v5.0
v4.8
-
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
- Now compatible with
-
Diagnostics
- Much faster
DiagFields
(speedup ~ x3) DiagFields
andDiagProbe
: new parameterdatatype
DiagPerformances
: new parametercumulative
- Much faster
-
Collisions: new parameter
time_frozen
-
Species: in
AMcylindrical
geometry, the initial drift velocity profiles may be defined
either in thex,r,θ
directions withmean_velocity_AM
or in thex,y,z
directions withmean_velocity
. -
Lasers: changed the delay and phase of gaussian lasers at high incidence to make them consistent between boundaries.
-
Happi:
- Operations in
Fields
,Probe
, andParticleBinning
may now accept physical constants, units,
or basic functions such asexp()
orsin()
Probe
has a new methodchangeField
Open
has a new argumentpint
to disable the Pint packagemultiPlot
andmultiSlide
have a new argumentlegend_font
- The
title
can be formatted with a placeholder for the current time in an animation - Various performance improvements
- Operations in
-
Friedman filter: now available in geometries
1Dcartesian
andAMcylindrical
(previously available only in2Dcartesian
) -
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 thetimestep
- 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.
- 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 fromSpecies
block. AllSpecies
interact withLaserEnvelope
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
andzmax
- has new arguments
fft_time_window
andfft_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 keywordaverage
instead ofsum
- Probes can include components of the Poynting vector
- 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'sTrackParticles
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
- 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 graphgetXmoved
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
-
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
ofParticleBinning
- 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
- 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
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
- 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