Merging branches and fixing a number of important issues:
- Initial particles were not being assigned to the list of particles.
- List of particles was being erased every iteration, even if species
was not pushed.
These caused issues with the calculation of collisions when a species
was frozen.
Now, things should work properly. All particles are properly added to
the volume list and the list is erased ONLY if the species has been
updated.
I hope that collisions are now properly accounted for per species pair.
Now the number of collisions is calculated per species pair. This allows
that the randomly particles selected for collisions do not have
collisions assigned.
First implementation of Electromagnetic pusher.
Some testing is still required.
Documentation needs to be upgraded to match the changes in this branch.
The geometry and push structure has been reworked to allow eassy adding
new pushers.
Documentation not updated yet.
Baseline for merging Cartesian pushers into one.
Now, probes check all particles in the domain.
This is done only when probes are outputed to save CPU time.
However, still some issues and distribution functions are not properly
being calculated.
An initial simulation time can be provided in the input file. This is
useful when restarting a simulation from a previous file. If no
initial time is provided, the value 0 is used.
Files and types with 'Cyl' have been changed to '2DCyl' to better
differentiate between the two types of 2D geometry.
Solvers for charged and neutral particles in 2D Cartesian space.
Added solveds for 1D neutral particles (this branch is not the place to
do it, but it was a minor change).
User Manual updated with the new accepted options.
In each iteration, number of collisions are calculate as a REAL variable
(collFrac) and stored in each cell. The number of collisions is
calculated as FLOOR(collFrac) and, if it is >1 collisions are computed
as usual. Per each collision calculated, 1.0 is removed from collFrac
Now collisions can have a different time step.
Added species name to output names as it was starting to get confusing
in Gmsh for multiple species.
Output filenames adapted to match any number of iterations.
into account (as in 1D Cartesian case).
The 1D Cathode example case has been modified, having now 2 input files:
- inputCart.json: Used for Cartesian coordinates
- inputRad.json: Used for Radial coordinates
Pusher is a Boris pusher but without z direction.