Package nMOLDYN :: Package Analysis :: Module Structure :: Class SpatialDensity |
[hide private]
[frames] | no frames]

# Class SpatialDensity

source code

    Analysis.Analysis --+
                        |
                       SpatialDensity

    Sets up a Spatial Density analysis.

    A Subclass of nMOLDYN.Analysis.Analysis.

    Constructor: SpatialDensity(|parameters| = None)

    Arguments:

        - |parameters| -- a dictionnary of the input parameters, or 'None' to set up the analysis without parameters.
            * trajectory -- a trajectory file name or an instance of MMTK.Trajectory.Trajectory class.
            * timeinfo   -- a string of the form 'first:last:step' where 'first' is an integer specifying the first frame
                            number to consider, 'last' is an integer specifying the last frame number to consider and
                            'step' is an integer specifying the step number between two frames.
            * rvalues    -- a string of the form 'rmin:rmax:dr' where 'rmin' is a float specifying the minimum distance to
                            consider, 'rmax' is a float specifying the maximum distance value to consider and 'dr' is a float
                            specifying the distance increment.
            * group      -- a selection string specifying the groups of atoms that will be used to define the points around which
                            the coordination number will be computed. For each group, there is one point defined as the center of
                            gravity of the group.
            * atomorder  -- a string of the form 'atom1,atom2,atom3' where 'atom1', 'atom2' and 'atom3' are
                            respectively the MMTK atom names of the atoms in the way they should be ordered.
            * target     -- a selection string specifying the groups of atoms that will be used to define the points around which
                            the coordination number will be computed. For each group, there is one point defined as the center of
                            gravity of the group.
            * sd         -- the output NetCDF file name. A CDL version of this file will also be generated with the '.cdl' extension
                            instead of the '.nc' extension.
            * pyroserver -- a string specifying if Pyro will be used and how to run the analysis.

    Running modes:

        - To run the analysis do: a.runAnalysis() where a is the analysis object.
        - To estimate the analysis do: a.estimateAnalysis() where a is the analysis object.
        - To save the analysis to 'file' file name do: a.saveAnalysis(file) where a is the analysis object.

    Comments:

        - This code contains a pyrex function for the distance histogram calculation than enhances significantly its
          performance.

Instance Methods | [hide private]
__init__(self) The constructor. | source code
initialize(self) Initializes the analysis (e.g. | source code
calc(self, frameIndex, trajname) Calculates the contribution for one frame. | source code
combine(self, frameIndex, x) | source code
finalize(self) Finalizes the calculations (e.g. | source code
constructBasisFromAtoms(self, triplet) This method construct a set of three oriented orthonormal axes i, j, k from a triplet of atoms such as (i,j,k) forms a clockwise orthonormal basis. | source code
Inherited from `Analysis.Analysis`: `analysisTime`, `buildJobInfo`, `buildTimeInfo`, `deuterationSelection`, `groupSelection`, `parseInputParameters`, `preLoadTrajectory`, `runAnalysis`, `saveAnalysis`, `setInputParameters`, `subsetSelection`, `updateJobProgress`, `weightingScheme`

Class Variables | [hide private]
| inputParametersNames = `'trajectory', 'timeinfo', 'rvalues', 't`...``
| shortName = `'SD'`
| canBeEstimated = `True`

Method Details | [hide private]

### __init__(self) (Constructor) | source code
The constructor. Insures that the class can not be instanciated directly from here. Parameters: `parameters` - a dictionnary that contains parameters of the selected analysis. `statusBar` - if not None, an instance of nMOLDYN.GUI.Widgets.StatusBar. Will attach a status bar to the selected analysis. Overrides: Analysis.Analysis.__init__

### initialize(self) | source code
Initializes the analysis (e.g. parses and checks input parameters, set some variables ...).

### calc(self, frameIndex, trajname) | source code
Calculates the contribution for one frame. Parameters: `frameIndex` (integer.) - the index of the frame in |self.frameIndexes| array. `trajname` (string) - the name of the trajectory file name.

### finalize(self) | source code
Finalizes the calculations (e.g. averaging the total term, output files creations ...).

### constructBasisFromAtoms(self, triplet) | source code
    This method construct a set of three oriented orthonormal axes i, j, k from a triplet of atoms
    such as (i,j,k) forms a clockwise orthonormal basis.
    If a1, a2 and a3 stand respectively for the three atoms of the triplet then:
        vector1 = (vector(a1,a2)_normalized + vector(a1,a3)_normalized)_normalized
        vector3 = (vector1 ^ vector(a1,a3))_normalized and correclty oriented
        vector2 = (vector3 ^ vector1)_normalized

    @param triplet: the triplet of atoms.
    @type triplet: a list of three MMTK Atoms

    @return: the three axis.
    @rtype: a list of three Scientific Vector

Class Variable Details | [hide private]

  ### inputParametersNames Value:
      'trajectory', 'timeinfo', 'rvalues', 'thetavalues', 'phivalues', 'trip
      let', 'atomorder', 'group', 'sd', 'pyroserver',