RDKit
Open-source cheminformatics and machine learning.
UFF/AtomTyper.h
Go to the documentation of this file.
1//
2// Copyright (C) 2004-2006 Rational Discovery LLC
3//
4// @@ All Rights Reserved @@
5// This file is part of the RDKit.
6// The contents are covered by the terms of the BSD license
7// which is included in the file license.txt, found at the root
8// of the RDKit source tree.
9//
10#include <RDGeneral/export.h>
11#ifndef _RD_UFFATOMTYPER_H__
12#define _RD_UFFATOMTYPER_H__
13
14#include <vector>
15#include <string>
17
18namespace ForceFields {
19namespace UFF {
20class AtomicParams;
21}
22} // namespace ForceFields
23namespace RDKit {
24class ROMol;
25class Atom;
26
27namespace UFF {
28typedef std::vector<const ForceFields::UFF::AtomicParams *> AtomicParamVect;
29
30RDKIT_FORCEFIELDHELPERS_EXPORT std::pair<AtomicParamVect, bool> getAtomTypes(
31 const ROMol &mol, const std::string &paramData = "");
33 const ROMol &mol, unsigned int idx1, unsigned int idx2,
34 ForceFields::UFF::UFFBond &uffBondStretchParams);
36 const ROMol &mol, unsigned int idx1, unsigned int idx2, unsigned int idx3,
37 ForceFields::UFF::UFFAngle &uffAngleBendParams);
39 const ROMol &mol, unsigned int idx1, unsigned int idx2, unsigned int idx3,
40 unsigned int idx4, ForceFields::UFF::UFFTor &uffTorsionParams);
42 const ROMol &mol, unsigned int idx1, unsigned int idx2, unsigned int idx3,
43 unsigned int idx4, ForceFields::UFF::UFFInv &uffInversionParams);
45 const ROMol &mol, unsigned int idx1, unsigned int idx2,
46 ForceFields::UFF::UFFVdW &uffVdWParams);
47
48namespace Tools {
49// these functions are primarily exposed so they can be tested.
51 const Atom *atom, std::string &atomKey, bool tolerateChargeMismatch = true);
53} // namespace Tools
54} // namespace UFF
55} // namespace RDKit
56
57#endif
class to store atomic parameters for the Universal Force Field
Definition: UFF/Params.h:73
class to store UFF parameters for angle bending
Definition: UFF/Params.h:47
class to store UFF parameters for bond stretching
Definition: UFF/Params.h:40
class to store UFF parameters for inversions
Definition: UFF/Params.h:60
class to store UFF parameters for torsions
Definition: UFF/Params.h:54
class to store UFF parameters for van der Waals interactions
Definition: UFF/Params.h:66
The class for representing atoms.
Definition: Atom.h:68
#define RDKIT_FORCEFIELDHELPERS_EXPORT
Definition: export.h:185
RDKIT_FORCEFIELDHELPERS_EXPORT std::string getAtomLabel(const Atom *atom)
RDKIT_FORCEFIELDHELPERS_EXPORT void addAtomChargeFlags(const Atom *atom, std::string &atomKey, bool tolerateChargeMismatch=true)
RDKIT_FORCEFIELDHELPERS_EXPORT bool getUFFVdWParams(const ROMol &mol, unsigned int idx1, unsigned int idx2, ForceFields::UFF::UFFVdW &uffVdWParams)
RDKIT_FORCEFIELDHELPERS_EXPORT bool getUFFAngleBendParams(const ROMol &mol, unsigned int idx1, unsigned int idx2, unsigned int idx3, ForceFields::UFF::UFFAngle &uffAngleBendParams)
RDKIT_FORCEFIELDHELPERS_EXPORT std::pair< AtomicParamVect, bool > getAtomTypes(const ROMol &mol, const std::string &paramData="")
RDKIT_FORCEFIELDHELPERS_EXPORT bool getUFFBondStretchParams(const ROMol &mol, unsigned int idx1, unsigned int idx2, ForceFields::UFF::UFFBond &uffBondStretchParams)
RDKIT_FORCEFIELDHELPERS_EXPORT bool getUFFTorsionParams(const ROMol &mol, unsigned int idx1, unsigned int idx2, unsigned int idx3, unsigned int idx4, ForceFields::UFF::UFFTor &uffTorsionParams)
std::vector< const ForceFields::UFF::AtomicParams * > AtomicParamVect
Definition: UFF/AtomTyper.h:28
RDKIT_FORCEFIELDHELPERS_EXPORT bool getUFFInversionParams(const ROMol &mol, unsigned int idx1, unsigned int idx2, unsigned int idx3, unsigned int idx4, ForceFields::UFF::UFFInv &uffInversionParams)
Std stuff.
Definition: Abbreviations.h:18
std::string paramData