Get raw alignment: Difference between revisions
Jump to navigation
Jump to search
(Created page with "'''get_raw_alignment''' is an API only function that returns a list of lists of (object,index) tuples containing the raw per-atom alignment relationships. Alignment objects can b...") |
(2.3) |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
'''get_raw_alignment''' is an API only function that returns a list of lists of (object,index) tuples containing the raw per-atom alignment relationships. Alignment objects can be created by passing the "object" argument to [[align]] or [[super]]. | '''get_raw_alignment''' is an API only function that returns a list of lists of (object,index) tuples containing the raw per-atom alignment relationships. Alignment objects can be created by passing the "object" argument to [[align]] or [[super]]. | ||
''Please note: The order of the atom tuples are not necessarily in the order in which the two (or more) selections were passed to [[Align|cmd.align]].'' | ''Please note:'' | ||
* ''The order of the atom tuples are not necessarily in the order in which the two (or more) selections were passed to [[Align|cmd.align]].'' | |||
* ''Will not return atom tuples of hidden objects (see also [[hide_underscore_names]])'' | |||
* ''Reimplemented in PyMOL 2.3, order of returned atom tuples can differ to previous versions'' | |||
== PYMOL API == | == PYMOL API == | ||
Line 10: | Line 13: | ||
<source lang="python"> | <source lang="python"> | ||
# start a python block | |||
python | |||
# get two structures | # get two structures | ||
cmd.fetch('2xwu 2x19', async=0) | cmd.fetch('2xwu 2x19', async=0) | ||
Line 17: | Line 23: | ||
raw_aln = cmd.get_raw_alignment('aln') | raw_aln = cmd.get_raw_alignment('aln') | ||
# print residue pairs | # print residue pairs (atom index) | ||
for idx1, idx2 in raw_aln: | |||
print('%s`%d -> %s`%d' % tuple(idx1 + idx2)) | |||
#end the python block | |||
python end | |||
</source> | |||
To print residue numbers instead of atom indices: | |||
<source lang="python"> | |||
# continued from previous example | |||
python | |||
idx2resi = {} | |||
cmd.iterate('aln', 'idx2resi[model, index] = resi', space={'idx2resi': idx2resi}) | |||
# print residue pairs (residue number) | |||
for idx1, idx2 in raw_aln: | for idx1, idx2 in raw_aln: | ||
print '%s | print('%s -> %s' % (idx2resi[idx1], idx2resi[idx2])) | ||
python end | |||
</source> | </source> | ||
Line 26: | Line 51: | ||
* [[align]] | * [[align]] | ||
* [[find_pairs]] returns a list of lists of (object,index) tuples as well | * [[find_pairs]] returns a list of lists of (object,index) tuples as well | ||
* [[set_raw_alignment]] | |||
[[Category:Scripting]] | [[Category:Scripting]] | ||
[[Category:Structure_Alignment]] | [[Category:Structure_Alignment]] |
Latest revision as of 07:49, 17 December 2018
get_raw_alignment is an API only function that returns a list of lists of (object,index) tuples containing the raw per-atom alignment relationships. Alignment objects can be created by passing the "object" argument to align or super.
Please note:
- The order of the atom tuples are not necessarily in the order in which the two (or more) selections were passed to cmd.align.
- Will not return atom tuples of hidden objects (see also hide_underscore_names)
- Reimplemented in PyMOL 2.3, order of returned atom tuples can differ to previous versions
PYMOL API
cmd.get_raw_alignment(string name)
EXAMPLE
# start a python block
python
# get two structures
cmd.fetch('2xwu 2x19', async=0)
# align and get raw alignment
cmd.align('/2xwu//B//CA', '/2x19//B//CA', cycles=0, transform=0, object='aln')
raw_aln = cmd.get_raw_alignment('aln')
# print residue pairs (atom index)
for idx1, idx2 in raw_aln:
print('%s`%d -> %s`%d' % tuple(idx1 + idx2))
#end the python block
python end
To print residue numbers instead of atom indices:
# continued from previous example
python
idx2resi = {}
cmd.iterate('aln', 'idx2resi[model, index] = resi', space={'idx2resi': idx2resi})
# print residue pairs (residue number)
for idx1, idx2 in raw_aln:
print('%s -> %s' % (idx2resi[idx1], idx2resi[idx2]))
python end
SEE ALSO
- align
- find_pairs returns a list of lists of (object,index) tuples as well
- set_raw_alignment