Scine::Swoose  2.1.0
This is the SCINE module Swoose.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Scine::SwooseUtilities::SubsystemGenerator Class Reference
Collaboration diagram for Scine::SwooseUtilities::SubsystemGenerator:
Collaboration graph

Public Member Functions

 SubsystemGenerator (const Utils::AtomCollection &fullStructure, const Utils::BondOrderCollection &bondOrders, FragmentAnalyzer &fragmentAnalyzer, double bondOrderThreshold, int maximumSubsystemSize, Core::Log &log, int randomSeed=42, double probabilityToDivideBond=1.0)
 Constructor. More...
 
Utils::AtomCollection generateSubsystem (int centralAtomIndex, std::vector< int > &atomIndexMapping, double subsystemRadius)
 Generates a subsystem (fragment) from a given full system. More...
 

Constructor & Destructor Documentation

Scine::SwooseUtilities::SubsystemGenerator::SubsystemGenerator ( const Utils::AtomCollection fullStructure,
const Utils::BondOrderCollection bondOrders,
FragmentAnalyzer fragmentAnalyzer,
double  bondOrderThreshold,
int  maximumSubsystemSize,
Core::Log log,
int  randomSeed = 42,
double  probabilityToDivideBond = 1.0 
)

Constructor.

Parameters
fullStructureThe molecular system's full structure.
bondOrdersThe bond order matrix of the full system.
fragmentAnalyzerA reference to a FragmentAnalyzer class.
bondOrderThresholdThreshold of which bond order to still consider as a bond.
maximumSubsystemSizeMaximum size of a subsystem. If a large subsystem is generated, a warning is printed.
logThe logger.
randomSeedThe random seed that is set in the constructor. Default: 42
probabilityToDivideBondProbability to cleave a bond that is in principle cleavable. Default: 1.0

Member Function Documentation

Utils::AtomCollection Scine::SwooseUtilities::SubsystemGenerator::generateSubsystem ( int  centralAtomIndex,
std::vector< int > &  atomIndexMapping,
double  subsystemRadius 
)

Generates a subsystem (fragment) from a given full system.

Parameters
centralAtomIndexThe index of the central atom around which the subsystem will be constructed.
atomIndexMappingVector of indices that correspond to the indices of the atoms inside the given fragment in the full system. It is given as a reference and updated. Therefore, it is usually provided to the function as an empty vector.
additionToRadiusVariable extra amount that is added to the base subsystem radius and is updated whenever necessary.

The documentation for this class was generated from the following files: