Group: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(→Usage) |
||
(5 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
The [[Group]] command creates or updates a "group" object. The grouped objects are collected underneath a '''+''' sign in the object tree (see images) in the Pymol Internal Gui. | |||
The [[Group]] command creates or updates a "group" object. The grouped objects are collected underneath a '''+''' sign in the object tree (see images). | |||
[[Group]] is tremendously helpful with multi-state or multi-structure sessions. Wildcards work great, for example: | [[Group]] is tremendously helpful with multi-state or multi-structure sessions. Wildcards work great, for example: | ||
Line 19: | Line 18: | ||
</source> | </source> | ||
== | Actions: | ||
* '''add''' - Add member to group | |||
* '''remove''' - Remove members from group | |||
* '''open''' - Open the group in the panel so objects can be dragged in | |||
* '''close''' - Close the group in the panel so nothing can be dragged in | |||
* '''toggle''' - Switch between open or close based on current state | |||
* '''auto''' - (Deprecated) | |||
* '''ungroup''' - (Deprecated) use the ungroup command instead | |||
* '''empty''' - Move members to top level but do not delete groups | |||
* '''purge''' - Delete members but do not delete groups | |||
* '''excise''' - Delete groups but do not delete members | |||
* '''raise''' - (Incentive 3.1+ only) Move the specified group to the top level, relevant for groups within groups | |||
== Examples == | |||
=== Creating, opening and closing === | |||
<source lang="python"> | <source lang="python"> | ||
group efHand, 1cll 1ggz 1sra | group efHand, 1cll 1ggz 1sra | ||
# allow addition and removal from the group | # allow addition and removal from the group | ||
# If a group is open, objects can be added to or removed from | |||
# it by right-click+drag from the control panel | |||
group efHand, open | group efHand, open | ||
# disallow addition/removal from the group | # disallow addition/removal from the group | ||
group efHand, close | group efHand, close | ||
</source> | |||
=== More advanced usage of groups and naming === | |||
<source lang="python"> | |||
# names with dots are treated special | |||
set group_auto_mode, 2 | |||
# load the example protein | |||
load $TUT/1hpv.pdb, 1hpv.other | |||
# create the new entry called ".protein" in group 1hpv | |||
extract 1hpv.protein, 1hpv.other and polymer | |||
# create ".ligand in the 1hpv group | |||
extract 1hpv.ligand, 1hpv.other and organic | |||
# supports wildcards | |||
show sticks, *.ligand | |||
hide lines, *.protein | |||
show surface, *.protein within 6 of *.ligand | |||
show lines, byres *.protein within 4 of *.ligand | |||
set two_sided_lighting | |||
set transparency, 0.5 | |||
set surface_color, white | |||
# Also, to lexicographically sort the names in the control panel: | |||
order *, yes | |||
</source> | </source> | ||
Line 36: | Line 93: | ||
[[ungroup]] [[order]] [[select]] | [[ungroup]] [[order]] [[select]] | ||
[[Category:Commands]] | [[Category:Commands|Group]] |
Latest revision as of 11:46, 18 March 2025
The Group command creates or updates a "group" object. The grouped objects are collected underneath a + sign in the object tree (see images) in the Pymol Internal Gui.
Group is tremendously helpful with multi-state or multi-structure sessions. Wildcards work great, for example:
# put all of objState into the group "ensemble".
group ensemble, objState*
Usage
group name, members, action
Actions:
- add - Add member to group
- remove - Remove members from group
- open - Open the group in the panel so objects can be dragged in
- close - Close the group in the panel so nothing can be dragged in
- toggle - Switch between open or close based on current state
- auto - (Deprecated)
- ungroup - (Deprecated) use the ungroup command instead
- empty - Move members to top level but do not delete groups
- purge - Delete members but do not delete groups
- excise - Delete groups but do not delete members
- raise - (Incentive 3.1+ only) Move the specified group to the top level, relevant for groups within groups
Examples
Creating, opening and closing
group efHand, 1cll 1ggz 1sra
# allow addition and removal from the group
# If a group is open, objects can be added to or removed from
# it by right-click+drag from the control panel
group efHand, open
# disallow addition/removal from the group
group efHand, close
More advanced usage of groups and naming
# names with dots are treated special
set group_auto_mode, 2
# load the example protein
load $TUT/1hpv.pdb, 1hpv.other
# create the new entry called ".protein" in group 1hpv
extract 1hpv.protein, 1hpv.other and polymer
# create ".ligand in the 1hpv group
extract 1hpv.ligand, 1hpv.other and organic
# supports wildcards
show sticks, *.ligand
hide lines, *.protein
show surface, *.protein within 6 of *.ligand
show lines, byres *.protein within 4 of *.ligand
set two_sided_lighting
set transparency, 0.5
set surface_color, white
# Also, to lexicographically sort the names in the control panel:
order *, yes
Notes
Group objects can usually be used as arguments to commands. It can be processed as a group or as a selection, in which case all the atoms from all objects in the group will be used.