Commit graph

31 commits

Author SHA1 Message Date
31f0b510bc The program reads the case but stops while doind the simulation 2026-02-26 14:25:47 +01:00
7535f5aaaa EM boundary conditions should work now 2026-02-18 20:02:48 +01:00
6a7c92f62f Skeleton of boundaries for EM with new structure for mesh 2026-02-17 14:54:22 +01:00
7e193b9fa8 Minor changes, no improvement made yet 2025-08-03 15:32:55 +02:00
a2f9957f32 I am dumb
The Poisson equation was not working because I didn't finish
implementing the new type of BCs. Dirichlet is probably untested. I
should stop doing shitty developments and no testing.
2025-07-18 16:31:52 +02:00
221de46734 Merge branch 'development' into feature/BoltzmannElectrons 2024-10-13 14:54:34 +02:00
98ee3e9c9c Still not working, but will be fixed
I have the solution in the plasma expansion code, but I need to do other
stuff.
2024-09-30 17:06:25 +02:00
6f185c4188 Organizing things
Move the array of pointers to the nodes to moduleMesh.
2024-07-13 12:35:42 +02:00
2d4b405fb1 Functionality added
Now we have a new boundary condition that can change the value of the
potential in a surface based on a file.
2024-07-13 12:06:41 +02:00
10dee05922 NOT WORKING: Compilation okay, but not Dirichlet BC
The code compiles but the right BC is not being applied to the vectorF.

I'll check this tomorrow.
2024-07-12 23:30:35 +02:00
ac27725940 Big one...
I should've commited before, but I wanted to make things compile.

The big change is that I've added a global time step so the parameter
does not need to be passed in each function. This is useful as we are
moving towards using time profiles for boundary conditions and injection
of particles (not in this branch, but in the future and the procedure
will be quite similar)
2024-07-12 23:08:19 +02:00
49025a6965 Starting changes
Planning the new way to do BC in the EM field solver.
Probably I have to change how things are read, but I don't think this is
going to affect the input file.
2024-07-12 19:21:00 +02:00
f0a27c0529 More comments
So if the source vector is being updated every time step, it might be
"easy" to implement these things.
2024-07-12 13:17:02 +02:00
abedb79b16 Some comments
Just some comments on how I am going to make the desired changes (have a
Dirichlet boundary condition for the electric potential that changes
with time). This might be a good opportunity to rework the boundary
conditions in the electrostatic field and include other things like a
Newmann boundary condition. We will see.
2024-07-12 11:02:26 +02:00
bc8f205287 Clean-up!
Trying to reduce warnings and unused variables in the code. This should
not be in this branch.
2024-07-11 15:55:02 +02:00
e4f7987f90 Trying to solve
Still I don't understand this basic thing...
2024-05-19 16:45:03 +02:00
a3bdf8230a Implementation of Boltzmann electrons
Still not working, just saving code.
2024-05-19 10:55:20 +02:00
d86b3a3417 Implementing injection with current density
WARNING: This current denstiy will be multiplied by the reference
length, no the surface area that is being used for injection!

New units in the injection of particles 'Am2' to inject a density
current. Manual has been modified accordingly.

Reference parameters are now also printed in the case folder.
2024-03-28 09:45:46 +01:00
f4448d9e7a Fixed segmentation fault in Coulomb collisions
When the relative velocity between a charged particle and the background
for Coulomb collisions (W in the code) was low, there was a
segmentation fault. This is fixed now as if the norm of the relative
velocity (normW) in the code is too low, no collision is applied.
2023-03-12 17:02:12 +01:00
601103105f First attempt at Coulomb collisions
First attemp for Coulomb collisions based on the moments distribtuions.
Still the method is not done and far from being complete but input
options and basic math are implemented.
2023-02-24 21:46:01 +01:00
2ee6c1764e Probes were not working properly
Issue in the output of probes and in the detection of particles inside
the velocity grid.
2023-02-23 08:18:46 +01:00
60477481dd Adds the commit to the output folder
I thought it will be a good idea to write the commit into the output
folder to better track the code version responsible for the results.
2023-02-09 16:48:49 +01:00
cca57d5ab0 Incorrect tau in electrostatic pushers
During the improve performant step, an error in the electrostatic
pushers was introduced, resulting in these using the minimum time step
and not the species time step when calculating the acceleration.
2023-01-13 15:32:25 +01:00
7ce1b7a4dd Reducing overhead when no collisions are present
Particles are added to lists only if there are MCC collisions. Hopefully
this will reduce overhead when OpenMP is used and no collisions are
active.
2023-01-07 12:12:37 +01:00
22dff9ed69 Small style correction 2023-01-06 22:36:55 +01:00
600480f5d5 Reduce overhead of probes
I noticed that doProbes was causing some overhead even if no probes were
being used. Now it should be fixed.
2023-01-06 21:37:26 +01:00
7f6afd6a87 Mark_1
First thing that I am kinda happy with.

Still some things to improve but at least push is good.
2023-01-05 22:43:51 +01:00
2486ef6316 Reduction in pushing
Reduction in 10-20% of time spend in pushing in 2DCyl thanks to
rewriting fPsi and dPsi.
2023-01-05 16:47:13 +01:00
8199a228c8 Locks for particle lists are now inside the type.
The lock of a particle list is no longer an external variable, it is now
part of the type.

New procedures have been added to set and unset the lock.
2022-12-31 11:22:02 +01:00
905d3f94a5 Trying to fix weighting scheme
Now particles can be split to increase statistics when they enter a
smaller cell. However, this only has an effect for collisions.

Still, I have to rethink a lot about this feature.
2022-12-29 19:32:38 +01:00
d9a1869564 Reorganization of solver
I started grouping similar modules in subfolders to ease the expansion
process.
2022-12-24 12:59:23 +01:00