Hello
About the parallelism, since V7P0 the subroutine proxim.f checks if the source point is actually inside the computational domain, regardless of which processor it is in.
But the algorithm that finds the nearest mesh not is more or less the same, so the problem is that your source point is too far away from a mesh node.
What you can do to avoid this without changing every source coordinate is:
- Lower the precision of this line:
IF(A31.GT.-1.D-6.AND.A12.GT.-1.D-6.AND.A23.GT.-1.D-6) THEN
- Modify this part of the code so that it takes the nearest point in mesh, regardless at what distance it is (this is very dangerous!)
- If you have the mesh nodes that you want you can replace the call to proxim by a manual assignment of the mesh nodes you want (in parallel you will also have to use the global_to_local_point function).
But certainly, the best way to proceed is to correct the coordinates of the source points. It is approach less prone to further errors.
Hope this helps.
Best regards,
Phelype