schrodinger.application.desmond.energygroup module

Module for calculating and retriving energy components from Desmond’s vrun program.

Copyright Schrodinger, LLC. All rights reserved.

class schrodinger.application.desmond.energygroup.EnergyComponent

Class for storing different energy components.

add(term, val)
elec
vdw
class schrodinger.application.desmond.energygroup.EnergyGroup(groups, trjfile, cfgfile, *args, **kwargs)

Bases: schrodinger.trajectory.analysistool.AnalysisTool

A tool to calculate group-group interaction.

doFrameInit(frame)

Setup groups and launch vrun

getFrameResults()
getLabel()
plot(*args, **kwargs)

A generic matplotlib 2D plot implementation.

processFrame(frame)
class schrodinger.application.desmond.energygroup.EnergyGroupAnalysis(cst, trjfile, orig_cfgfile, groups)

General Energy Group analysis class.

MAX_NGROUPS_SUPPORTED = 255
energy_term_pattern = '(angle|dihedral|far_exclusion|far_terms|nonbonded_elec|nonbonded_vdw|pair_elec|pair_vdw|stretch|Total)'
floating_number_pattern = '([-+]?\\b(?:[0-9]*\\.)?[0-9]+(?:[eE][-+]?[0-9]+)?\\b)'
getEnergyTimeSeries()

return energy values

getGroups()

Return energy groups.

class schrodinger.application.desmond.energygroup.MSEnergyGroup(groups, trjfile, cfgfile, volume=False, pressure_tensor=False, specific_heat=False, mol_weight=None, nmol=None, *args, **kwargs)

Bases: schrodinger.application.desmond.energygroup.EnergyGroup

A tool to calculate material-science related energy analyses

AU_TO_KG_CONST = 1.6605655
doFrameInit(frame)

Setup groups and launch vrun

getLabel()
processFrame(frame)
class schrodinger.application.desmond.energygroup.MSEnergyGroupAnalysis(cst, trjfile, orig_cfgfile, groups, volume=False, pressure_tensor=False, specific_heat=False)

Bases: schrodinger.application.desmond.energygroup.EnergyGroupAnalysis

Material Science energy group analysis module

KCAL_TO_J = 4184.0
MAX_NGROUPS_SUPPORTED = 870
R_GAS_CONSTANT = 8.314472
bulk_pattern = '(time)'
energy_term_pattern = '(far_terms|nonbonded_elec|nonbonded_vdw|Total)'
getEnergyTimeSeries()

return energy values

getPressureTensorTimeSeries()

Return pressure tensor series

getResultsForLastNPercent(energy, function)

Function that calculates the specific heat for the last N percent of the trajectory. :param energy: numpy.array of energies, depending on ensemble :type energy: numpy.array :param function: function that calculates specific heat :type function: ??? :return results: a list of results for every last N percent of

trajectory
Rtype results:float
getSpecificHeat()
getSpecificHeatType()
getVolumeTimeSeries()

Return volume series

pressure_tensor_pattern = '(Pressure_Tensor)'
class schrodinger.application.desmond.energygroup.PairDict

PairDict is a special dictionary that treats pairs with the same element as equals, independent of order.

For a general dictionary, D[(1,2)] and D[(2,1)] are two different elements. They are considered as the same element in PairDict.

clear()
copy()
fromkeys(keys, v=None)
get(key, default=None)
has_key(k) → True if D has a key k, else False
items() → list of D's (key, value) pairs, as 2-tuples
iteritems() → an iterator over the (key, value) items of D
iterkeys() → an iterator over the keys of D
itervalues() → an iterator over the values of D
keys() → list of D's keys
pop(k[, d]) → v, remove specified key and return the corresponding value

If key is not found, d is returned if given, otherwise KeyError is raised

popitem() → (k, v), remove and return some (key, value) pair as a

2-tuple; but raise KeyError if D is empty

setdefault(k[, d]) → D.get(k,d), also set D[k]=d if k not in D
update(other_pair_dict)
values() → list of D's values
schrodinger.application.desmond.energygroup.get_ensemble_type(ark_obj)

extract ensemble type from the original cfg block :param ark_obj: ‘ORIG_CFG’ block as ark object :type ark_obj: sea.Map :return: ensemble type :rtype: str

schrodinger.application.desmond.energygroup.get_orig_cfg(desmond_cfg)

Read in the cfg file and return ‘ORIG_CFG’ block as an ark.map object :param desmond_cfg: cfg filename :type desmond_cfg: str :rtype: sea.Map :return: ‘ORIG_CFG’ ark object

schrodinger.application.desmond.energygroup.get_target_pressure(ark_obj)

Extract target pressure type for NPT from ORIG_CFG block :param ark_obj: ‘ORIG_CFG’ block as ark object :type ark_obj: sea.Map :return: pressure in Atm units :rtype: float

schrodinger.application.desmond.energygroup.get_temperature(ark_obj)

Extract target simulation temperature from the original cfg block Use 300K by default. :param ark_obj: ‘ORIG_CFG’ block as ark object :type ark_obj: sea.Map :return: temperature in Kelvin :rtype: float