![]() |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
The List
command lists the selected units and their properties.
If the result is assigned to a variable (list), the format of the return values can be defined with the
Format parameter. The supported keywords in the format string are listed at the
Label command. The data type of the return values is either
a weak string, integer or float, depending on the chosen format.
The ListObj
command only lists active objects that are part of the
scene, not those that have been removed
. Contrary to many other programs, YASARA does not use a second sequential numbering scheme for residues and molecules in addition to the PDB residue number and chain name. Consequently,
ambiguities arise if a residue number or molecule name is present more than once in the soup
. The commands ListRes and ListMol therefore return unique strings 'Atom X' by default,
where X is the number of the first atom in the residue or molecule. These strings can be passed directly to commands
expecting a residue or molecule selection
. If you are sure that residue numbers and molecule names are unique (for example because you
renumbered the residues), you can use
'Format=RESNUM' or 'Format=MOLNAME' to return true residue numbers and molecule names instead.
# Example: Draw spheres around selected residues Clear LoadPDB 1crn # Get a list of all residues closer than 10 A to Pro 36 reslist() = ListRes all with distance<10 from Pro 36 for res in reslist # Get the geometric center and radius of the residue x,y,z = PosRes (res),CoordSys=global r = RadiusRes (res) # Draw a sphere around it sphere = ShowSphere Radius=(r),Color=Red PosObj (sphere),(x),(y),(z) If the Compress parameter is set to 'yes', the returned list will be compressed: instead of individual units,
the list then contains stretches defined by the first unit in a stretch and the length of the stretch. E.g.
4,5,6,7,10,11,12,15,17,18 becomes 4,4,10,3,15,1,17,2. The following example shows how to make use of
'Compress' to list all interacting pairs of beta strands in a protein:
Clear
LoadPDB 5tim
# Make sure that protein residue numbers are unique
DelRes !Protein
RenumberRes all,1
Console Off
# Set minimum strand length required
lenmin=4
# Get all residues in beta strands
reslist() = ListRes SecStr Strand,Format=RESNUM,Compress=Yes
# Get all strands that are at least lenmin long
strands=0
for i=1 to count reslist step 2
if reslist(i+1)>=lenmin
strands=strands+1
strand(strands)='(reslist(i))-(reslist(i)+reslist(i+1)-1)'
# Analyze strand contacts
for i=1 to strands-1
for j=i+1 to strands
contacts = CountAtom CA Res (strand(i)) with distance<5.5 from CA Res (strand(j))
if contacts>=lenmin-1
print 'The strands (i) and (j) containing residues (strand(i)) and (strand(j)) form a sheet'
Example 1:ListRes Lys List all lysine residues. Example 2:ListAtom Obj 1crn List all atoms in object 1crn. Example 3:mylist() = ListAtom CA Assign the numbers of all Calpha atoms to the list 'mylist'.
Example 4:mylist() = ListAtom Backbone,Format=ATOMNAME Assign the names of all backbone atoms to the list 'mylist'.
Example 5:mylist() = ListRes Arg Assign the unique IDs of all arginine residues to 'mylist'.
Example 6:mylist() = ListRes SecStr Sheet,Format=RESNUM,Compress=Yes Create a run-length-encoded (compressed) selection of residue numbers in beta sheets.
Example 7:mylist() = ListRes Glu,Format=ATOMNUM Assign the numbers of the first atoms in all glutamate residues to
'mylist'. Example 8:mylist() = ListRes all with distance<5 from Lys 5,Format=RESName RESNUM Assign the names (in mixed case) and numbers of all residues closer than
5 A from Lys 5 to the list 'mylist'. Example 9:mylist() = ListMol A Assign the unique IDs of all molecules named 'A' to 'mylist'.
Example 10:mylist() = ListObj Protein,Format=OBJNAME Assign the names of all objects containing amino acids to
'mylist'. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||