|
SSAGES
0.9.3
Software Suite for Advanced General Ensemble Simulations
|
Swarm of Trajectories String Method. More...
#include <Swarm.h>

Public Member Functions | |
| Swarm (const MPI_Comm &world, const MPI_Comm &comm, const std::vector< double > ¢ers, unsigned int maxiterations, const std::vector< double > cvspring, unsigned int frequency, unsigned int InitialSteps, unsigned int HarvestLength, unsigned int NumberTrajectories, unsigned int SwarmLength) | |
| Constructor. More... | |
| void | PostIntegration (Snapshot *snapshot, const class CVManager &cvmanager) override |
| Method call post integration. More... | |
| ~Swarm () | |
| Destructor. | |
Public Member Functions inherited from SSAGES::StringMethod | |
| StringMethod (const MPI_Comm &world, const MPI_Comm &comm, const std::vector< double > ¢ers, unsigned int maxiterations, const std::vector< double > cvspring, unsigned int frequency) | |
| Constructor. More... | |
| void | PreSimulation (Snapshot *snapshot, const class CVManager &cvmanager) override |
| Method call prior to simulation initiation. More... | |
| void | PostSimulation (Snapshot *snapshot, const class CVManager &cvmanager) override |
| Method call post simulation. More... | |
| void | SetTolerance (std::vector< double > tol) |
| Set the tolerance for quitting method. More... | |
| void | SetSendRecvNeighbors () |
| Communicate neighbor lists over MPI. | |
| virtual | ~StringMethod () |
| Destructor. | |
Public Member Functions inherited from SSAGES::Method | |
| Method (unsigned int frequency, const MPI_Comm &world, const MPI_Comm &comm) | |
| Constructor. More... | |
| void | SetCVMask (const std::vector< unsigned int > &mask) |
| Sets the collective variable mask. More... | |
| virtual | ~Method () |
| Destructor. | |
Public Member Functions inherited from SSAGES::EventListener | |
| EventListener (unsigned int frequency) | |
| Constructor. More... | |
| unsigned int | GetFrequency () const |
| Get frequency of event listener. More... | |
| virtual | ~EventListener () |
| Destructor. | |
Private Member Functions | |
| void | StringUpdate () override |
| Updates the positions of the string. | |
| bool | CVInitialized (const CVList &cvs) |
| Helper function check if CVs are initialized correctly. More... | |
Private Attributes | |
| std::vector< double > | cv_drift_ |
| Drift of CVs for one iteration. | |
| unsigned int | initialize_steps_ |
| Total number of MD steps for initialization for one iteration. | |
| unsigned int | harvest_length_ |
| Length to run before harvesting a trajectory for unrestrained sampling. | |
| unsigned int | restrained_steps_ |
| Total number of restrained MD steps for one iteration. | |
| unsigned int | number_trajectories_ |
| Number of trajectories per swarm. | |
| unsigned int | swarm_length_ |
| Length of unrestrained trajectories. | |
| unsigned int | unrestrained_steps_ |
| Total number of unrestrained MD steps for one iteration. | |
| unsigned int | index_ |
| For indexing trajectory vectors. | |
| std::vector< Label > | traj_atomids_ |
| Store atom IDs for starting trajecotires. | |
| bool | sampling_started |
| Flag for determing whether to perform initialization or not. | |
| bool | snapshot_stored |
| Flag for whether a snapshot was stored in the umbrella sampling. | |
| int | initialized |
| Flag for whether a system is initialized at a given iteration. | |
| bool | original_initialized |
| Flag for whether a system was initialized before it checked whether other systems were. | |
Additional Inherited Members | |
Static Public Member Functions inherited from SSAGES::StringMethod | |
| static StringMethod * | Build (const Json::Value &json, const MPI_Comm &world, const MPI_Comm &comm, const std::string &path) |
| Build a derived method from JSON node. More... | |
Static Public Member Functions inherited from SSAGES::Method | |
| static Method * | BuildMethod (const Json::Value &json, const MPI_Comm &world, const MPI_Comm &comm, const std::string &path) |
| Build a derived method from JSON node. More... | |
Static Public Member Functions inherited from SSAGES::EventListener | |
| static unsigned int | GetWalkerID (const MPI_Comm &world, const MPI_Comm &comm) |
| Get walker ID number of specified communicator. More... | |
| static unsigned int | GetNumWalkers (const MPI_Comm &world, const MPI_Comm &comm) |
| Get total number of walkers in the simulation. More... | |
| static bool | IsMasterRank (const MPI_Comm &comm) |
| Check if current processor is master. More... | |
Protected Member Functions inherited from SSAGES::StringMethod | |
| double | distance (const std::vector< double > &x, const std::vector< double > &y) const |
| Helper function for calculating distances. More... | |
| void | PrintString (const CVList &CV) |
| Prints the CV positions to file. More... | |
| void | GatherNeighbors (std::vector< double > *lcv0, std::vector< double > *ucv0) |
| Gather neighbors over MPI. More... | |
| void | StringReparam (double alpha_star) |
| Reparameterize the string. More... | |
| void | UpdateWorldString (const CVList &cvs) |
| Update the world string over MPI. More... | |
| bool | TolCheck () const |
| Check whether tolerance criteria have been met. More... | |
| bool | CheckEnd (const CVList &CV) |
| Check if method reached one of the exit criteria. More... | |
Protected Attributes inherited from SSAGES::StringMethod | |
| std::vector< double > | centers_ |
| CV starting location values. | |
| std::vector< double > | newcenters_ |
| CV starting location values. | |
| std::vector< std::vector< double > > | worldstring_ |
| The world's strings centers for each CV. More... | |
| int | mpiid_ |
| The node this belongs to. | |
| std::vector< double > | tol_ |
| Tolerance criteria for determining when to stop string (default 0 if no tolerance criteria) | |
| int | numnodes_ |
| Number of nodes on a string. | |
| unsigned int | maxiterator_ |
| Maximum cap on number of string method iterations performed. | |
| std::vector< double > | cvspring_ |
| Vector of spring constants. | |
| unsigned int | iterator_ |
| The local method iterator. | |
| unsigned int | iteration_ |
| The global method iteration. | |
| std::ofstream | stringout_ |
| Output stream for string data. | |
| int | sendneigh_ |
| Neighbor to send info to. | |
| int | recneigh_ |
| Neighbor to gain info from. | |
| std::vector< std::vector< double > > | prev_positions_ |
| Store positions for starting trajectories. | |
| std::vector< std::vector< double > > | prev_velocities_ |
| Store velocities for starting trajectories. | |
| std::vector< std::vector< int > > | prev_IDs_ |
| Store atom IDs for starting trajectories. | |
Protected Attributes inherited from SSAGES::Method | |
| mxx::comm | world_ |
| Global MPI communicator. | |
| mxx::comm | comm_ |
| Local MPI communicator. | |
| std::vector< unsigned int > | cvmask_ |
| Mask which identifies which CVs to act on. | |
|
inline |
Constructor.
| world | MPI global communicator. |
| comm | MPI local communicator. |
| centers | List of centers. |
| maxiterations | Maximum number of iterations. |
| cvspring | Spring constants for CVs. |
| frequency | Aplly method with this frequency. |
| InitialSteps | Number of initial steps. |
| HarvestLength | Length of trajectory before weighing. |
| NumberTrajectories | Number of trajectories. |
| SwarmLength | Lengt of the swarms. |
Constructs an instance of the swarm of trajectories method.
Definition at line 103 of file Swarm.h.
References SSAGES::StringMethod::centers_, cv_drift_, harvest_length_, index_, SSAGES::StringMethod::iterator_, number_trajectories_, SSAGES::StringMethod::prev_IDs_, SSAGES::StringMethod::prev_positions_, SSAGES::StringMethod::prev_velocities_, restrained_steps_, sampling_started, snapshot_stored, swarm_length_, and unrestrained_steps_.
|
private |
Helper function check if CVs are initialized correctly.
| cvs | List of CVs to check |
Definition at line 35 of file Swarm.cpp.
References SSAGES::StringMethod::centers_.
Referenced by PostIntegration().

|
overridevirtual |
Method call post integration.
Post-integration hook
| snapshot | Pointer to the simulation snapshot. |
| cvmanager | Collective variable manager. |
This function will be called after each integration step.
Implements SSAGES::StringMethod.
Definition at line 70 of file Swarm.cpp.
References SSAGES::StringMethod::centers_, SSAGES::StringMethod::CheckEnd(), cv_drift_, CVInitialized(), SSAGES::Method::cvmask_, SSAGES::StringMethod::cvspring_, SSAGES::CVManager::GetCVs(), SSAGES::Snapshot::GetForces(), SSAGES::Snapshot::GetLocalIndex(), SSAGES::Snapshot::GetPositions(), SSAGES::Snapshot::GetVelocities(), harvest_length_, index_, initialize_steps_, initialized, SSAGES::StringMethod::iteration_, SSAGES::StringMethod::iterator_, number_trajectories_, original_initialized, SSAGES::StringMethod::prev_IDs_, SSAGES::StringMethod::prev_positions_, SSAGES::StringMethod::prev_velocities_, SSAGES::StringMethod::PrintString(), restrained_steps_, sampling_started, SSAGES::Snapshot::SerializeIDs(), SSAGES::Snapshot::SerializePositions(), SSAGES::Snapshot::SerializeVelocities(), snapshot_stored, StringUpdate(), swarm_length_, unrestrained_steps_, SSAGES::StringMethod::UpdateWorldString(), and SSAGES::Method::world_.
