ppap4lmp
0.7.2
|
AddSpecialBonds adds special bonds. More...
#include <add_special_bonds.h>
Public Member Functions | |
AddSpecialBonds (const ElPtr &el_mols, const Vec< Vec< int >> &scheme) | |
Constructor of AddSpecialBonds class for molecules all of whose type property are 1, or molecules all of which do not have the property. More... | |
AddSpecialBonds (const ElPtr &el_mols, const Map< int, Vec< Vec< int >>> &type_to_scheme) | |
Constructor of AddSpecialBonds class for multiple molecular types. More... | |
![]() | |
Updater ()=default | |
Constructor of Updater class. More... | |
![]() | |
Updater ()=default | |
Constructor of Updater class. More... | |
void | compute (const ElPtr &elem, const int elementid, Json &data) |
Managing computation to update Element::data. More... | |
void | remove_from_skippable_elementids (const int elementid) |
Remove Element::elementid from skippable_elementids. More... | |
const ShPtr< Generator > & | get_ext_generator () |
Get ext_generator of this object. More... | |
Protected Member Functions | |
virtual void | compute_impl (Json &data, JsonToVoidFunc check_required_keys, JsonToBoolFunc check_optional_keys) override |
This method overrides Updater::compute_impl. More... | |
![]() | |
virtual void | compute_body (const ElPtr &elem, Json &data) override |
Compute properties and add them to Element::data given as a mutable reference. More... | |
![]() | |
virtual void | compute_common (const ElPtr &elem, Json &data) |
Common part of compute_body. More... | |
Private Attributes | |
Map< int, Vec< Vec< int > > > | mol_type_to_sbonds_list_in_mol |
Additional Inherited Members | |
![]() | |
ShPtr< Generator > | ext_generator |
AddSpecialBonds adds special bonds.
The term special bonds is somewhat confusing because one of special bonds is not a bond but, for example, an atom connected with a special bond. If an atom has another atom as one of its special bonds, the two atoms are considered to interact with each other through some kind of bonded potential(s).
An object of this class has a molecular Element object as ext_generator, and is appended to an atomic (or bead) Element object. The object of this class owns schemes for special bonds for each type of molecule; a scheme is something like a list of special bonds of each atom in one molecule.
About usage in Python, please see pybind::py_add_special_bonds.
Definition at line 32 of file add_special_bonds.h.
Constructor of AddSpecialBonds class for molecules all of whose type
property are 1, or molecules all of which do not have the property.
el_mols | A molecular Element object consisting of an atomic (or bead) Element object where the constructed object is appended to. This parameter is assigned to ext_generator.
|
scheme | List of lists of zero-based indices of atoms in a molecule. The first list corresponds atoms in a molecule, and the second lists corresponds special bonds of each atom. This parameter is stored in mol_type_to_sbonds_list_in_mol as a scheme for molecular type 1. |
Definition at line 17 of file add_special_bonds.cpp.
AddSpecialBonds::AddSpecialBonds | ( | const ElPtr & | el_mols, |
const Map< int, Vec< Vec< int >>> & | type_to_scheme | ||
) |
Constructor of AddSpecialBonds class for multiple molecular types.
el_mols | A molecular Element object consisting of an atomic (or bead) Element object where the constructed object is appended to. This parameter is assigned to ext_generator.
|
type_to_scheme | Dictionary from molecular type to list of lists of zero-based indices of atoms in a molecule. The first list corresponds atoms in a molecule, and the second lists corresponds special bonds of each atom. This parameter is assigned to mol_type_to_sbonds_list_in_mol. |
Definition at line 27 of file add_special_bonds.cpp.
|
overrideprotectedvirtual |
This method overrides Updater::compute_impl.
special-bonds
: array of integers Implements Updater.
Definition at line 37 of file add_special_bonds.cpp.
Schemes of special bonds for each molecular type contained in a Map (dictionary) object from molecular type to a list of lists of zero-based indices of atoms in a molecule of that type. The first list corresponds atoms in a molecule, and the second lists corresponds special bonds of each atom.
Definition at line 41 of file add_special_bonds.h.