Module: Atomic Molecular Density ()
This module computes the spatial distribution density of atoms on a regular grid. Inputs can be either molecules, trajectories of trajectory bundle objects. Atoms can be filtered according to mmff94 atom types. Using the module makes most sense for TrajectoryBundles containing a set of molecules from which you want to derive some spatial distribution property like pharmacophores. TrajectoryBundles can be created from single molecules with the Molecule Trajectory Bundle module.
Preparing data
The following example demonstrates how to compute pharmacophore densities for hiv protease. We compute the densities from two known ligands but the example can be easily extended to a large number:# fetch molecules from pdb newMolFromPDB 1pro newMolFromPDB 1hvr # use 1pro as reference and align others to it 1hvr alignToProtein 1pro 1hvr applyTransform # restrict to the ligands 1pro sel r/type=A88 1pro restrictToSelection 1hvr sel r/type=XK2 1hvr restrictToSelection # compute bonds orders and add hydrogens 1pro computeBonds 1pro addHydrogns 1hvr computeBonds 1hvr addHydrogns mergeMoleculesThe last command will create a Molecule Trajectory Bundle module. In this object you select TrajectoryBundle and press apply. The molecules are now combined in one bundle which can be used as input for the Atomic Molecular Density module. Parameterizing the MMFF atom types and filtering for certain atom types (like hydrogen acceptors) allows the creation of pharmacophore densities for this type.
Options
First you will need to determine on which grid the density is generated. The 'Bounding Box: Compute' button will generate the smallest possible bounding box surrounding all atoms of the input object. You can show and manually modify the bounding box. By default, the module will generate a density for all atoms. A filter based on mmff94 atom types can be applied by selecting 'Atom Types: MMFF' and using the atom type selector. The input data must, however, first have mmff94 atom types assigned. You can do this with the 'Parameterization: MMFF' button. If the input is a trajectory or a bundle of trajectories which have an observable describing the energy of each time step, you can weigh each time step according to this energy. To do so, select an appropriate 'Energy weighting option' and enter the name of the observable.
Data [required]
Input data which can either be a single molecule, a trajectory or a trajectory-bundle.
Voxel size
Determines the size of a voxel. Adjust the voxel size according to the bounding box size, so that the grid dimensions do not become too large.Lattice Box
Allows you to show the bounding box for manual adjustment.Bounding Box
Allows you to compute the smallest bounding box enclosing all atoms in the data object.
Radius
Options
During the computation, each grid point within the radius of an atom is added to the density. The larger the atom radius the smoother the density will be but also the more blurred. The 'fixed' option will use the radius which is given in the float slider below for every atom. 'VDW' means that the standard vdW radius is used for each atomic number. 'MMFF VDW' means that the vdW radius will be derived from half of the euqilibrium vdW distance between to atoms of this type. In the latter cases, the float slider acts as a factor which scales the radius.Atom Radius
Determines the fixed radius or the scale factor depending on the radius option.
Atom Selection
Types
By default, all atoms will be counted in the computation. By selecting 'MMFF' you can select a subset of atoms by filtering for specific MMFF atom types with the atom type selector.Selector
Shows the atom type selector which allows you to select one or several atom types or classes of atoms types. If the MMFF option is chosen in the atom type options, only atoms matching these types will be considered in the computation.Parameterization
This allows you to asssign MMFF parameters to the input data so that MMFF atom type filtering is possible.Field Normalization
Allows you to normalize the generated density so that the sum of all grid points is 1.BBox Restrict
Allows you to restrict the input data to the current bounding box. The computation will be faster after applying this restriction but this changes the input data object.
Energy Weighting
Energy Weighting
Enable or disable energy weightingMethod
If the input data trajectories contain an observable, this can be used to assign a weight to each timestep. Weight means that the observable value will be used as the weight directly, i.e., the density contribution of this timestep will be multiplied with the value. 'Sum' will divide the contribution by the sum of all observable values. 'Boltzmann-Sum' will multiply the contribution with the boltzmann factor of the value. This makes sense if the observable describes the energy. 'Linear-minmax' scales the contribution linearly so that the timesteps with the minimum observable value are multiplied with one while the timestep with the hightest value is multiplied with 0.Observable
Name of the observable that is used for energy weighting.