Reorder code before thread-MPI spawns threads
gmx_check_thread_affinity_set was called before thread-MPI threads
were spawned, because originally that was necessary. But the intended
functionality is to provide feedback to users about whether thread
affinity was set by the OpenMP library or something else. Nothing else
uses the thread_affinity value in the meantime. So, it only needs to
be called just before OpenMP is initialized. The reordering makes
clear that some reduction code within this function only needs to run
with real MPI.
check_and_update_hw_opt_1 does modify hw_opt, but none of the relevant
variables were accessed in the preceding code, so the reordering is
safe. It now takes a boolean rather than a handle to t_commrec, which
decreases the code coupling and will shortly be useful. A check for
mdrun -ntmpi -npme has been moved into this routine.
check_and_update_hw_opt_2 only related to the group scheme and can
be removed.
The fatal error for group-scheme .tpr files can safely be moved
later, alongside other code specific to the Verlet scheme.
Reruns can safely clear the velocity vector later.
The log file makes a request to cite GROMACS papers, which is now
implemented in a simple function elsewhere.
Change-Id: I1e5990656c391da81aec215f86b94efc752002d4