Gromacs  2024.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
biassharing.cpp File Reference
#include "gmxpre.h"
#include "biassharing.h"
#include "config.h"
#include <algorithm>
#include <set>
#include <vector>
#include "gromacs/gmxlib/network.h"
#include "gromacs/mdrunutility/multisim.h"
#include "gromacs/mdtypes/awh_params.h"
#include "gromacs/mdtypes/commrec.h"
#include "gromacs/utility/arrayref.h"
#include "gromacs/utility/exceptions.h"
#include "gromacs/utility/gmxassert.h"
#include "gromacs/utility/stringutil.h"
+ Include dependency graph for biassharing.cpp:

Description

Implements bias sharing checking functionality.

Author
Berk Hess hess@.nosp@m.kth..nosp@m.se

Functions

std::multiset< int > gmx::anonymous_namespace{biassharing.cpp}::getGlobalShareIndices (ArrayRef< const int > localShareIndices, MPI_Comm simulationMainComm)
 Determines and returns which of the local biases are shared with who how many other simulations.
 
template<typename T >
void gmx::sumOverSimulations (ArrayRef< T > data, MPI_Comm multiSimComm, const bool broadcastWithinSimulation, const t_commrec &commRecord)
 Sum an array over all simulations on main ranks or all ranks of each simulation. More...
 
bool gmx::haveBiasSharingWithinSimulation (const AwhParams &awhParams)
 Returns if any bias is sharing within a simulation. More...
 
void gmx::biasesAreCompatibleForSharingBetweenSimulations (const AwhParams &awhParams, ArrayRef< const size_t > pointSize, const BiasSharing &biasSharing)
 Checks whether biases are compatible for sharing between simulations, throws when not. More...