Change in injection to achieve uniform density of particles. #50

Merged
JorgeGonz merged 6 commits from issue/injection into development 2024-06-30 10:50:25 +02:00
Showing only changes of commit 6389c8ba2d - Show all commits

Quick because food

Cartesian fixed now
Jorge Gonzalez 2024-06-27 12:08:08 +02:00

View file

@ -73,10 +73,21 @@ MODULE moduleRandom
REAL(8), INTENT(in):: cumWeight(1:)
REAL(8), INTENT(in):: sumWeight
REAL(8):: rnd0b
INTEGER:: rnd
INTEGER:: rnd, i
rnd0b = random(0.D0, sumWeight)
rnd = MINLOC(DABS(rnd0b - cumWeight), 1)
i = 1
DO
IF (rnd0b <= cumWeight(i)) THEN
rnd = i
EXIT
ELSE
i = i +1
END IF
END DO
! rnd = MINLOC(DABS(rnd0b - cumWeight), 1)
END FUNCTION randomWeighted