Merge branch 'issue/readEMBoundary' into 'development'
Issue reading EM field See merge request JorgeGonz/fpakc!24
This commit is contained in:
commit
550f6e2d2e
2 changed files with 18 additions and 18 deletions
|
|
@ -172,7 +172,7 @@ MODULE moduleInput
|
||||||
CHARACTER(:), ALLOCATABLE:: object
|
CHARACTER(:), ALLOCATABLE:: object
|
||||||
!simulation final and initial times in [t]
|
!simulation final and initial times in [t]
|
||||||
REAL(8):: finalTime, initialTime
|
REAL(8):: finalTime, initialTime
|
||||||
CHARACTER(:), ALLOCATABLE:: pusherType, EMType, WSType
|
CHARACTER(:), ALLOCATABLE:: pusherType, WSType
|
||||||
INTEGER:: nTau, nSolver
|
INTEGER:: nTau, nSolver
|
||||||
INTEGER:: i
|
INTEGER:: i
|
||||||
CHARACTER(2):: iString
|
CHARACTER(2):: iString
|
||||||
|
|
@ -221,15 +221,6 @@ MODULE moduleInput
|
||||||
|
|
||||||
END DO
|
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
|
!Gest the non-analogue scheme
|
||||||
CALL config%get(object // '.WeightingScheme', WSType, found)
|
CALL config%get(object // '.WeightingScheme', WSType, found)
|
||||||
CALL solver%initWS(WSType)
|
CALL solver%initWS(WSType)
|
||||||
|
|
@ -809,12 +800,13 @@ MODULE moduleInput
|
||||||
USE moduleErrors
|
USE moduleErrors
|
||||||
USE moduleOutput
|
USE moduleOutput
|
||||||
USE moduleRefParam
|
USE moduleRefParam
|
||||||
|
USE moduleSolver
|
||||||
USE json_module
|
USE json_module
|
||||||
IMPLICIT NONE
|
IMPLICIT NONE
|
||||||
|
|
||||||
TYPE(json_file), INTENT(inout):: config
|
TYPE(json_file), INTENT(inout):: config
|
||||||
LOGICAL:: found
|
LOGICAL:: found
|
||||||
CHARACTER(:), ALLOCATABLE:: meshFormat, meshFile
|
CHARACTER(:), ALLOCATABLE:: meshFormat, meshFile, EMType
|
||||||
REAL(8):: volume
|
REAL(8):: volume
|
||||||
|
|
||||||
!Firstly, indicates if a specific mesh for MC collisions is being use
|
!Firstly, indicates if a specific mesh for MC collisions is being use
|
||||||
|
|
@ -906,6 +898,16 @@ MODULE moduleInput
|
||||||
|
|
||||||
END IF
|
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
|
END SUBROUTINE readGeometry
|
||||||
|
|
||||||
SUBROUTINE readProbes(config)
|
SUBROUTINE readProbes(config)
|
||||||
|
|
|
||||||
|
|
@ -63,10 +63,12 @@ MODULE moduleProbe
|
||||||
ALLOCATE(self%vj(1:self%nv(2)))
|
ALLOCATE(self%vj(1:self%nv(2)))
|
||||||
ALLOCATE(self%vk(1:self%nv(3)))
|
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
|
!Creates grid
|
||||||
dv(1) = (v1(2) - v1(1))/REAL(self%nv(1) - 1)/v_ref
|
dv = self%vrange / REAL(self%nv - 1)
|
||||||
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
|
|
||||||
|
|
||||||
self%dvInv = 1.D0/(dv(1)*dv(2)*dv(3))
|
self%dvInv = 1.D0/(dv(1)*dv(2)*dv(3))
|
||||||
|
|
||||||
|
|
@ -85,10 +87,6 @@ MODULE moduleProbe
|
||||||
|
|
||||||
END DO
|
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
|
!Allocates distribution function
|
||||||
ALLOCATE(self%f(1:self%nv(1), &
|
ALLOCATE(self%f(1:self%nv(1), &
|
||||||
1:self%nv(2), &
|
1:self%nv(2), &
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue