OEDesignUnitCharges

Attention

This API is currently available in C++ and Python.

class OEDesignUnitCharges : public OEChargeEngineBase

This charge engine charges each component in the OEDesignUnit. The various components can be charged with different charging engines, and the default behavior is to do exactly that. The default behavior is for the protein engine to use OEAmberFF94Charges for the standard protein residues. It uses OEAM1BCCCharges for nonstandard residues. The nucleic acid component uses the OEMMFF94Charges charges. The ligand and or any other heterogen in the system (e.g cofactors), are charged using OEAM1BCCCharges. The solvent uses OEAmberFF94Charges, but by default uses the SZMAP water model, in which case it assigns the charges to match those described in The Szmap TK Standard Water Model. This is an option that can be turned off. Excipients are by default charged using the OEMMFF94Charges engine. The radii assigned are OERadiiType_BondiVdw, except in cases where AM1 charges have been used, in which case the radii is of the OERadiiType_Zap9 type. Metals in the system (often in cofactors or otherCofactors) are initially charged with the OEFormalToPartialCharges engine, and in the last step of the calculation, the metal charges are spread in the system using the OESpreadMetalCharges as part of the finalization stage. Counter ions are charged with the same metal charge engine, but are not subsequently spread. The fall back engine is the same for all components; in case an engine fails, the method will try to charge a component with the fall back engine, which by default is OEMMFF94Charges.

Note

Currently, there is a hard limit of 100 atoms for molecules being charged with the OEAM1BCCCharges charging engine.

Warning

It is currently not possible to use OEAM1BCCELF10Charges for the ligand, cofactors, or other components. The method requires passing a conformer ensemble of the molecule to charge, which is currently not possible with an OEDesignUnit. If a user tries to use this type of charging engine, it will be downgraded to AM1BCC with a warning. Since the OEAM1BCCELF10Charges is recommended for the molecular dynamics type of simulations, we recommend charging the ligand independently and updating it in the DesignUnit using OEUpdateDesignUnit.

The following methods are publicly inherited from OEChargeEngineBase:

operator!=

GetExpectValidMol

SetExpectValidMol

operator==

GetName

SetRepairRequestedHint

GetRepairRequestedHint

TransferCharge

CheckCharges

GetRequirements

CreateCopy

IsValid

Constructors

OEDesignUnitCharges() -> OEDesignUnitCharges
OEDesignUnitCharges(rhs: OEDesignUnitCharges) -> OEDesignUnitCharges

Default and copy constructors.

ApplyCharges

ApplyCharges(du: OEDesignUnit) -> bool

Returns the boolean whether or not charges are able to be applied to the input OEDesignUnit argument (du).

CreateCopy

CreateCopy() -> OEChargeEngineBase

Creates a copy of the charge engine class. This class does not own the returned memory.

IsValid

IsValid(mol: Union[OEGraphMol,OEMol,OEQMol]) -> bool
IsValid(du: OEDesignUnit) -> bool

Returns the boolean whether or not the input OEMolBase or OEDesignUnit can be assigned partial charges from the charging engine.

SetCoFactorChargeEngine

SetCoFactorChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets the charge engine for the OEDesignUnitComponents_Cofactors molecular component.

SetFallbackChargeEngine

SetFallbackChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets a backup charge engine for any molecular component where the charge engine cannot be applied.

SetFinalizationChargeEngine

SetFinalizationChargeEngine(chargeEngine: OEChargeEngineBase) -> None

SetLigandChargeEngine

SetLigandChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets the charge engine for the OEDesignUnitComponents_Ligand molecular component.

SetMetalChargeEngine

SetMetalChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets the charge engine for both the OEDesignUnitComponents_Metals and OEDesignUnitComponents_CounterIons molecular components.

SetNucleicChargeEngine

SetNucleicChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets the charge engine for the OEDesignUnitComponents_Nucleic molecular component.

SetOtherChargeEngine

SetOtherChargeEngine(chargeEngine: OEChargeEngineBase) -> None

SetProteinChargeEngine

SetProteinChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets the charge engine for the OEDesignUnitComponents_Protein molecular component.

SetProteinNonStandardChargeEngine

SetProteinNonStandardChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets the charge engine for any nonstandard amino acids in the OEDesignUnitComponents_Protein molecular component.

SetSolventChargeEngine

SetSolventChargeEngine(chargeEngine: OEChargeEngineBase) -> None

Sets the charge engine for any solvent molecules in the OEDesignUnitComponents_Solvent molecular component.

TransferCharge

TransferCharge(dstAtom: OEAtomBase, srcAtom: OEAtomBase) -> bool

Returns the boolean whether or not the transfer of charges from the source atom (srcAtom) to the destination atom (dstAtom) was successful.

UseSZMAPWaterModel

UseSZMAPWaterModel(value: bool) -> None

Sets the boolean of whether or not to use the Szmap water model within the context of charging the system (see Introduction for more information about the water model itself).