Commit graph

266 commits

Author SHA1 Message Date
5d82ea2ddc Code cleanup 2026-03-06 09:30:33 +01:00
85a8f1bc0b Forgot a print statement 2026-03-04 10:48:08 +01:00
600f7305bd Added center point procedure to edge and eps in inside to avoid some rounding errors 2026-03-04 10:41:55 +01:00
a89853135c Small correction to input. Adjustment of ALPHIE_Grid case 2026-03-03 14:50:09 +01:00
352a5578cc Wrong subroutine name in error 2026-03-01 09:57:40 +01:00
aad8675214 Small changes while testing 0D case 2026-02-27 22:21:37 +01:00
9cdc2491b1 Small issue reading edges
Sometimes I do things right, then I change them thinking my old self was
an idiot and then they break.

The positive point: the solutions end up being better.
2026-02-27 20:55:07 +01:00
9c30051663 Forgot to link edge to boundary procedures. 1D case working right now 2026-02-26 15:23:10 +01:00
31f0b510bc The program reads the case but stops while doind the simulation 2026-02-26 14:25:47 +01:00
be9b7be280 IT COMPILES
I don't belive it, this was the largest change in the code ever made and
it is compiling now.

Now, I have to test, clean the code, change the examples and update the
documentation...
2026-02-25 09:02:09 +01:00
6b4d4fbcc3 Almost compiling. Issue was in generating objects for submodules 2026-02-24 20:18:06 +01:00
135f1f464c Files compile but there is no linking in mesh module 2026-02-24 20:03:36 +01:00
5dfc8d4ce9 Inject fixed. Now getting close to input 2026-02-20 11:24:58 +01:00
70f6db0883 Add new elements to point containers is now more general 2026-02-20 11:03:11 +01:00
ce6b6a41a6 New physical surfaces implemented 2026-02-20 09:50:42 +01:00
a0d45503f7 Working on init for new physical surfaces 2026-02-19 20:42:28 +01:00
1b32dfdfd6 Rewriting surfaces and boundaries 2026-02-19 20:23:13 +01:00
3678942be4 I get distracted and fix stupid warnings 2026-02-18 20:47:33 +01:00
21b112a591 Split velocity distribution function. Still don't know how to deal with injects 2026-02-18 20:38:45 +01:00
7535f5aaaa EM boundary conditions should work now 2026-02-18 20:02:48 +01:00
d211ed9a71 Almost done with EM, not to modify the EM module itself 2026-02-18 15:14:59 +01:00
0379ea42c2 I have to change the init of the edges to include the EM boundaries now 2026-02-18 13:50:14 +01:00
4c72e68246 Boundaries for EM almost done 2026-02-18 13:31:38 +01:00
6a7c92f62f Skeleton of boundaries for EM with new structure for mesh 2026-02-17 14:54:22 +01:00
4872bcc194 Forgot to rename submodule in makefile 2026-02-17 09:31:38 +01:00
0ae121e3b1 Rename of boundary module as I start with EM 2026-02-17 09:30:25 +01:00
f566776af2 New common module for mesh module to avoid repetition 2026-02-17 09:26:37 +01:00
6f8656bc21 Init for boundaries particles 2026-02-16 20:05:23 +01:00
6b96d56c9d Init for edges changed. Now, input 2026-02-13 10:58:31 +01:00
defcf02466 Preparing to change the input 2026-02-10 18:46:37 +01:00
c1b6cf1b31 Now the deferred apply is pass and I made some generic boundaries to use internally 2026-02-10 17:22:56 +01:00
0ccf455986 Boundaries done. Now to change the input and edges 2026-02-09 18:43:59 +01:00
c78d92fa7d Changing now boundaries 2026-02-09 15:22:41 +01:00
58e2fa7566 Working towards compilation with submodules 2026-02-09 13:52:52 +01:00
fbbb0d5d13 fPsi functions for edges
I need to make a common module for mesh, many functions for elements are
shared.

Also, try to reduce the 'select type' statements, but I don't know
enough Fortran for it.
2026-02-05 15:30:50 +01:00
e7e6e1bece New BC for quasi-neutrality
Still, the adjustment it is not iterative.
I need to build new subroutines to gather values of edges.
2026-02-05 11:01:15 +01:00
13dde3b1f9 I need to ensure quasi-neutrality at the inlet with a new kind of BC 2026-02-04 22:43:59 +01:00
8d5cb6a516 Wrong surface in edges
Some edges were calculating the area surface incorrectly, which was leading to wrong densities.
2026-02-02 14:31:58 +01:00
1b1a574edc Read initial
Now we can read an initial condition as we do with other formats.

Only documentation left.
2026-01-23 15:04:39 +01:00
d34e72d2e8 Collisions done
Thanks to the advance statement the output of collisions is done.
2026-01-23 14:51:49 +01:00
46b9f263ea Average done
Now we can output averages in this format.
2026-01-23 14:26:39 +01:00
8c8c6409f6 Output for EM
The output for the EM field properties is done.
2026-01-23 12:16:52 +01:00
27158c7c1d Output for species
First output done. Now it is mostly Copy Paste.

There are so many things I need to reform in other parts... Learning new things is awful.
2026-01-22 18:44:25 +01:00
3083e20ff7 Subroutine for reading mesh
It is now complete and working. I also added some minor improvements to moduleMesh.f90 using 'associate' to practice.

I noticed there are a lot of things (allocating K, for example) that are common for all meshes and should be moved to a general module.
2026-01-22 14:06:20 +01:00
7d4f4b98c3 Implementing input subroutines 2026-01-19 15:37:31 +01:00
9f9bacca7c Skeleton implementation of text mesh for simple 1D cases. 2026-01-19 14:48:06 +01:00
d5bcf8ce50 Merge branch 'issue/triangles' into 'development'
Fixed issue with volume in triangles

See merge request JorgeGonz/fpakc!56
2025-10-11 12:01:28 +00:00
55e062a9ef Fixed issue with volume in triangles
The right value in 2D Cartesian is used for calculating the volume.
2025-10-11 14:00:16 +02:00
dff9a87f0d Implemenint injecting particles without direction
I was almost sure this was implemented in the past, but it was not working.

Now, if n = 0 or if n is not provided, particles are injected with the normal to the surface.
2025-08-08 19:27:27 +02:00
3d7b1ce476 Fixed!
So it seems that rectangles and triangles are now working properly.

I have also checked the phy2log routine, now it seems a bit more complicated, but it is much clearer.
Maybe in the future is worth rethinking to improve speed (specially for quad elements)
2025-08-03 22:14:19 +02:00