# OESzmapEngine¶

class OESzmapEngine


This class represents OESzmapEngine, an object used to perform SZMAP calculations. It stores the context molecule, the configuration options (including the probe molecule), and an OEZap object used to perform the Poisson-Boltzmann electrostatics calculations by OECalcSzmapResults, OECalcSzmapValue, and OEIsClashing. A OESzmapEngine may cache the results of a calculation at a given 3D point to improve efficiency.

## Constructors¶

OESzmapEngine(const OESzmapEngine &rhs)
OESzmapEngine(const OESzmapEngineOptions &opt=OESzmapEngineOptions())
OESzmapEngine(const OEChem::OEMolBase &context,
const OESzmapEngineOptions &opt=OESzmapEngineOptions())


Default and copy constructors, along with constructors that take a context molecule (typically a properly prepared protein, see OESzmapEngine.SetContext) and/or a OESzmapEngineOptions object.

OESzmapEngine sz = new OESzmapEngine(prot, opt);


## operator=¶

OESzmapEngine &operator=(const OESzmapEngine &rhs)


Assignment operator.

## operator bool¶

operator bool() const


Returns true if this object is valid for use in OESzmap calculations. A context molecule—either at construction or through a call to OESzmapEngine.SetContext— must be provided to establish validity.

## CheckAtomTypes¶

bool CheckAtomTypes() const


Returns true if atom types could be applied to the molecular context and probe molecules.

## GetContext¶

const OEChem::OEMolBase &GetContext() const


Returns a reference to the molecular context for OESzmap calculations (see OESzmapEngine.SetContext).

OEMolBase mol2 = sz.GetContext();
Console.WriteLine("context mol: " + mol2.GetTitle());


## GetOptions¶

const OESzmapEngineOptions &GetOptions() const


Returns a reference to the OESzmapEngineOptions used to construct this OESzmapEngine. It can be used to construct another OESzmapEngine object and to access details of the probe and other settings.

## SetContext¶

bool SetContext(const OEChem::OEMolBase &context)


Updates the molecular context used for any OESzmap calculations based on this object (see OESzmapEngine.SetContext and OESzmapEngine.operator bool).

Note

A context molecule is required to have partial charges already associated with each atom. Atomic radii are also necessary, but will be generated if not supplied.

Returns true if the context molecule is acceptable, with 3D coordinates and partial charges.