new contact map functions

Case number:699969-998342
Opened by:LociOiling
Opened on:Tuesday, August 19, 2014 - 02:53
Last modified:Sunday, October 9, 2016 - 07:15

As proposed for the 2014/8/19 devchat:

Selecting all contacts in the contact map tends to result in "too much information" to be useful. Manually selecting individual contacts is time-consuming and error-prone. (It's easy to accidentally select points that are not in contact.)

A script can find contact points and band them. The bands can then guide manually or scripted folding. For manual folding, however, the bands present problems. It's easy to close a band by accident, and bands take up more space than the "selected contact" lines.

A new contactmap function, contactmap.Select ( segment1, segment2 ) would allow a script to select a contact, similar to clicking a cell on the contact map. The function could return boolean, integer to indicate whether the two segments are in contact (false if no contact) and the heat of the contact.

A complementary function, contactmap.Deselect ( segment1, segment2 ) should be included to undo the select. Similarly, contactmap.DeselectAll () might also be useful.

Just for logical consistency, contactmap.SelectAll ( noContact ) might be included, where noContact is boolean, true indicating that only point not already in contact should be selected, and the default false indicating that all contacts should be selected.

A function contactmap.GetDistance ( segment1, segment2 ) might be provided as convenience, although this information is already available to scripts through other calls.

(Tue, 08/19/2014 - 02:53  |  5 comments)

jeff101's picture
User offline. Last seen 22 min 27 sec ago. Offline
Joined: 04/20/2012
Groups: Go Science

On the Contact Map in Puzzle 1240b is a button called "Band Selected Cells".
I think it would be useful to also have a button called "Select Banded Cells"
that would select each pair of amino acids connected by a band. For each band,
it seems unnecessary to check which atoms in each amino acid are connected by
the band, the band's strength or desired length, or even if the band is

jeff101's picture
User offline. Last seen 22 min 27 sec ago. Offline
Joined: 04/20/2012
Groups: Go Science

I just restarted a Foldit client that had been showing
boxes around all of my selected contacts on the Contact Map.
After the restart, the boxes around my selected contacts
were no longer shown. It is a lot of trouble to reselect
all these contacts by hand. Having a "Select Banded Cells"
button would make restoring the boxes very easy. I could also
use such a button to put boxes around the banded cells in
any shared solution from my teammates, thus showing which
contacts they selected for banding.

Susume's picture
User offline. Last seen 1 day 9 hours ago. Offline
Joined: 10/02/2011

It would be helpful to have a lua function to tell if a cell is selected in the contact map. Then we could manually choose contacts to focus on by selecting them in the contact map, and a script could put more useful bands on them than the default length and strength ones. Banding beta carbons, setting goal length as a percentage of actual length, and setting strength proportional to the contact weight are all helpful and can best be done in a script.

A lua function to select or deselect a cell in the contact map would also be good. Then we could use a script to just select the made contacts, or deselect ones that are currently too far apart to try for, both of which I often do by hand.

Joined: 06/06/2013
Groups: Gargleblasters

I'd also like a way on the contact map to just turn on contacts above a certain weight without banding. would also save a lot of time as could see what would be most important to get close.

Joined: 10/23/2014
Groups: Contenders

It would be nice to have both banding and contact functions based on weight. Very time-consuming selecting desired weights.

contactmap.SelectContactRange(minWeight, maxWeight)
contactmap.DeselectContactRange(minWeight, maxWeight)

contactmap.SelectBandRange(minWeight, maxWeight)
contactmap.DeselectBandRange(minWeight, maxWeight)


Developed by: UW Center for Game Science, UW Institute for Protein Design, Northeastern University, Vanderbilt University Meiler Lab, UC Davis
Supported by: DARPA, NSF, NIH, HHMI, Amazon, Microsoft, Adobe, Boehringer Ingelheim, RosettaCommons