Commit graph

14 commits

Author SHA1 Message Date
90e667f0a5 Fixing issue with makefile
The dependencies of the modules have been streamlined.
2021-10-18 16:36:19 +02:00
e683c66ff8 Modification to Probes to use all particles
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.
2021-10-18 16:00:28 +02:00
56967dd6c7 First implementation of probing method
The code nows offer the possibility to obtain the distribution function
for a specific species in a 3D velocity grid at a determined position.

This is a simple method that just scatter the particles in one cell into
the velocity grid.
2021-06-29 10:37:39 +02:00
db6b0a2c03 Fixed an issue with reflection of particles in all geometries and also
assigning the normal vector in 2D and 3D.

3D Cartesian geometry is working properly, although it needs testing.

Still issue with ionization boundary.
2021-03-22 12:39:34 +01:00
9e0d1a7cc7 Final implementation of ionization process by electron impact.
Possibility to input initial species distributions (density, velocity
    and temperature) via an input file for each species.

New moduleRandom includes function to generate random numbers in
different ways (still uses) the implicit RANDOM_NUMBER().
2020-12-26 22:45:55 +01:00
37b0139b1f Implementation of different distribution functions for velocities.
Maxwellian and Diract Delta distributions have been implemented.

The input for injection of particles should be rewritten to allow more
clear input file.
2020-12-13 13:56:48 +01:00
3b125d0952 Minor improvement in mesh structure to allow different imput formats.
Organization of meshes per geometry type.
2020-12-08 18:28:24 +01:00
d69b59143d !Implementation for 1D solver for charged particles. Added a 1D case for
testing. Still, no formal test has been performed so issues may appear.
2020-12-07 09:12:30 +01:00
7859a73274 First implementation of Non-Analogue Scheme using volume weighting. The
scheme to use is chosen in the input file. Additional schemes could be
added easily.
2020-12-03 08:57:34 +01:00
c82279f5c5 First version with possibility for charged particles to be included.
Now, the solver needs to be an input parameter of the case, to select if
it is for charged or neutral particles.

Resolution of Poisson equation with Dirichlet boundary conditions is
possible. The source vector is the charge density. This resolution is
done in two steps to save computational time:
  1. When reading the mesh, the PLU factorization of the K matrix is
  computed.
  2. In each iteration, the system K*u = f is solved, in which f is the
  source vector (charge density) and u is the solution (potential) in
  each node.

No case has been added to the repository. This will be done in next
commit.

The 'non-analog' scheme has been commented. It still needs to split
the particle to avoid 'overweight' particles.
2020-11-15 21:16:02 +01:00
fd42e0f3f9 Huge improvement in reset (by increasing a little bit push time) using
OMP locks to assign particles to cells in the pushing step.

Trying to combine push+reset and  collision+scatter did not work.
2020-10-17 18:46:10 +02:00
ffb03e634b Minor improvements in performance and code clarity.
Still no solution for the reset subroutine. It is really time
consumming.
2020-10-13 18:16:18 +02:00
60f38a2d95 Commit befor trying to convert particle array to linked list to improve
performance.
2020-10-10 21:25:49 +02:00
bd7e8b040b First commit of code.
New functionality:
- DSMC module:
  - 2D cyl geometry
    - GMSH file format
    - Elastic cross-section for Argon-Argon collisions.
    - Basic boundary conditions: reflection, absorption and axis
      symmetry.

Bugs fixed:

Other comments:
- Still searching for name.
2020-10-09 08:45:07 +02:00