Merge branch 'issue/readEMBoundary' into 'development'

Issue reading EM field

See merge request JorgeGonz/fpakc!24
This commit is contained in:
Jorge Gonzalez 2021-10-18 08:32:44 +00:00
commit 550f6e2d2e
2 changed files with 18 additions and 18 deletions

View file

@ -172,7 +172,7 @@ MODULE moduleInput
CHARACTER(:), ALLOCATABLE:: object
!simulation final and initial times in [t]
REAL(8):: finalTime, initialTime
CHARACTER(:), ALLOCATABLE:: pusherType, EMType, WSType
CHARACTER(:), ALLOCATABLE:: pusherType, WSType
INTEGER:: nTau, nSolver
INTEGER:: i
CHARACTER(2):: iString
@ -221,15 +221,6 @@ MODULE moduleInput
END DO
!Gets the solver for the electromagnetic field
CALL config%get(object // '.EMSolver', EMType, found)
CALL solver%initEM(EMType)
SELECT CASE(EMType)
CASE("Electrostatic")
CALL readEMBoundary(config)
END SELECT
!Gest the non-analogue scheme
CALL config%get(object // '.WeightingScheme', WSType, found)
CALL solver%initWS(WSType)
@ -809,12 +800,13 @@ MODULE moduleInput
USE moduleErrors
USE moduleOutput
USE moduleRefParam
USE moduleSolver
USE json_module
IMPLICIT NONE
TYPE(json_file), INTENT(inout):: config
LOGICAL:: found
CHARACTER(:), ALLOCATABLE:: meshFormat, meshFile
CHARACTER(:), ALLOCATABLE:: meshFormat, meshFile, EMType
REAL(8):: volume
!Firstly, indicates if a specific mesh for MC collisions is being use
@ -906,6 +898,16 @@ MODULE moduleInput
END IF
!Gest EM solver
CALL config%get('case.EMSolver', EMType, found)
CALL solver%initEM(EMType)
SELECT CASE(EMType)
CASE("Electrostatic")
!Reads BC
CALL readEMBoundary(config)
END SELECT
END SUBROUTINE readGeometry
SUBROUTINE readProbes(config)

View file

@ -63,10 +63,12 @@ MODULE moduleProbe
ALLOCATE(self%vj(1:self%nv(2)))
ALLOCATE(self%vk(1:self%nv(3)))
self%vrange(1) = (v1(2) - v1(1))/v_ref
self%vrange(2) = (v2(2) - v2(1))/v_ref
self%vrange(3) = (v3(2) - v3(1))/v_ref
!Creates grid
dv(1) = (v1(2) - v1(1))/REAL(self%nv(1) - 1)/v_ref
dv(2) = (v2(2) - v2(1))/REAL(self%nv(2) - 1)/v_ref
dv(3) = (v3(2) - v3(1))/REAL(self%nv(3) - 1)/v_ref
dv = self%vrange / REAL(self%nv - 1)
self%dvInv = 1.D0/(dv(1)*dv(2)*dv(3))
@ -85,10 +87,6 @@ MODULE moduleProbe
END DO
self%vrange(1) = self%vi(self%nv(1)) - self%vi(1)
self%vrange(2) = self%vj(self%nv(2)) - self%vj(1)
self%vrange(3) = self%vk(self%nv(3)) - self%vk(1)
!Allocates distribution function
ALLOCATE(self%f(1:self%nv(1), &
1:self%nv(2), &