Continuing with fixes headed toward Jmol 14.0.8 release Friday.
Testing appreciated. Same version number here, just a different date.
http:/chemapps.stolaf.edu/jmol/jmol-14.1.8_2014.02.10.zip
___JmolVersion="14.1.8"
new feature: JSmol Info.z, Info.zIndexBase
bug fix: tensor("efg", "value") should return sparce array, not dense for
missing tensors
bug fix: JSmol now allows writing POVRAY, MAYA, IDTF, VRML, etc.
both from Java and from HTML5
code: reworking of export classes
bug fix: label @{math expression...} not working
bug fix: interpretation of x and @x in select commands and {...} phrases
-- Variable substitution has been unintuitive and inconsistent.
For instance:
x = "C or T"
select @x -- works fine
print {@x} -- fails
The problem is the use of @ to reference the variable NAMED BY another
variable within a math expression (print context) but not a select
context.
For instance:
y = 3
x = "y"
print x --> "y"
print @x --> 3
Such referencing is important for math expressions, but the
extension of this to atom expressions is not necessary and
not generally useful.
-- The current situation is as follows:
x = "A or T"
select @x --> all A and T groups
print {@x} --> nothing (because @x is "the contents of the variable
'A or T'")
-- This fix simplifies the situation by not allowing variable-variable
referencing within atom expressions bounded by braces, just like
within implicit atom expression commands (select, display, hide,
delete, etc.).
-- The result is much more consistent. The following do exactly what
you think they would do:
x = "A or T"
select @x
print {@x}
-- The current way of doing this, by defining a temporary atom
expression using the DEFINE (or @) command still works:
x = "A or T"
@y @x
select y same as select @x
-- Note that the difference between "select x" and "select @x"
may be significant:
ala = "cys"
select ala --> selects all alanines
select @ala --> selects all cysteines
code: way more efficient for loop -- loop overhead decreased by > 80%
bug fix: for(i in ...) does not exit when i is assigned a value, as per
documentation
bug fix: for(x in ...) command broken and also quite inefficient.
JmolVersion="14.1.8_dev_2014.02.06"
new feature: set cartoonRibose
-- draws in ribose rings, with facets showing puckering
-- connects via C4'-C5'-O5'-P explicitly
-- shows C3'-O3' for reference.
-- disables cartoonBaseEdges (Leontis-Westhof Edges)
-- disabled by SET cartoonBaseEdges ON
-- suggested by Rick Spinney, Ohio State
new feature: anim frame [a,b,c,d] works with negative numbers to indicate
ranges:
-- anim frame [1, -5, 10, -6] --> [1,2,3,4,5,10,9,8,7,6]
-- read as "1 through 5 and then 10 through 6"
new feature: Tinker file reader (and FoldingXYZ reader upgrade)
-- Can use Tinker:: but this is only required if first line is JUST an
atomCount
-- accommodates older Tinker format with n-1 atoms for atomCount
-- allows for trajectories and desired model number
new feature: (actually 13.1 but undocumented) animation frame [ 51 50 49 48
47 46 45 (etc) 27 1 2 3 4 5 6 7 (etc)....]
new feature: x = compare({atomset1}, {atomset2}, "MAP")
new feature: x = compare({atomset1}, {atomset2}, "MAP", "all")
new feature: x = compare({atomset1}, {atomset2}, "MAP", "best")
new feature: x = compare({atomset1}, {atomset2}, "MAP", "H")
new feature: x = compare({atomset1}, {atomset2}, "MAP", "allH")
new feature: x = compare({atomset1}, {atomset2}, "MAP", "bestH")
-- generates one or more correlations lists based on non-aromatic SMILES
-- optionally includes H atoms
-- optionally generates all possible atom mappings
-- returns int[][] = [ [a1 b1],[a2 b2],[a3 b3],... ]
where an and bn are integer atom indices
or list<int[][]> when "all" option is chosen.
-- the following will generate one atom correlation
map for two structures including hydrogen atoms:
load files "a.mol" "b.mol"
x = compare({1.1} {2.1} "MAP" "H")
(useful for 2D/3D model atom matching)
-- the following compares the model of caffeine from NCI to that from
PubChem:
load $caffeine;load append :caffeine;frame *
select 2.1; label %[atomIndex]
compare {1.1} {2.1} SMILES rotate translate
x = compare({1.1}, {2.1}, "MAP" "bestH")
for (a in x) {a1 = a[1];a2=a[2];select atomindex=a1;label @a2}
new feature: compare {model1} {model2} SMILES
-- no need to give SMILES; Jmol can generate it from {model1}
new feature: x = {*}.find("SMILES", "H")
-- generates SMILES with explicit H atoms
bug fix: substructure() function using SMILES instead of SMARTS, so only
full structures;
bug fix: better error trapping and messages in SMILES-related methods
bug fix: make webexport discovery of path to Jmol.jar and jsmol.zip more
robust.
bug fix: getProperty extractModel not honoring subset
bug fix: set pdbGetHeader TRUE does not capture REMARK3 REMARK290 REMARK350
bug fix: getProperty("JSON",....) should wrap value in {value:...}
bug fix: MO persistent translucency broken in 11.x
bug fix: show MENU write MENU load MENU all broken in 12.2
bug fix: {*}[n] should be empty if nAtoms <=n
bug fix: abinit reader was nonfunctional
bug fix: assign atom into into PDB file loses atom names
bug fix: y = ([3])[1][1] should be [3] not 3
bug fix: break n nonfunctional
bug fix: format() and label() functions limited to 4 arguments; should be
unlimited
bug fix: errors in paths to js code in web export templates.
--
Robert M. Hanson
Larson-Anderson Professor of Chemistry
St. Olaf College
Northfield, MN
http://www.stolaf.edu/people/hansonr
If nature does not answer first what we want,
it is better to take what answer we get.
-- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900
------------------------------------------------------------------------------
Android™ apps run on BlackBerry®10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience. Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
_______________________________________________
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users