Bob Hanson wrote: > Better idea -- this is in Jmol 11.5.30 unless I hear complaints. > > PROPOSED JMOL DEFAULT CHANGE > > ----------------------------------------------------- > set sequenceRangePhysical (default FALSE) > > NOTE: The default FALSE behavior for this setting is a change from > previous Jmol versions because it was argued that the default behavior > is unexpected, nonintuitive, and generally not useful. > > The issue is with PDB/mmCIF files that contain insertion codes or > residue numbers that are out of order and the effect that has on > selecting ranges of residues. > > Setting sequenceRangePhysical TRUE forces "select 1-3" to select > residues physically located in the file between and including residues 1 > and 3 on any chain. In the case that a chain does not contain either > residue 1 or residue 3, no atoms are returned for that chain. This is > Jmol behavior through Jmol 11.5.29. > > Setting sequenceRangePhysical FALSE (proposed default behavior starting > in Jmol 11.5.30) translates "select 1-3" to "select resno >= 1 and resno > <= 3", ignoring physical location in the file, and not requiring that > either residue 1 nor residue 3 exist on any chain. > > In the case where the residue numbers include insertion codes, the > behavior when sequenceRangePhysical is set TRUE is the same as above. So > "select 1^A-3^B" selects for all residues in the file between and > including those two codes. Both must exist on any given chain for which > atoms are returned. > > When sequenceRangePhysical is set FALSE, the behavior is to logically > AND the resno range with the insertion code. The command "select 1^A-3" > is the same as "select 1-3^A" and returns the same as "select resno >=1 > and resno <=3 and *^A". The selection "select 1^A-3^B" does not make > sense in this context and is simply interpreted as "select 1-3^B". >
Maybe I havn't understood the insertion code part correctly, but for me it looks like there will be no range selected in the above example "1-3^A". Suppose the sequence would be "1,2,3,3A". Then the only residue selected would be "3A" because it is the only one that matches all three conditions. Bob, you havn't commented yet on my last proposal (use "<= / >=" notation only if one of the border residues is missing). I still think this is the best solution that was mentioned yet. Of course the physical range selection is the only way to cope reliably with numbering irregularities like insertion codes. So any "<= / >=" based method will fail at least in some cases. And this is also true for the solution of Jmol 11.5.30 (if I understood it correctly). But it has 2 additional disadvantages: 1) some people have to change scripts/sites to revert to a correct selection 2) one has to decide principally which method should be used My proposal lacks both of these disadvantages and still reduces the selection failure rate. Regards, Rolf ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone _______________________________________________ Jmol-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jmol-users

