schrodinger.application.desmond.gui module¶
GUI code for the Desmond panels.
Copyright Schrodinger, LLC. All rights reserved.
- schrodinger.application.desmond.gui.get_msj_template_path(template_fname)¶
Return a path to the specified MSJ template in the Desmond data directory.
- Parameters
template_fname (str) – Template filename to get the path to
- Returns
Full path to the template location in the Desmond data dir.
- Return type
str
- schrodinger.application.desmond.gui.update_membrane_relaxation_protocol(stage_str)¶
Update a membrane relaxation protocol based on the current production simulation.
- Parameters
stage_str (str) – Current protocol to be updated
- Returns
Updated stage string with the current production simulation.
- Return type
str
- schrodinger.application.desmond.gui.error_dialog(master, msg)¶
Pops out a dialog showing the error message given by
msg
This function just provides a uniform way for doing the job.
- schrodinger.application.desmond.gui.warning_dialog(master, msg)¶
Pops out a dialog showing the warning message given by
msg
This function just provides a uniform way for doing the job.
- schrodinger.application.desmond.gui.get_model_from_pt_row(row, use_msys=False)¶
Check that a specified PT row contains a valid Desmond system and if so return the system loaded from the row’s cms_file attribute.
- Parameters
row (
schrodinger.project.ProjectRow
) – Row of the Project Table to processuse_msys (bool) – Whether to read CMS using msys loader and return both msys and cms models on successful read
- Returns
The
cms.Cms
ormsys.System
(if use_msys is True) loaded from the PT’s cms_file attribute if possible, None otherwise.- Return type
cms.Cms
or (cms.Cms, msys.System) or None
- schrodinger.application.desmond.gui.process_loaded_model(model)¶
Utility function for processing models getting loaded for various jobs.
Sets full system ID for each atom in the component CTs.
- Parameters
model (
cms.Cms
) – Model to be processed
- schrodinger.application.desmond.gui.get_in_cms_from_cpt(cpt_path, cfg=None)¶
Return the -in.cms file associated with a cpt file.
- Parameters
cpt_path (str) – Full path to the cpt file
cfg (
sea.Map
or None) – Optional config to check. If not specified, the config will be extracted from the cpt.
- Returns
Path to related -in.cms file
- Return type
str
- schrodinger.application.desmond.gui.count_traj_frames(trj_dir)¶
Count the number of frames in the given trajectory directory. Returns 0 if the trajectory was not readable. :param trj_dir: Trajectory path :type: trj_dir: str :return: Number of frames :rtype: int
- schrodinger.application.desmond.gui.is_valid_groupname(groupname)¶
Verify that a given groupname is valid.
- Parameters
groupname (str) – Groupname to validate
- Returns
True if the groupname is valid, False otherwise.
- Return type
bool
- class schrodinger.application.desmond.gui.HorizontalBar(parent=0)¶
Bases:
PyQt6.QtWidgets.QFrame
- __init__(parent=0)¶
- class schrodinger.application.desmond.gui.TempItemDelegate¶
Bases:
PyQt6.QtWidgets.QItemDelegate
Class for allowing the data in the TableModel to be modified. Only allows float-values to be entered into the table.
- __init__()¶
- createEditor(self, parent: QWidget, option: QStyleOptionViewItem, index: QModelIndex) QWidget ¶
- setEditorData(self, editor: QWidget, index: QModelIndex)¶
- setModelData(self, editor: QWidget, model: QAbstractItemModel, index: QModelIndex)¶
- updateEditorGeometry(self, editor: QWidget, option: QStyleOptionViewItem, index: QModelIndex)¶
- class schrodinger.application.desmond.gui.TableModel(row_header)¶
Bases:
PyQt6.QtCore.QAbstractTableModel
Class for storing the window table information.
- __init__(row_header)¶
- setColumns(columns)¶
- addColumn(column)¶
- removeColumn(self, column: int, parent: QModelIndex = QModelIndex()) bool ¶
- clear()¶
- update()¶
- rowCount(parent=<PyQt6.QtCore.QModelIndex object>)¶
Returns number of rows
- columnCount(parent=<PyQt6.QtCore.QModelIndex object>)¶
Returns number of columns
- flags(index)¶
Returns flags for the specified cell. Whether it is a checkbutton or not.
- data(index, role=ItemDataRole.DisplayRole)¶
Given a cell index, returns the data that should be displayed in that cell (text or check button state). Used by the view.
- setData(index, value, role=ItemDataRole.EditRole)¶
Called by the view to modify the model when the user changes the data in the table.
- headerData(section, orientation, role)¶
Returns the string that should be displayed in the specified header cell. Used by the View.
- class schrodinger.application.desmond.gui.PosResDelegate¶
Bases:
PyQt6.QtWidgets.QItemDelegate
Class for allowing the data in the PosResModel to be modified
- __init__()¶
- createEditor(self, parent: QWidget, option: QStyleOptionViewItem, index: QModelIndex) QWidget ¶
- setEditorData(self, editor: QWidget, index: QModelIndex)¶
- setModelData(self, editor: QWidget, model: QAbstractItemModel, index: QModelIndex)¶
- updateEditorGeometry(self, editor: QWidget, option: QStyleOptionViewItem, index: QModelIndex)¶
- class schrodinger.application.desmond.gui.PosResRow(panel)¶
Bases:
schrodinger.application.desmond.gui._BaseAslRow
- __init__(panel)¶
:param guiapp Pass the guiapp instance.
- validate()¶
Returns None if all values of this row are valid; error message otherwise.
- class schrodinger.application.desmond.gui.PosResModel¶
Bases:
PyQt6.QtCore.QAbstractTableModel
Class for storing the window table information.
- warning¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- __init__()¶
- setRows(rows)¶
- clear()¶
- addOneRow(row)¶
- removeOneRow(rownum)¶
- rowCount(parent=<PyQt6.QtCore.QModelIndex object>)¶
Returns number of rows
- columnCount(parent=<PyQt6.QtCore.QModelIndex object>)¶
Returns number of columns
- flags(index)¶
Returns flags for the specified cell. Whether it is a checkbutton or not.
- data(index, role=ItemDataRole.DisplayRole)¶
Given a cell index, returns the data that should be displayed in that cell (text or check button state). Used by the view.
- setData(index, value, role=ItemDataRole.EditRole)¶
Called by the view to modify the model when the user changes the data in the table.
- headerData(section, orientation, role)¶
Returns the string that should be displayed in the specified header cell. Used by the View.
- class schrodinger.application.desmond.gui.IntegrationTab(master, key, ui)¶
Bases:
schrodinger.application.desmond.gui._MdcBase
Frame for the Integration tab of the Mdc Advanced Options dialogs
- __init__(master, key, ui)¶
- respaBondChanged()¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
- updateFromKey(key)¶
- class schrodinger.application.desmond.gui.EnsembleTab(master, key, is_annealing, ui)¶
Bases:
schrodinger.application.desmond.gui._MdcBase
Frame for the Ensemble tab of the Advanced Options dialog.
- STYLE_NAMEMAP = {'Anisotropic': 'anisotropic', 'Constant area': 'constant_area', 'Isotropic': 'isotropic', 'Semi-isotropic': 'semi_isotropic', 'anisotropic': 'Anisotropic', 'constant_area': 'Constant area', 'isotropic': 'Isotropic', 'semi_isotropic': 'Semi-isotropic'}¶
- METHOD_NAMEMAP = {'DPD': 'DPD', 'Langevin': 'Langevin', 'MTK': 'Nose-Hoover chain', 'NH': 'Nose-Hoover chain'}¶
- __init__(master, key, is_annealing, ui)¶
- getBaroMethod()¶
- setBaroMethod(method)¶
- getThermoMethod()¶
- setThermoMethod(method)¶
- baroMethodChanged(index)¶
- thermoMethodChanged(index)¶
- setBaroStyle(style)¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
- updateFromKey(key)¶
- resetEnsClass(ens_class)¶
- class schrodinger.application.desmond.gui.InteractionTab(master, key, ui, command=None)¶
Bases:
schrodinger.application.desmond.gui._MdcBase
Frame for the Interaction frame of the Advanced Options dialog.
- NEAR_METHOD_NAMEMAP = {'Cutoff': 'none', 'Shift': 'shift', 'none': 'Cutoff', 'shift': 'Shift'}¶
- __init__(master, key, ui, command=None)¶
- resetFromModel(model=None)¶
Update the interaction tab UI based on the given model CTs.
- updateModel(model)¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
- updateFromKey(key)¶
- class schrodinger.application.desmond.gui.RestraintsTab(master, key, ui)¶
Bases:
schrodinger.application.desmond.gui._MdcBase
Frame for the Restraints tab of the Advanced Options dialog
- __init__(master, key, ui)¶
- updatePosresButtons(ignored1=None, ignored2=None)¶
- selectPosResAsl()¶
- addPosResRow()¶
- deletePosResRow()¶
- resetPosResTable()¶
- getRestrGroup()¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- resetFromModel(model)¶
Update the Restraints tab UI based on the given model CTs.
- updateModel(model)¶
Updates the given model to the data from the UI
- updateKey(key)¶
- updateFromKey(key)¶
Update the options in the restraints tab to the model.
- reset()¶
Called when the panel is reset.
- class schrodinger.application.desmond.gui.OutputTab(master, key, ui)¶
Bases:
schrodinger.application.desmond.gui._MdcBase
Frame for the Output tab of the Advanced Options dialog
- __init__(master, key, ui)¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
- updateFromKey(key)¶
- setASL()¶
- class schrodinger.application.desmond.gui.RandVelFrame(master, key, ui, root_master)¶
Bases:
schrodinger.application.desmond.gui._MdcBase
Frame for the “Randomize velocities” group of the Misc tab of Advanced dialog.
- __init__(master, key, ui, root_master)¶
- enableCustomSeed()¶
Enables or disables custom seed line edit based on the radio buttons.
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
- updateFromKey(key)¶
- class schrodinger.application.desmond.gui.AtomGroupDelegate¶
Bases:
PyQt6.QtWidgets.QItemDelegate
Class for allowing the data in the AtomGroupModel to be modified.
- __init__()¶
- createEditor(self, parent: QWidget, option: QStyleOptionViewItem, index: QModelIndex) QWidget ¶
- setEditorData(self, editor: QWidget, index: QModelIndex)¶
- setModelData(self, editor: QWidget, model: QAbstractItemModel, index: QModelIndex)¶
- updateEditorGeometry(editor, option, index)¶
- class schrodinger.application.desmond.gui.AtomGroupRow(panel)¶
Bases:
schrodinger.application.desmond.gui._BaseAslRow
- __init__(panel)¶
:param guiapp Pass the guiapp instance.
- validate()¶
Returns None if all values of this row are valid; error message otherwise.
- class schrodinger.application.desmond.gui.AtomGroupModel¶
Bases:
PyQt6.QtCore.QAbstractTableModel
Class for storing the window table information.
- warning¶
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- __init__()¶
- setRows(rows)¶
- clear()¶
- addOneRow(row)¶
- removeOneRow(rownum)¶
- rowCount(parent=<PyQt6.QtCore.QModelIndex object>)¶
Returns number of rows
- columnCount(parent=<PyQt6.QtCore.QModelIndex object>)¶
Returns number of columns
- flags(index)¶
Returns flags for the specified cell. Whether it is a checkbutton or not.
- data(index, role=ItemDataRole.DisplayRole)¶
Given a cell index, returns the data that should be displayed in that cell (text or check button state). Used by the view.
- setData(index, value, role=ItemDataRole.EditRole)¶
Called by the view to modify the model when the user changes the data in the table.
- headerData(section, orientation, role)¶
Returns the string that should be displayed in the specified header cell. Used by the View.
- class schrodinger.application.desmond.gui.AtomGroupFrame(master, key, ui)¶
Bases:
object
Frame for the “Atom group” box of the Misc tab of the Advanced Options dialog.
- __init__(master, key, ui)¶
- updateAtomGroupButtons(ignored1=None, ignored2=None)¶
- selectAtomGroupAsl()¶
- addAtomGroupRow()¶
- deleteAtomGroupRow()¶
- resetAtomGroupTable()¶
- getAtomGroups()¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- resetFromModel(model)¶
Update the Atom group UI based on the given model CTs.
- updateKey(key)¶
- updateFromKey(key)¶
- class schrodinger.application.desmond.gui.MdcMiscTab(master, key, ui, include_randvel=True)¶
Bases:
schrodinger.application.desmond.gui._MdcBase
Frame for the Misc tab of Mdc Advanced Options dialogs.
- __init__(master, key, ui, include_randvel=True)¶
- resetFromModel(model)¶
Expands and reset the atom group table if the given ‘model’ is a ‘cms.Cms’ object.
Given a ‘model’( which is a ‘cms.Cms’ object), resets the atom group table.
- updateModel(model)¶
Updates the given model to the data from the UI
- class schrodinger.application.desmond.gui.MinAdvancedDialog(master, key, is_annealing, is_replica_exchange, buttons, title)¶
Bases:
schrodinger.application.desmond.gui._BaseAdvancedDialog
Advanced Minimization options dialog for Desmond panels
- __init__(master, key, is_annealing, is_replica_exchange, buttons, title)¶
- class schrodinger.application.desmond.gui.MdcAdvancedDialog(master, key, is_annealing, is_replica_exchange, buttons, title)¶
Bases:
schrodinger.application.desmond.gui._BaseAdvancedDialog
Advanced Options dialog for Mdc Desmond panels
- __init__(master, key, is_annealing, is_replica_exchange, buttons, title)¶
- class schrodinger.application.desmond.gui.MinMiscTab(master, key, ui)¶
Bases:
schrodinger.application.desmond.gui.MdcMiscTab
Frame for the Misc Tab of Advanced Options dialog of Minimization GUI.
- __init__(master, key, ui)¶
- class schrodinger.application.desmond.gui.InputGroup(master, model_changed_callback, allow_checkpoint_files=True, check_infinite=False, reset_parent_on_load=True, cg_aware=False)¶
Bases:
object
Group Frame for showing the widgets for loading the system model.
Used by the
GuiApp
class for all panels.
- __init__(master, model_changed_callback, allow_checkpoint_files=True, check_infinite=False, reset_parent_on_load=True, cg_aware=False)¶
See class docstring. :param master: The root or master application :type master:
af2.JobApp
object.- Parameters
check_infinite (bool) – If a checkbox for infinite systems should be included and if the system should be checked for infinite bonding when loaded
reset_parent_on_load (bool) – Whether or not the InputGroup should call it’s parent widget’s setDefaults() function when loading a new model system.
cg_aware (bool) – Whether or not the InputGroup should check if the model is coarse-grained (and what type) or not
- isInfiniteModel()¶
Is the current model marked as an infinitely bonded model?
- Return type
bool
- Returns
Whether the model is marked as infinitely bonded
- browseSystemFile(fname)¶
- reset()¶
Resets the input frame to defaults
- class schrodinger.application.desmond.gui.SimOptionsFrame(master, key, app)¶
Bases:
object
Responsible for drawing the simulation options widgets, including simulation time, recording intervals and the number of frames.
- LE_WIDTH = 80¶
- __init__(master, key, app)¶
See class docstring. :param master: The root or master application :type master:
af2.JobApp
object.
- setup()¶
Sets up the panel with SLineEdit widgets
- onTrajIntervalChanged()¶
Called when trajectory interval changes.
- onNumOfFramesChanged(num_frames_str)¶
Called when the number of frames changes.
- Parameters
num_frames_str (str) – Value of the number of frames field.
- setEnabledExceptSimulationTime(enable)¶
- onSimTimeChanged()¶
Called when simulation time changes.
- setGuiState(state)¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
Update the key based on the GUI settings
- updateFromKey(key)¶
Updates widgets based on key.
- class schrodinger.application.desmond.gui.EnsembleClassFrame(master, key, ens_callback, is_annealing, is_replica_exchange, app)¶
Bases:
object
Frame that includes the Ensemble class pull-down menu and the entry fields correspondint to it.
- TOOLTIP_TEXT = {'NPAT': 'Constant number of atoms, constant area, constant temperature', 'NPT': 'Constant number of atoms, constant pressure, constant temperature', 'NPγT': 'Constant number of atoms, constant surface tension, constant temperature', 'NVE': 'Constant number of atoms, constant volume, constant energy', 'NVT': 'Constant number of atoms, constant volume, constant temperature'}¶
- __init__(master, key, ens_callback, is_annealing, is_replica_exchange, app)¶
See class docstring.
- ensClassChanged(ens_class, should_callback=True)¶
- updateEnsClassFromKey(key)¶
- updateTempFromKey(key)¶
Updates the value of temperature to the first entry of key.temperature. Rest of the temperature entries will be ignored.
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
- updateFromKey(key)¶
- model_changed_callback(model)¶
- class schrodinger.application.desmond.gui.RelaxFrame(master, key, app)¶
Bases:
object
Frame that includes the “Relax model…” check box and the relaxation protocol entry field.
- __init__(master, key, app)¶
See class docstring
- model_changed_callback(model)¶
- shouldRelax()¶
- getProtFilename()¶
Returns the name of the user-specified protocol file or None if user did not specifies any file.
- toggleRelaxModel(ignored=None)¶
- changeProtFile(fname)¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
Update the key based on the GUI settings
- updateFromKey(key)¶
- class schrodinger.application.desmond.gui.AdvOptionsFrame(master, key, win, mdc_callback, adv_dialog_class, is_annealing, is_replica_exchange, app, dialog_master=None)¶
Bases:
PyQt6.QtCore.QObject
Frame for the “Advanced Options” button.
- MDC_DEFAULT_HEIGHT = 350¶
- MDC_DEFAULT_WIDTH = 480¶
- __init__(master, key, win, mdc_callback, adv_dialog_class, is_annealing, is_replica_exchange, app, dialog_master=None)¶
See class docstring.
- Parameters
dialog_master (QWidget) – The widget that will be the master widget of the Advanced Options dialog. If not provided, the app argument will be used.
- updateDialogKeys()¶
Update the keys of the dialog from the options.
- openAdvancedDialog()¶
- model_changed_callback(model)¶
- closeDialog()¶
Close the advanced options dialog.
- hideDialog()¶
- okPressed()¶
Called when the “OK” button of the advanced dialog is pressed. Closes the dialog only if “Apply” operation was successful.
- applySettings()¶
Called when the “Apply” button of the advanced dialog is pressed. Returns 0 on success, 1 if any of the widgets had invalid values.
- cancelPressed()¶
Called when the “Cancel” button of the advanced dialog is pressed.
- helpPressed()¶
- checkValidity()¶
Checks if all widgets have valid values. If a widget with invalid value was encountered, then returns string that describes the problem. Returns None if there are no issues.
- updateKey(key)¶
- updateFromKey(key)¶
- class schrodinger.application.desmond.gui.MdGroup(master, key, win, is_annealing=False, is_replica_exchange=False, dialog_master=None)¶
Bases:
schrodinger.application.desmond.gui._BaseGroup
Molecular Dynamics group
- __init__(master, key, win, is_annealing=False, is_replica_exchange=False, dialog_master=None)¶
- Parameters
dialog_master (QWidget) – The widget that will be the master widget of the Advanced Options dialog. If not provided, the master argument will be used.
- setEnabledExceptSimulationTime(enable)¶
Ev:111016 Enable/disable this group. Does NOT disable the simulation time entry field.
- class schrodinger.application.desmond.gui.DesmondBasicConfigDialog(*args, **kwargs)¶
Bases:
schrodinger.ui.qt.config_dialog.ConfigDialog
This is identical to Appframework.ConfigDialog except adds platform check for localhost jobs
- __init__(*args, **kwargs)¶
Adds a validate_platforms property that indicates whether the platform should be validated if it is localhost
- enablePlatformValidation(state)¶
Enable/disable platform validation of localhost jobs
- Parameters
state (bool) – Whether to use platform validation or not
- validate()¶
Performs localhost validate if requested and then calls the parent class validation method
- Return type
bool
- Returns
Whether the dialog settings validate properly or not
- class schrodinger.application.desmond.gui.GuiApp(key, validator, tag_spec, sim_class, is_replica_exchange=False, **kwargs)¶
Bases:
schrodinger.ui.qt.appframework2.af2.JobApp
Base class of several Desmond panel GUI’s (see its subclasses below).
- __init__(key, validator, tag_spec, sim_class, is_replica_exchange=False, **kwargs)¶
- Parameters
stop_before (int) – Exit the constructor before specified step.
parent (QWidget) – Parent widget, if any.
in_knime (bool) – Whether we are currently running under KNIME - a mode in which input selector is hidden, optionally a custom Workspace Structure is specified, and buttom bar has OK & Cancel buttons.
workspace_st_file (bool) – Structure to be returned by getWorkspaceStructure() when in_knime is True.
- setup()¶
- layOut()¶
See
af2.JobApp
documentation for method documentation.
- getConfigDialog()¶
- enableSimulationGroupBox(state)¶
Set the simulation group box enabled state
- Parameters
state (bool) – True if the groupbox should be enabled, False if not
- model_changed_callback(model)¶
The GUI is designed to have some intelligence that can adapt its own look based on the imported model system. So if the model system is changed, we need to inform some other parts of the GUI.
The event that the model system is changed will be initially triggered from the
InputGroup
(see this class above), then it will go to here (i.e.,GuiApp
), and from here the signal will be sent forth to all interested parts of the GUI.- Parameters
model – A
cms.Cms
object, containing all information about the model system. If it is none, then the model is a checkpoint file.
- updateFromKey(key)¶
Updates the look of the GUI with
key
- verifySettings()¶
Called by AppFramework to verify that all UI elements have valid states. Returns True if so. Returns False and the error message if any issues are found.
- startCommand(really_start=True)¶
Writes the job input files and assembles the command to execute.
- Parameters
really_start (bol) – Whether to start the job after writing the input files.
- getNonMembraneRelaxationProtocol()¶
- Returns
A template file path for a non-membrane relaxation protocol
- Return type
str
- setUpMembraneRelaxation()¶
Set up the system for membrane relaxation and return a path to the membrane relaxation msj template.
- Returns
Path to membrane relaxation msj template.
- Return type
str
- getRelaxationStageStringFromTemplate(pfile, cfg_fname)¶
Load a template relaxation protocol.
- Parameters
pfile (str) – Template protocol file path
cfg_fname (str) – Config filename to include in the protocol
- Returns
A relaxation stage protocol string loaded from the specified template.
- Return type
str
- getNoRelaxationProtocol(cfg_fname)¶
Get msj string when no relaxation protocol will be run.
- Parameters
cfg_fname (str) – Config filename to be included in the protocol
- Returns
No-relaxation protocol
- Return type
str
- readActionSelected()¶
Called when the “Read” action is selected by the user. It’s the responsibility of individual panels to hook this method to the “Read” menu action. See Ev:109801
- writeCommand()¶
- readCommand(fname)¶
- isKeyConsistentWithPanel(key)¶
- reset()¶
- setDefaults()¶
Resets the parameters to their default values.
- resetModel()¶
- onProjectClosed()¶
When project is closed, clear the model and set the panel to default state.
- closeEvent(event)¶
Hide panel, if in Maestro. Otherwise close it.
- class schrodinger.application.desmond.gui.DesmondGuiConfigDialog(parent, title='', jobname='', checkcommand=None, multi_gpgpu_allowed=True, no_cpu=True, **kw)¶
Bases:
schrodinger.ui.qt.config_dialog.ConfigDialog
This Config Dialog allows toggling between CPU and GPU hosts.
- __init__(parent, title='', jobname='', checkcommand=None, multi_gpgpu_allowed=True, no_cpu=True, **kw)¶
See class docstring. Raises an Exception if the disposition specified as the default is not recognized.
If pre_close_command is specified, it will be run when the user presses the Start button. The dialog is only closed if that function returns 0.
- setUpButtonBox(can_start=True)¶
Set up the dialog’s button box and add ‘Write’ button.
- onWriteRequested()¶
Slot for Write button.
- validateNumProcs(silent=False)¶
See ConfigDialog.validateNumProcs docstring.
- validate()¶
Checks the panel to make sure settings are valid. Return False if any validation test fails, otherwise return True.
- getSettings(extra_kws=None)¶
Return dialog state by saving the state of the checkbox and then calling the base class
- applySettings(settings)¶
See parent class docstring
- setupHostLayout()¶
Setup the host layout, including hostlist/table and numbers of cpus (including cpus3).
- Returns
Whether the dialog should add a start button.
- Return type
bool
- getHosts(_1=True, _2=False)¶
Get the hosts based on current CPU/GPU setting.
- Returns
List of current hosts
- Return type
config_dialog.Host
- onProcUnitComboIndexChanged(use_host=None)¶
Update the available hosts based on the current processor unit type. Will also hide/show widgets based on whether GPU is selected but no GPU hosts are available or not.
- Parameters
use_host (str) – Host to be set in the host combo
- class schrodinger.application.desmond.gui.SingleGpuDesmondGuiConfigDialog(*args, **kwargs)¶
Bases:
schrodinger.application.desmond.gui.DesmondGuiConfigDialog
- __init__(*args, **kwargs)¶
See class docstring. Raises an Exception if the disposition specified as the default is not recognized.
If pre_close_command is specified, it will be run when the user presses the Start button. The dialog is only closed if that function returns 0.
- class schrodinger.application.desmond.gui.DesmondRestGuiConfigDialog(parent, title='', jobname='', checkcommand=None, **kw)¶
Bases:
schrodinger.application.desmond.gui.DesmondGuiConfigDialog
- __init__(parent, title='', jobname='', checkcommand=None, **kw)¶
See class docstring. Raises an Exception if the disposition specified as the default is not recognized.
If pre_close_command is specified, it will be run when the user presses the Start button. The dialog is only closed if that function returns 0.