Main changes:
- Injection is now performed in parallalel (an IF statement could be required to avoid overhead when number of injected particles is below a margin). - Added the possibility for multiple injections.
This commit is contained in:
parent
a04b46a0f0
commit
73fc9f69c1
6 changed files with 80 additions and 76 deletions
|
|
@ -59,6 +59,8 @@ MODULE moduleMesh
|
|||
INTEGER:: bt = 0
|
||||
CONTAINS
|
||||
PROCEDURE(initEdge_interface), DEFERRED, PASS:: init
|
||||
PROCEDURE(boundary_interface), DEFERRED, PASS:: fBoundary
|
||||
PROCEDURE(randPos_interface), DEFERRED, PASS:: randPos
|
||||
|
||||
END TYPE meshEdge
|
||||
|
||||
|
|
@ -73,6 +75,23 @@ MODULE moduleMesh
|
|||
|
||||
END SUBROUTINE initEdge_interface
|
||||
|
||||
SUBROUTINE boundary_interface(self, part)
|
||||
USE moduleSpecies
|
||||
|
||||
IMPORT:: meshEdge
|
||||
CLASS (meshEdge), INTENT(inout):: self
|
||||
CLASS (particle), INTENT(inout):: part
|
||||
|
||||
END SUBROUTINE
|
||||
|
||||
PURE FUNCTION randPos_interface(self, rnd) RESULT(r)
|
||||
IMPORT:: meshEdge
|
||||
CLASS(meshEdge), INTENT(in):: self
|
||||
REAL(8), INTENT(in):: rnd
|
||||
REAL(8):: r(1:3)
|
||||
|
||||
END FUNCTION randPos_interface
|
||||
|
||||
END INTERFACE
|
||||
|
||||
!Containers for edges in the mesh
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue