diff --git a/src/modules/moduleInput.f90 b/src/modules/moduleInput.f90 index d97f92c..56f5f79 100644 --- a/src/modules/moduleInput.f90 +++ b/src/modules/moduleInput.f90 @@ -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) diff --git a/src/modules/moduleProbe.f90 b/src/modules/moduleProbe.f90 index 26d62c8..6093ac6 100644 --- a/src/modules/moduleProbe.f90 +++ b/src/modules/moduleProbe.f90 @@ -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), &