schrodinger.application.matsci.swap_fragments_utils module

Utilities for swapping fragments to create a structure built from specified parts of two other structures.

Copyright Schrodinger, LLC. All rights reserved.

exception schrodinger.application.matsci.swap_fragments_utils.SwapFragmentsException

Bases: Exception

schrodinger.application.matsci.swap_fragments_utils.get_idx_groups_str(idx_groups)

Get a string representation of the given index groups.

Parameters

idx_groups (list) – contains lists of indices

Return type

str

Returns

the string

schrodinger.application.matsci.swap_fragments_utils.get_idxs_marked_atoms(st, prop)

Return a list of indices of atoms in the given structure that have the given property defined.

Parameters
Return type

list

Returns

contains indices of atoms

schrodinger.application.matsci.swap_fragments_utils.get_idx_groups(text)

Get index groups from the given string.

Parameters

text (str) – the string

Raises

SwapFragmentsException – if there is an issue

Return type

list

Returns

contains list of indices

schrodinger.application.matsci.swap_fragments_utils.get_keep_idxs(st)

Return a list of indices of keep atoms in the given structure.

Parameters

st (schrodinger.structure.Structure) – the structure

Return type

list

Returns

contains indices of keep atoms

schrodinger.application.matsci.swap_fragments_utils.get_superposition_idxs(st)

Return a list of indices of superposition atoms in the given structure.

Parameters

st (schrodinger.structure.Structure) – the structure

Return type

list

Returns

contains indices of superposition atoms

schrodinger.application.matsci.swap_fragments_utils.get_extracted_and_maps(st, idxs)

Extract and return a structure from the given indices as well as old-to-new and new-to-old atom index maps.

Parameters
Return type

schrodinger.structure.Structure, dict, dict

Returns

the extracted structure and old-to-new and new-to-old index maps

schrodinger.application.matsci.swap_fragments_utils.get_cut_bonds(st, keep_idxs)

Return a list of (keep, replace, order) tuples, where keep is an index that will be kept, replace is an index that will be replaced, and order is the bond order, for bonds involving atoms specified in the given keep indices.

Parameters
Return type

list

Returns

contains (keep, replace, order) tuples

schrodinger.application.matsci.swap_fragments_utils.get_closest_atom(ref_st, ref_idx, nov_cell)

Return the novel atom index closest to the given reference atom index.

Parameters
  • ref_st (schrodinger.structure.Structure) – second structure, called reference

  • ref_idx (int) – the reference index

  • nov_cell (infrastructure.DistanceCell) – distance cell for the novel structure

Return type

int or None

Returns

the novel index if there is one

schrodinger.application.matsci.swap_fragments_utils.get_ref_nov_close_pairs(nov_st, ref_st)

Return a map of reference to novel close atoms.

Parameters
Return type

dict

Returns

a map of reference to novel close atoms

schrodinger.application.matsci.swap_fragments_utils.get_assembled_structure(nov_st, ref_st, nov_superposition_idxs, ref_superposition_idxs, nov_keep_idxs, ref_keep_idxs, title=None, require_identical_bonds=True)

Return an assembled structure from the given structures using superposition followed by extraction.

Parameters
  • nov_st (schrodinger.structure.Structure) – first structure, called novel

  • ref_st (schrodinger.structure.Structure) – second structure, called reference

  • nov_superposition_idxs (list) – novel superposition indices

  • ref_superposition_idxs (list) – reference superposition indices

  • nov_keep_idxs (list) – novel keep indices

  • ref_keep_idxs (list) – reference keep indices

  • title (str) – the title to be given to the assembled structure

  • require_identical_bonds (bool) – whether to require that bonds to be created must exist in both novel and reference structures and be of the same bond order

Raises

SwapFragmentsException – if there is an issue

Return type

schrodinger.structure.Structure

Returns

the assembled structure

schrodinger.application.matsci.swap_fragments_utils.get_idxs_str(idxs, sort=True)

Get a string representation of the given indices.

Parameters
  • idxs (list) – the idxs

  • sort (bool) – whether to sort

Return type

str

Returns

the string

schrodinger.application.matsci.swap_fragments_utils.get_idxs(le)

Get indices from the given QLineEdit.

Parameters

le (QtWidgets.QLineEdit) – the line edit

Return type

list

Returns

the indices