Added the possibility to have sub-steps

Now per each Coulomb collision process there is the possibility to do
sub-steps. This helps in improving accuracy without reducing the time
step of the problem.
This commit is contained in:
Jorge Gonzalez 2023-07-12 14:21:29 +02:00
commit 28b2bf206a
3 changed files with 55 additions and 43 deletions

View file

@ -637,6 +637,7 @@ MODULE moduleInput
CHARACTER(:), ALLOCATABLE:: electron
INTEGER:: e
CLASS(meshCell), POINTER:: cell
INTEGER:: subSteps
!Firstly, check if the object 'interactions' exists
CALL config%info('interactions', found)
@ -770,8 +771,13 @@ MODULE moduleInput
pt_i = speciesName2Index(species_i)
CALL config%get(object // '.species_j', species_j, found)
pt_j = speciesName2Index(species_j)
CALL config%get(object // '.subSteps', subSteps, found)
IF (.NOT. found) THEN
subSteps = 1
CALL coulombMatrix(i)%init(pt_i, pt_j)
END IF
CALL coulombMatrix(i)%init(pt_i, pt_j, subSteps)
END DO