OEFlexProteinLigandOptimizer

class OEFlexProteinLigandOptimizer

This class provides an interface to optimize a ligand in a protein active site, where the protein can be treated a partially flexible. The protein active site can be defined either by using a OEDesignUnit or by simple passing in a protein molecule.

The OEFlexProteinLigandOptimizer class defines the following public methods:

Constructor

OEFlexProteinLigandOptimizer(const OEProteinLigandOptOptions& opts = OEProteinLigandOptOptions())
OEFlexProteinLigandOptimizer(const OEFlexProteinLigandOptimizer &)

Default and copy constructors.

operator=

OEFlexProteinLigandOptimizer &operator=(const OEFlexProteinLigandOptimizer &)

Assignment operator.

Energy

unsigned Energy(OEFF::OEComplexEnergies& res,
                const OEBio::OEDesignUnit& du,
                const unsigned proteinMask,
                const unsigned ligandMask,
                const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& protFlexPred,
                const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& proteinPred = OEChem::OEIsTrueAtom()) const
unsigned Energy(OEFF::OEComplexEnergies& res,
                const OEBio::OEDesignUnit& du,
                const unsigned proteinMask,
                const unsigned ligandMask,
                const OEProteinFlexOptions& flexOpts,
                const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& proteinPred = OEChem::OEIsTrueAtom()) const
unsigned Energy(OEFF::OEComplexEnergies& res,
                const OEChem::OEMolBase& protein,
                const OEChem::OEMolBase& ligand,
                const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& protFlexPred) const
unsigned Energy(OEFF::OEComplexEnergies& res,
                const OEChem::OEMolBase& protein,
                const OEChem::OEMolBase& ligand,
                const OEProteinFlexOptions& flexOpts) const

Calculate the single point energy of the protein ligand complex. Only the flexible portion of the intra-molecular protein energy components are considered by this method. In the first four overloads, the proteinMask define the portion of the OEDesignUnit that should be used as the target protein active site. An optional proteinPred can be also provided along with the mask, to define additional residue components to be part of the target. The methods return a value from the OESzybkiReturnCode namespace reporting the success or failure of the calculation.

Optimize

unsigned Optimize(OESz::OEProteinLigandOptResults& res,
                  OEBio::OEDesignUnit& du,
                  const unsigned proteinMask,
                  const unsigned ligandMask,
                  const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& protFlexPred,
                  const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& proteinPred = OEChem::OEIsTrueAtom()) const
unsigned Optimize(OESz::OEProteinLigandOptResults& res,
                  OEBio::OEDesignUnit& du,
                  const unsigned proteinMask,
                  const unsigned ligandMask,
                  const OEProteinFlexOptions& flexOpts,
                  const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& proteinPred = OEChem::OEIsTrueAtom()) const
unsigned Optimize(OESz::OEProteinLigandOptResults& res,
                  OEChem::OEMolBase& protein,
                  OEChem::OEMolBase& ligand,
                  const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>& protFlexPred) const
unsigned Optimize(OESz::OEProteinLigandOptResults& res,
                  OEChem::OEMolBase& protein,
                  OEChem::OEMolBase& ligand,
                  const OEProteinFlexOptions& flexOpts) const

Optimize the protein ligand complex. Only the flexible portion of the intra-molecular protein energy components are considered by this method. In the first four overloads, the proteinMask define the portion of the OEDesignUnit that should be used as the target protein active site. An optional proteinPred can be also provided along with the mask, to define additional residue components to be part of the target. The methods return a value from the OESzybkiReturnCode namespace reporting the success or failure of the calculation.