diff --git a/src/modules/common/moduleTable.f90 b/src/modules/common/moduleTable.f90 index e4da335..2dc1c75 100644 --- a/src/modules/common/moduleTable.f90 +++ b/src/modules/common/moduleTable.f90 @@ -93,7 +93,7 @@ MODULE moduleTable f = self%fMax ELSE - i = MINLOC(x - self%x, 1) + i = MINLOC(ABS(x - self%x), 1) deltaX = x - self%x(i) IF (deltaX < 0 ) THEN i = i - 1 diff --git a/src/modules/mesh/moduleMesh.f90 b/src/modules/mesh/moduleMesh.f90 index 7e30326..e96ff2a 100644 --- a/src/modules/mesh/moduleMesh.f90 +++ b/src/modules/mesh/moduleMesh.f90 @@ -911,7 +911,9 @@ MODULE moduleMesh !Loop over collisions DO c = 1, interactionMatrix(k)%amount IF (rnd_real <= probabilityColl(c)) THEN + !$OMP CRITICAL CALL interactionMatrix(k)%collisions(c)%obj%collide(part_i, part_j, vRel) + !$OMP END CRITICAL !If collisions are gonna be output, count the collision IF (collOutput) THEN diff --git a/src/modules/moduleCollisions.f90 b/src/modules/moduleCollisions.f90 index ccca930..fec4c8d 100644 --- a/src/modules/moduleCollisions.f90 +++ b/src/modules/moduleCollisions.f90 @@ -362,7 +362,7 @@ MODULE moduleCollisions CALL sp%ionize(neutral) CLASS DEFAULT - ! CALL criticalError(sp%name // " is not a neutral", 'collideBinaryIonization') + CALL criticalError(sp%name // " is not a neutral", 'collideBinaryIonization') RETURN END SELECT