RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
ForceField/UFF/Utils.h
Go to the documentation of this file.
1//
2// Copyright (C) 2013-2024 Paolo Tosco and other RDKit contributors
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_UFFUTILS_H
12#define RD_UFFUTILS_H
13#include <tuple>
14#include <Geometry/point.h>
15
16namespace ForceFields {
17namespace UFF {
18namespace Utils {
19//! calculates and returns the cosine of the Y angle in an improper torsion
20//! (see UFF paper, equation 19)
22 const RDGeom::Point3D &jPoint,
23 const RDGeom::Point3D &kPoint,
24 const RDGeom::Point3D &lPoint);
25
26//! calculates and returns the UFF force constant for an improper torsion
27/*!
28
29 \param at2AtomicNum atomic number for atom 2
30 \param isCBoundToO boolean flag; true if atom 2 is sp2 carbon bound to sp2
31 oxygen
32
33 \return the force constant
34
35*/
36RDKIT_FORCEFIELD_EXPORT std::tuple<double, double, double, double>
37calcInversionCoefficientsAndForceConstant(int at2AtomicNum, bool isCBoundToO);
38} // namespace Utils
39} // namespace UFF
40} // namespace ForceFields
41
42#endif
#define RDKIT_FORCEFIELD_EXPORT
Definition export.h:185
RDKIT_FORCEFIELD_EXPORT std::tuple< double, double, double, double > calcInversionCoefficientsAndForceConstant(int at2AtomicNum, bool isCBoundToO)
calculates and returns the UFF force constant for an improper torsion
RDKIT_FORCEFIELD_EXPORT double calculateCosY(const RDGeom::Point3D &iPoint, const RDGeom::Point3D &jPoint, const RDGeom::Point3D &kPoint, const RDGeom::Point3D &lPoint)