Huge improvement in reset (by increasing a little bit push time) using
OMP locks to assign particles to cells in the pushing step. Trying to combine push+reset and collision+scatter did not work.
This commit is contained in:
parent
1686da7694
commit
fd42e0f3f9
7 changed files with 101 additions and 92 deletions
|
|
@ -2,6 +2,7 @@
|
|||
MODULE moduleMesh
|
||||
USE moduleList
|
||||
USE moduleOutput
|
||||
USE OMP_LIB
|
||||
IMPLICIT NONE
|
||||
|
||||
!Parent of Node element
|
||||
|
|
@ -90,6 +91,8 @@ MODULE moduleMesh
|
|||
REAL(8):: volume = 0.D0
|
||||
!List of particles inside the volume
|
||||
TYPE(listNode):: listPart_in
|
||||
!Lock indicator for listPart_in
|
||||
INTEGER(KIND=OMP_LOCK_KIND):: lock
|
||||
!Number of collisions per volume
|
||||
INTEGER:: nColl = 0
|
||||
CONTAINS
|
||||
|
|
@ -131,7 +134,7 @@ MODULE moduleMesh
|
|||
IMPORT:: meshVol
|
||||
CLASS(meshVol), INTENT(inout):: self
|
||||
CLASS(meshVol), OPTIONAL, INTENT(in):: oldCell
|
||||
CLASS(particle), INTENT(inout):: part
|
||||
CLASS(particle), INTENT(inout), TARGET:: part
|
||||
|
||||
END SUBROUTINE findCell_interface
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue