indigoX
|
#include <indigox/classes/atom.hpp>
Classes | |
struct | Impl |
Public Types | |
using | AtomAngles = std::vector< Angle > |
Container for storing IXAngle references. More... | |
using | AtomBonds = std::vector< Bond > |
Container for storing Bond references. More... | |
using | AtomDihedrals = std::vector< Dihedral > |
Container for storing IXDihedral references. More... | |
enum | Stereo |
Enum for the different types of atom stereochemistry. More... | |
Public Member Functions | |
Atom ()=default | |
Atom (const Atom &)=default | |
Atom (Atom &&)=default | |
~ Atom ()=default | |
int32_t | AddImplicitHydrogen () |
Add an implicit hydrogen. More... | |
const AtomAngles & | GetAngles () const |
const AtomBonds & | GetBonds () const |
int32_t | GetChargeGroupID () const |
const AtomDihedrals & | GetDihedrals () const |
const Element & | GetElement () const |
Element of the atom. More... | |
int32_t | GetFormalCharge () const |
Formal charge on the atom. More... | |
int64_t | GetID () const |
int32_t | GetImplicitCount () const |
Get number of implicit hydrogens. More... | |
int64_t | GetIndex () const |
Get the index from the molecule. More... | |
const Molecule & | GetMolecule () const |
Molecule this atom is associated with. More... | |
const std::string & | GetName () const |
Atom name. More... | |
double | GetPartialCharge () const |
Partial atomic charge on the atom. More... | |
const Eigen::Vector3d & | GetPosition () const |
Vector of the atom's position. More... | |
int32_t | GetResidueID () |
std::string | GetResidueName () |
Stereo | GetStereochemistry () const |
Get the stereochemistry of the atom. More... | |
int64_t | GetTag () const |
Tag of the atom. More... | |
const FFAtom & | GetType () const |
Get the FF type of the atom. More... | |
double | GetX () const |
Atom x position. More... | |
double | GetY () const |
Atom y position. More... | |
double | GetZ () const |
Atom z position. More... | |
bool | HasType () const |
int64_t | NumAngles () const |
Number of valid angles this atom is a part of. More... | |
int64_t | NumBonds () const |
Number of valid bonds this atom is part of. More... | |
int64_t | NumDihedrals () const |
Number of valid dihedrals this atom is a part of. More... | |
int32_t | NumHeavyAtomBonds () const |
int32_t | NumHydrogenBonds () const |
operator bool () const | |
bool | operator!= (const Atom &atm) const |
bool | operator< (const Atom &atm) const |
bool | operator<= (const Atom &atm) const |
Atom & | operator= (const Atom &)=default |
Atom & | operator= (Atom &&)=default |
bool | operator== (const Atom &atm) const |
bool | operator> (const Atom &atm) const |
bool | operator>= (const Atom &atm) const |
int32_t | RemoveImplicitHydrogen () |
Remove an implicit hydrogen. More... | |
void | SetChargeGroupID (int32_t id) |
void | SetElement (const Element &e) |
Set the element of this atom. More... | |
void | SetElement (std::string e) |
Set the element of this atom. More... | |
void | SetElement (int32_t e) |
Set the element of this atom. More... | |
void | SetFormalCharge (int32_t q) |
Set the formal charge of this atom. More... | |
void | SetImplicitCount (int32_t h) |
Set the number of implicit hydrogens. More... | |
void | SetName (std::string n) |
Set the atom name. More... | |
void | SetPartialCharge (double q) |
Set the partial charge of this atom. More... | |
void | SetPosition (double x, double y, double z) |
Set the x, y and z positions. More... | |
void | SetStereochemistry (Stereo s) |
Set the stereochemistry of an atomic center. More... | |
void | SetTag (int32_t i) |
Set the tag of this atom. More... | |
void | SetType (const FFAtom &type) |
Set the FF type of the atom. More... | |
Friends | |
class | cereal::access |
Friendship allows IXAtom to be serialised. More... | |
class | indigox::Molecule |
Friendship allows IXMolecule to create new atoms. More... | |
std::ostream & | operator<< (std::ostream &os, const Atom &atm) |
using AtomAngles = std::vector<Angle> |
Container for storing IXAngle references.
using AtomDihedrals = std::vector<Dihedral> |
Container for storing IXDihedral references.
|
strong |
|
default |
|
default |
int32_t AddImplicitHydrogen | ( | ) |
Add an implicit hydrogen.
const AtomAngles& GetAngles | ( | ) | const |
const AtomBonds& GetBonds | ( | ) | const |
int32_t GetChargeGroupID | ( | ) | const |
const AtomDihedrals& GetDihedrals | ( | ) | const |
int32_t GetFormalCharge | ( | ) | const |
Formal charge on the atom.
int64_t GetID | ( | ) | const |
int32_t GetImplicitCount | ( | ) | const |
Get number of implicit hydrogens.
int64_t GetIndex | ( | ) | const |
Get the index from the molecule.
Calculates the index of the atom in the container of atoms of the molecule it is a part of. If the molecule is dead, the index returned is the tag of the atom.
const Molecule& GetMolecule | ( | ) | const |
Molecule this atom is associated with.
The returned shared_ptr is empty of the atom is not assigned to a valid molecule.
const std::string& GetName | ( | ) | const |
Atom name.
double GetPartialCharge | ( | ) | const |
Partial atomic charge on the atom.
const Eigen::Vector3d& GetPosition | ( | ) | const |
Vector of the atom's position.
int32_t GetResidueID | ( | ) |
std::string GetResidueName | ( | ) |
Stereo GetStereochemistry | ( | ) | const |
Get the stereochemistry of the atom.
int64_t GetTag | ( | ) | const |
Tag of the atom.
This value may be modified without warning. Use with caution. For a constant identifier to the atom, use IXAtom::GetUniqueID.
const FFAtom& GetType | ( | ) | const |
Get the FF type of the atom.
double GetX | ( | ) | const |
Atom x position.
double GetY | ( | ) | const |
Atom y position.
double GetZ | ( | ) | const |
Atom z position.
bool HasType | ( | ) | const |
int64_t NumAngles | ( | ) | const |
Number of valid angles this atom is a part of.
int64_t NumBonds | ( | ) | const |
Number of valid bonds this atom is part of.
int64_t NumDihedrals | ( | ) | const |
Number of valid dihedrals this atom is a part of.
int32_t NumHeavyAtomBonds | ( | ) | const |
int32_t NumHydrogenBonds | ( | ) | const |
|
inline |
|
inline |
bool operator< | ( | const Atom & | atm | ) | const |
|
inline |
bool operator== | ( | const Atom & | atm | ) | const |
bool operator> | ( | const Atom & | atm | ) | const |
|
inline |
int32_t RemoveImplicitHydrogen | ( | ) |
Remove an implicit hydrogen.
If GetImplicitCount() == 0, no hydrogen is removed.
void SetChargeGroupID | ( | int32_t | id | ) |
void SetElement | ( | const Element & | e | ) |
Set the element of this atom.
e | the element to set to. |
void SetElement | ( | std::string | e | ) |
Set the element of this atom.
e | the name or atomic symbol of the element to set. |
void SetElement | ( | int32_t | e | ) |
Set the element of this atom.
e | the atomic number of the element to set. |
void SetFormalCharge | ( | int32_t | q | ) |
Set the formal charge of this atom.
q | the formal charge value to set. |
void SetImplicitCount | ( | int32_t | h | ) |
Set the number of implicit hydrogens.
h | the number of implicit hydrogens to set. |
void SetName | ( | std::string | n | ) |
Set the atom name.
n | name to set. |
void SetPartialCharge | ( | double | q | ) |
Set the partial charge of this atom.
q | the partial charge value to set. |
void SetPosition | ( | double | x, |
double | y, | ||
double | z | ||
) |
Set the x, y and z positions.
x,y,z | position to set. |
void SetStereochemistry | ( | Stereo | s | ) |
Set the stereochemistry of an atomic center.
s | the stereochemistry to set. |
void SetTag | ( | int32_t | i | ) |
Set the tag of this atom.
The tag of an atom should not be considered stable. Use with caution.
i | the tag to set. |
void SetType | ( | const FFAtom & | type | ) |
Set the FF type of the atom.
type | the type to set. |
|
friend |
Friendship allows IXAtom to be serialised.
|
friend |
Friendship allows IXMolecule to create new atoms.
|
friend |