pestifer.scripters.vmd module¶
- class pestifer.scripters.vmd.VMDScripter(*args, **kwargs)[source]¶
Bases:
TcLScripterThis class extends the TcLScripter class to provide functionality for creating and managing VMD scripts.
- Parameters:
config (Config) – The configuration object containing settings for the script.
- backup_selection(selname, dataholder='data', attributes=['chain', 'x', 'y', 'z', 'resid', 'resname', 'name'])[source]¶
Backup a selection of atoms in VMD to a data holder variable. This method creates a backup of the specified selection by storing its attributes in a data holder variable.
- Parameters:
selname (str) – The name of the selection to be backed up.
dataholder (str, optional) – The name of the variable where the backup data will be stored. Default is
data.attributes (list, optional) – A list of attributes to be included in the backup. Default includes
chain,x,y,z,resid,resname, andname.
- cleanup(cleanup=False)[source]¶
Perform post-execution clean-up by flushing the file collector. If
cleanupis True, it will remove all files collected during the script execution.- Parameters:
cleanup (bool, optional) – If True, the method will remove all files collected during the script execution. Default is False
- load_psf_pdb(*objs, new_molid_varname='mX')[source]¶
Load a PSF and PDB file into VMD. This method takes one or two objects (PSF and PDB files) and loads them into VMD. If only one object is provided, it is assumed to be the basename of both the PSF and PDB files. If two objects are provided, the first is treated as the PSF file and the second as the PDB file.
- Parameters:
objs (tuple) –
A tuple containing either one or two objects:
If one object, it should be the basename of both the PSF and PDB files.
If two objects, the first should be the PSF file and the second should be the PDB file.
new_molid_varname (str, optional) – The variable name to be used for the new molecule ID in VMD. Default is ‘mX’.
- newscript(basename=None, packages=[])[source]¶
Initialize a new VMD script with a specified basename and packages. If no basename is provided, a default script name is used.
- restore_selection(selname, dataholder='data', attributes=['chain', 'x', 'y', 'z', 'resid', 'resname', 'name'])[source]¶
Restore a selection of atoms in VMD from a data holder variable. This method restores the specified selection by retrieving its attributes from the data holder variable.
- Parameters:
selname (str) – The name of the selection to be restored.
dataholder (str, optional) – The name of the variable from which the backup data will be retrieved. Default is
data.attributes (list, optional) – A list of attributes to be restored. Default includes
chain,x,y,z,resid,resname, andname.
- runscript(*args, **options)[source]¶
Run the VMD script using the VMD command line interface. This method constructs a command to execute VMD with the specified script and options.
- set_molecule(mol: Molecule, altcoords=None)[source]¶
Set up a VMD molecule from the given molecule object.
- usescript(scriptbasename, local=False, add_banners=False)[source]¶
Ingest a VMD Tcl script file into the current script. This method reads the specified script file and adds its contents to the current script.
- Parameters:
scriptbasename (str) – The base name of the script file to be ingested (without extension).
local (bool, optional) – If True, the script is searched for in the current directory; otherwise, it is searched for in the Tcl script path.
add_banners (bool, optional) – If True, banners are added to the script indicating the start and end of the ingested script.
- write_align(align: Align)[source]¶
Write VMD commands to align the pipeline system to a reference coordinate file.
Uses
measure fitto compute the least-RMSD homogeneous transformation betweenmobile_selatoms in the pipeline molecule andref_selatoms in the reference molecule, then applies that matrix toapply_toatoms. The reference molecule is deleted after the fit so it leaves no state.
- write_crot(crot: Crot, chainIDmap: dict = {})[source]¶
Write a CROT object to the VMD script. This method generates VMD commands to create a CROT object based on the provided CROT data.
- write_orient(orient: Orient, molid: str = None)[source]¶
Write a VMD Orient object to the script. This method generates the Tcl commands to orient a coordinate set in VMD based on the provided Orient object.
- Parameters:
orient (Orient) – The Orient object containing the orientation data.
- write_orients(orients: OrientList)[source]¶
- write_pdb(basename, molid_varname)[source]¶
Write the current VMD molecule to a PDB file. This method exports the current molecule in VMD to a PDB file with the specified basename.
- write_protein_loop_lines(mol: Molecule, cycles=100, **options)[source]¶
Write Tcl commands to declare loops in the asymmetric unit that are in the
MISSINGstate and have a length greater than or equal to the specified minimum length. This method iterates through the segments of the asymmetric unit and generates Tcl commands to declare the loops.- Parameters:
mol (Molecule) – An instance of the Molecule class that contains the structural information.
cycles (int, optional) – The number of cycles for the loop declaration. Default is 100.
options (dict, optional) –
Additional options for loop declaration. It can include:
min_length: The minimum length of loops to consider. Default is 4.include_c_termini: If True, includes C-terminal loops in the declaration. If False, skips C-terminal loops. Default is False.
- write_rottranslist(rottranslist: RotTransList)[source]¶
- write_transfer_coords(tc: TransferCoords)[source]¶
Write VMD commands to copy coordinates from a donor system onto the pipeline system.
If
tc.pre_alignis true, the entire donor is first rigidly fitted to the pipeline system usingalign_donor_sel/align_mobile_selbefore the coordinate transfer is performed. Both the alignment and transfer selections are checked for congruency before use.
- writescript(force_exit=False)[source]¶
Finalize the VMD script by adding an exit statement and banners. This method checks if an exit statement is already present in the script; if not, it adds one.
- Parameters:
force_exit (bool, optional) – If True, the exit statement is added even if one is already present.