Jmol Changelog

What's new in Jmol 14.31.52

Aug 18, 2021
  • Bug fix: JavaScript does not return to correct scrpt level after DELAY

New in Jmol 14.31.51 (Aug 13, 2021)

  • New feature: ISOSURFACE DENSITY option
  • Checks for cryo-EM data from EBI/EMDB and, if that exists, uses it; otherwise uses x-ray diffraction data
  • Bug fix: problems with ISOSURFACE in 14.31.50
  • Bug fix: EM isosurface not saved in state.

New in Jmol 14.31.50 (Aug 10, 2021)

  • Bug fix: JSpecView upgrade for misc. JDXReader issues
  • Bug fix: Jmol file dropper not asking to resize (broken in 15.1.46/14.31.46)
  • Bug fix: Jmol not reading EBI cryo-EM files from density server.
  • Bug fix: Jmol not using EBI submap feature of density server for full-structure volumes
  • New feature: ISOSURFACE *.../full:
  • Returns the FULL EBI volume data, not just one localized around a structure

New in Jmol 14.31.49 (Aug 6, 2021)

  • Bug fix: JSpecView not using ##FIRSTX for diff-dup x values after first.
  • Bug fix: JSpecView version not showing
  • Bug fix: Jmol not reading EBI cryo-EM files from density server.

New in Jmol 14.31.48 (Jul 28, 2021)

  • Bug fix: JavaScript isosurface asynchronous file loader failing to finalize, causing refresh in later-called function to not return.
  • Bug fix: Filenames and directories with unicode accents not saved in ZIP, PNGJ, JMOL files.
  • Bug fix: Locally loaded JavaScript files not save in ZIP, PNGJ, JMOL

New in Jmol 14.31.47 (Jul 25, 2021)

  • New feature: isosurface "*emdb/nnnn":
  • Retrieves the cryo-EM surface EMD-nnnn
  • Uses http://ftp.ebi.ac.uk/pub/databases/emdb/structures/EMD-%file/map/emd_%file.map.gz (https did not work in Java due to certificate issues)
  • New feature: isosurface "*emdb/=xxxx":
  • Looks up the EMDB id for the cryo-EM surface associated with pdb id xxxx
  • First uses https://www.ebi.ac.uk/emdb/api/search/fitted_pdbs:%file?fl=emdb_id,map_contour_level_value&wt=csv
  • Then uses http://ftp.ebi.ac.uk/pub/databases/emdb/structures/EMD-%file/map/emd_%file.map.gz
  • New feature: isosurface "*emdb" (or "*emdb/" or "*emdb/="):
  • Uses the current model's PDB ID with *emdb/=xxxx"

New in Jmol 14.31.46 (Jul 25, 2021)

  • Bug fix: Drag-drop of PNGJ can fail due to SCRIPT command not accepting "spt::" type identifier

New in Jmol 14.31.45 (Jul 22, 2021)

  • Bug fix: model kit changes for atomName and element not saved in state (since Jmol 14.28?)

New in Jmol 14.31.44 (Jul 22, 2021)

  • Bug fix: Incorrect implementation of double value from string in JCAMP-DX format
  • Bug fix: V3000 reader does not recognize 2D mol file setting
  • Bug fix: 2D->3D can invert stereocenters having C-H bond.

New in Jmol 14.31.43 (Jul 22, 2021)

  • new feature: hbondHDistanceMaximum maximum O--H distance in hydrogen bonds
  • only in the case of actual hydrogen bonds, not pseudo-hydrogen bonds
  • hbondsDistanceMaximum now aliased to hbondNODistanceMaximum for clarity

New in Jmol 14.31.42 (Jul 22, 2021)

  • Bug fix: GaussianReader fix for reading frequencies giving NullPointerException
  • Bug fix: mmCIF reader was requiring optional auth_XXXX fields
  • Bug fix: jspecview reading pimentoGCMS2.dx empty $$MODEL= causes NullPointerException
  • Bug fix: better MMFF94 and UFF for 2D -> 3D
  • New feature: adds MMFF2D and UFF2D forcefields that involve stronger fields for no-hydrogen (UFF2D) and added-hydrogen (MMFF2D) minimization
  • New feature: adds set testflag2 TRUE to stop FILTER "2D" after first stage, before UFF2D+MMFF2D minimization

New in Jmol 14.31.41 (Jul 22, 2021)

  • bug fix: (JSmol only - not SwingJS) modelkit bond assignment fails due to old transpiler bug
  • -- was failing to convert char to int and back properly

New in Jmol 14.31.40 (Jul 22, 2021)

  • bug fix: eval("JSON",json) fix to allow [...] or {...}
  • bug fix: ellipsoid ISO saved in state with wrong size
  • new feature: set checkCIR
  • -- retrieves the NCI/CADD Chemical Identifier Resolver URL
  • -- currently contacts chemapps.stolaf.edu/resolver
  • -- places return JSON information into _.cirInfo
  • -- reports _.cirInfo.status as "OK" if successful or "unavailable" if not
  • new feature: Jmol's first load '$' or https://cactus.nci.nih/gov call does checkCIR
  • new feature: Loading cactus.nic.nih/gov/chemical/structure file will resolve that name

New in Jmol 14.31.39 (May 16, 2021)

  • Bug fix: GAMESS reader broken

New in Jmol 14.31.38 (May 9, 2021)

  • Bug fix: TopoCIF 0.9.2 upgrade for _topol_node and _topol_net
  • Bug fix: JSpecView SVG export missing in menu and broken

New in Jmol 14.31.37 (May 9, 2021)

  • Bug fix: removing default dependency for XmlUtils and PO

New in Jmol 14.31.36 (Apr 6, 2021)

  • Bug fix: capture broken in 14.31.34

New in Jmol 14.31.35 (Mar 31, 2021)

  • adds GamessReader MOPAC parameters from F90 files provided by Jimmy Stewart for MO reading
  • -- note that GAMESS uses only s and p orbitals for the MOPAC option
  • adds GamessReader MOPAC option
  • -- forces using MOPAC slaters rather than gaussian contraction when g.c. is present
  • adds MoldenReader [STO] ANGS and MOPAC options (zeta in 1/Angs; apply MOPAC scaling)

New in Jmol 14.31.12 (Oct 26, 2020)

  • bug fix: minimization constraint broken in 14.29.45

New in Jmol 14.31.10 (Oct 12, 2020)

  • Bug fix: dots -1.0 does not imply ONLY

New in Jmol 14.31.9 (Oct 5, 2020)

  • Bug fix: set pdbaddhydrogens does not work with PDB files that have some H atoms (but no multiple bonds)
  • Bug fix: MOVETO quaternion jumps (seconds=0) if crude check for change fails

New in Jmol 14.31.8 (Sep 28, 2020)

  • New feature: point(["{1,2,3}","{2,3,4}",....])
  • Bug fix: large integer number != operator failure
  • Bug fix: fuxyz vs. fxyz and uxyz
  • Distribution: JSpecview not built in 14.31.5

New in Jmol 14.31.7 (Sep 23, 2020)

  • Bug fix: PSE file saved to PNGJ may not fully reload (missing surface, for example)
  • Bug fix: atom.occupancy of 0.01 saved as 0.0

New in Jmol 14.31.6 (Sep 17, 2020)

  • Bug fix: msCIF reader not reading ICDD Fourier modulated file.

New in Jmol 14.31.5 (Sep 17, 2020)

  • Bug fix: https for NMRDB
  • Bug fix: JSpecview applies ##SHIFTREFERENCE as HZ for data in PPM
  • Bug fix: JSpecview must ignore ##SHIFTREFERENCE for JEOL, at least for $$ JEOL NMR v1.10

New in Jmol 14.31.4 (Aug 24, 2020)

  • new feature:
  • isosurface S1 VAL [points or atoms] SELECT....
  • calculates isosurface values for a set of points or atoms
  • values are created during surface constructions, not after
  • for solvent and molecular surfaces, negative value is "inside"; positive is "outside"
  • surfaces that are not calculated will give 0 for all values
  • new feature:
  • $s1.getProperty("values");
  • retrieves the array of values produced by isosurface s1 VAL
  • example:
  • load $caffeine
  • isosurface s1 value {*} select {!_H} only vdw 50% translucent
  • {*}.property_d = $s1.getproperty("value")
  • color property_d
  • bug fix: NWChem reader does not ignore file-save data block properly
  • bug fix: get property fileInfo initially or after ZAP throws exception
  • bug fix: isosurface map colorscheme "rwb" fails, whereas color isosurface "rwb" works

New in Jmol 14.31.3 (Aug 10, 2020)

  • Bug fix: Jmol app does not allow width smaller than about 350 pixels

New in Jmol 14.31.2 (Jul 9, 2020)

  • Bug fix: draw pointgroup C2 3 draws all C2 axes, not just the third

New in Jmol 14.31.1 (Jul 6, 2020)

  • Bug fix: SYNC/sockets should not automatically subscribe to CLICK (which includes drag events)
  • Bug fix: "WRITE IMAGE width height" (with no file name) causes array out of bounds exception
  • Bug fix: SYNC command sending not working with raw JSON or Jmol associative arrays

New in Jmol 14.31 (May 28, 2020)

  • new feature: Switch to Java 7, allowing for string-based switch and Files.readAllBytes().
  • bug fix: ellipsoids "csa" scale 0.5 on does not scale
  • bug fix: implicit refresh required after translateSelected
  • new feature: Gaussian reader reads NMR shielding tensors as "csa"
  • new feature: Gaussian reader reads NMR_J_coupling data
  • new feature: atom properties can be float[][] arrays
  • -- for atom-atom values
  • new feature: MEASUREMENT property_xxx
  • -- for 2D float[][] properties
  • new feature: MEASUREMENT VALUE x.x
  • -- sets a fixed value for a standard measurement
  • new feature: measurement unit "+xxx" means abs(value)
  • -- specifically, "+hz" useful for calculation data
  • new feature: measurement "+hz" units automatically use property_J values
  • new feature: MEASUREMENT "" where is valid measurement unit
  • new feature: measure() allows "property_xxx"
  • new feature: measure() allows ""

New in Jmol 14.30.2 (Jan 31, 2020)

  • Bug fix: CrystalReader fails to read models in CRYSTAL17 double-walled nanotube file

New in Jmol 14.30.1 (Dec 12, 2019)

  • New feature: (undocumented) set picking dragMoleculeL
  • -- acts like set picking dragSelected
  • -- LEFT-drag to translate; ALT-LEFT-drag to rotate
  • -- useful for two more molecules (covalently bonded units)
  • New feature: set picking dragModelL
  • -- acts like set picking dragMolecule or dragSelected
  • -- LEFT-drag to translate; ALT-LEFT-drag to rotate
  • -- useful for two more models not loaded using set appendNew FALSE

New in Jmol 14.30.0 (Nov 26, 2019)

  • New feature: set minimizationMaxAtoms
  • maximum number of atoms allowed for MMFF minimization
  • defaults to 200
  • New feature: MEASURE SEARCH "{[H]}CC{[H]}"
  • uses SMARTS searching, selecting only the specified atoms
  • actually available but undocumented since 2013
  • New feature: SET MEASUREMENTUNITS HZ
  • for example, set measurementUnits HZ; MEASURE SEARCH "{[H]}CC{[H]}" will display all 1H-1H coupling constants for a model
  • display calculated three-bond (standard vicinal) H-H J coupling constants (SMARTS {[H]}CC{[H]}) calculated
  • using Haasnoot-Altona-Karplus substituent electronegativity-adjusted algorithm instead of distances
  • If there are fewer than three substituents on each central atom, or if either central atom is not carbon, defaults to general Karplus equation.
  • see org.jmol.quantum.NMRCalculation.java for algorithm and bibliographic details
  • expanded from use in solid-state NMR to any model EXCEPT magres files, which instead use HZ in associationg with solid-state tensors
  • New feature: SET MEASUREMENTUNITS NOE_HZ
  • adds NOE calculation for H atoms that are more then three bonds apart along with vicinal and geminal
  • not validated; from Janocchio 1.1 (https://sourceforge.net/projects/janocchio/)
  • New feature: Janocchio application included as a plugin (preliminary)
  • Java only; totally experimental; VERY preliminary
  • org.openscience.jmol.app.janocchio
  • required some refactoring of Jmol app classes
  • commit number 22001!
  • New feature: LOAD ... CENTROID
  • for molecular crystal structures
  • loads one or more unit cells (as specified by {nx ny nz})
  • exploring covalent bonding so that molecules that have their centroid (center of geometry) within the specified block of cells are built.
  • available but undocumented since 2011
  • example: load =cod/1001253 {1 1 1} centroid
  • note that {1 1 1} here is unnecessary, as it is the default
  • Bug fix: "DOMReader" not "DOMReadaer" in File Manager

New in Jmol 14.29.55 (Oct 30, 2019)

  • bug fix: show chemical image has no image
  • bug fix: dotted lines with antialiasing are too thin and half the spacing

New in Jmol 14.29.54 (Oct 10, 2019)

  • bug fix: show chemical image has colored background
  • new feature: ELLIPSOID ID xx axes [...] [...] [...]
  • new feature: ELLIPSOID ID xx axes [ [...][...][...] ]
  • new feature: ELLIPSOID ID xx axes [ pt pt pt ]
  • new feature: ELLIPSOID ID xx axes matrix3f
  • new feature: ELLIPSOID ID xx scale [ a b c ]
  • new feature: ELLIPSOID ID xx scale pt
  • new feature: set macroDirectory [default: https://chemapps.stolaf.edu/jmol/macros]
  • holds macros.json, which points to macro files
  • no longer hard-coded into Jmol
  • new feature: adds MACRO topond
  • new feature: adds MACRO crystal
  • new feature: adds MACRO topology
  • new feature: adds filter "topos" to load command to allow for hypothetical unit cells with dimension a=1.
  • bug fix: symop(@1,@2,"matrix") should give an array of matricies, one for each relevant operation
  • bug fix: print (-0.0001).format("%3.2f") should print 0.00, not -0.00
  • bug fix: CRYSTAL reader fixes for TOPOND output
  • bug fix: MOLDEN fix for allowing beta set to start with (nCoef + 1)

New in Jmol 14.29.53 (Oct 10, 2019)

  • bug fix: PyMOL PSE reader broken for broken PyMOL 2.3.0

New in Jmol 14.29.52 (Aug 20, 2019)

  • Bug fix: CASTEP reader broken by Siesta %block check in Resolver

New in Jmol 14.29.51 (Aug 19, 2019)

  • Bug fix: (undocumented) measure ID "xx" ... buggy
  • Fixes measure vertical center when using ID
  • Adds id, hidden, visible to getproperty measurementInfo

New in Jmol 14.29.50 (Aug 9, 2019)

  • Bug fix: SiestaReader upgrade
  • Bug fix: load =3dna/val validation loading does not work

New in Jmol 14.29.47 (Aug 1, 2019)

  • Bug fix: standard PDB files (no hydrogens and no multiple bonds) should not require /aromaticPlanar/ in search() selection.

New in Jmol 14.29.46 (Jun 6, 2019)

  • Bug fix: ModelKit menu broken in 14.29.45

New in Jmol 14.29.42 (May 2, 2019)

  • Bug fix: MolReader not assigning _M.dimension to "2D" or "3D", just the overall auxiliaryInfo.dimension

New in Jmol 14.29.41 (Apr 30, 2019)

  • Bug fix: symop("x,y,z",{0 0 1}) does not return correct value for unit cells oriented by a b c axes
  • Bug fix: OutputManager and FileManager fix for WRITE PDB "https://..." sending information to a server
  • Bug fix: JSmolJME.js miscodings cause error message in JSME
  • Bug fix: nmr_predict_HC.htm not correlating signals to structure correctly
  • Bug fix: JSpecView peak tabs for simulation or correlation in JmolJDX not proper width

New in Jmol 14.29.40 (Apr 27, 2019)

  • Bug fix: JSmolJME.js miscodings cause error message in JSME
  • Bug fix: nmr_predict_HC.htm not correlating signals to structure correctly
  • Bug fix: centerAt AVERAGE fix

New in Jmol 14.29.39 (Apr 25, 2019)

  • new feature: capture SCRIPT "some script":
  • captures the given script
  • new feature: DELAY 1 while capturing inserts a one-second delay into the GIF animation:
  • thus, the following is a +/-20-degree looping rock
  • around the Y axis with a 2-second wait at each end: CAPTURE "t.gif" LOOP SCRIPT "rotate y 20 20;delay 2;rotate y -40 -40;delay 2;rotate y 20 20;"
  • Bug fixes:
  • bug fix: JSpecView inline loading fails due to null file name assignment - now "[inline]"
  • bug fix: JSpecView inline loading does not save data needed for export SOURCE

New in Jmol 14.29.38 (Apr 22, 2019)

  • Bug fix: modelkit needs more slop for touch drag release and clicking new feature: CRYSTAL TOPOND TRHO and TLAT reader -- reads critical point information in Bader analysis

New in Jmol 14.29.37 (Apr 18, 2019)

  • New feature: MO titleformat "...%3.1E"..." allows rounding of energy value
  • Bug fix: (Java only) Jmol console does not accept paste with first character = 'n'

New in Jmol 14.29.36 (Apr 14, 2019)

  • Bug fix: getProperty("filecontents",filename) does not work.

New in Jmol 14.29.35 (Apr 12, 2019)

  • Bug fix: Jmol.jar does not contain JSpecView class files

New in Jmol 14.29.34 (Apr 5, 2019)

  • Bug fix: processing of MagneticCIF _space_group_magn.transform_BNS_Pp_abc '-a+b,c,a+b;1/2,1,1/2' fails

New in Jmol 14.29.33 (Apr 5, 2019)

  • Bug fix: (JavaScript only) in state creation for wireframe and measure for integer Angstrom size, for example WIREFRAME 1.0

New in Jmol 14.29.32 (Mar 29, 2019)

  • Bug fix: (JavaScript only) script with raw {...} expression fails to compile

New in Jmol 14.15.4 (May 15, 2017)

  • bug fix: INVERTSELECTED ATOM not documented; functionality of INVERTSTEREO SELECTED folded into it, and INVERTSELECTED STEREO deprecated
  • inverts ring or chain stereochemistry
  • adds that keyword ATOM is optional, so INVERTSELECTED @2 works bug fix: @n for "atom n" not working in several script-checking contexts where {atoms} works. bug fix: CIP full implementation; simplified algorithm - 984 lines bug fix: CIP Rule 1b modification to ensure aromatic rings do not result in false positive for R/S (binap2)
  • specifically that the duplicate atom is given the root distance of its parent, not its duplicated atom bug fix: CIP chiral bridgehead N designations missing bug fix: CIP Assignment of auxiliary r/s not functional (AY-236.201,202) bug fix: CIP basic "mancude" atom number adjustment for heteroatoms
  • implemented for benzenoids (benzene, pyridine, pyrazine) and fused benzenoids only new feature: set debugHigh
  • same as set loglevel 6 - debugging only
  • debugging only; not considered significant enough to increment minor version

New in Jmol 14.15.3 (May 9, 2017)

  • bug fix: SMARTS search for atropisomeric bond that is in an alicyclic ring fails
  • bug fix: use of the less preferred name of Jmol token that has two optional forms ("fix" vs "fixed") as a VAR does not assign that variable name
  • bug fix: set cartoonRibose misses the C1'-O4' and O3'-P(+1) edges
  • bug fix: JVXL reader not reading Gaussian files with "1" in the third line, 5th field
  • bug fix: CIP M/P chirality
  • bug fix: CIP chirality nearly fully validated on ACD/Labs AY-236 set, with some unimplemented aspects

New in Jmol 14.15.2 (May 1, 2017)

  • bug fix: CIP chirality adds axial chirality (M/P[Ra/Sa], m/p[ra/sa]) for cumulenes
  • bug fix: CIP chirality adds atropisomer chirality (M/P[Ra/Sa], m/p[ra/sa]) for biaryls
  • bug fix: CIP chirality adds cumulene E/Z chirality

New in Jmol 14.15.1 (Apr 28, 2017)

  • new feature: x.split(true)
  • new feature: MOL/SDF reader reads M ISO lines for isotopes
  • new feature: CIP chirality adds P, S, As, Se, Sb, Te, Bi, Po trigonal pyramidal and tetrahedral
  • new feature: CIP chirality adds imine and diazine E/Z chirality
  • bug fix: CIP chirality broken for carbonyl groups
  • bug fix: CIP chirality E/Z should not be indicated for rings of size < 8
  • bug fix: values not saved in state for cartoonBlockHeight, cartoonBlocks, and cartoonSteps
  • bug fix: write MO broken
  • bug fix: set cartoonBlockHeight (for DSSR nucleic acid rendering) fails
  • code: CIPChirality.java 779 lines Rules 1-5 validated on 145 compounds
  • code: CIP optimizations

New in Jmol 14.14.1 (Apr 21, 2017)

  • new feature: CALCULATE CHIRALITY {atom set}
  • new feature: set jmolInJSpecView
  • new feature: WRITE ISOSURFACE "t.pmesh"; WRITE ISOSURFACE "t.pmb"
  • bug fix: mesh capper producing gaps
  • bug fix: CIP chirality fixed for rule ordering; validated for IUPAC Rules 1, 2, and 3 (though still some questions about Rule 3)
  • bug fix: print getProperty("cifinfo") without file name fails

New in Jmol 14.13.1 (Apr 10, 2017)

  • new feature: MOL V2000 reader loads > blocks into _M.molData
  • new feature: set labelfor {atomset} "value"
  • allows setting of label without changing current selection
  • uses same syntax as LABEL command after {atomset}
  • for example:
  • set labelfor @atoms @myLabel
  • set labelfor {atomno

New in Jmol 14.12.1 (Apr 8, 2017)

  • bug fix: NBO update
  • bug fix: JavaScript bug - missing Math.signum(f) - causes {atom}.chirality to not work in JSmol

New in Jmol 14.12.0 (Apr 7, 2017)

  • New feature: {atom}.chirality.

New in Jmol 14.11.3 (Apr 6, 2017)

  • bug fix: partial bond order for orders > 3 not working
  • bug fix: NBO MODEL loading with no file name goes to wrong directory
  • bug fix: NBO job names need to be cleaned and set if necessary
  • bug fix: some sort of bad build for DSSR
  • bug fix: NBO fixes
  • bug fix: backboneSteps moved to cartoonSteps
  • bug fix: set cartoonBlocks; set cartoonBlockHeight x.x
  • bug fix: NBO communications upgrade - still has bug in NPA atom charge query

New in Jmol 14.11.0 (Apr 3, 2017)

  • new feature: color NUCLEIC
  • new feature: set backboneBlocks; set backboneBlockHeight x.x
  • new feature: color property DSSR type
  • bug fix: drag-drop of PDB file with isolated nucleic acids gives odd unbonded look
  • bug fix: set drawPicking TRUE does not report pending measurement
  • bug fix: DSSR calculation should reset after atom coordinate changes
  • bug fix: using Jmol.scriptWait() within a callback will not work, as it will overwrite the currently running eval object

New in Jmol 14.10.0 (Mar 27, 2017)

  • new features:
  • x = {*}.find(smartsString,"map")
  • SELECT @x where x is an array of integers or array of array of integers
  • DRAW polygon @face @points
  • DRAW polyhedron @faces @points
  • POLYHEDRON ID xxx @faces @points
  • 4-order bond in MOL file using 14 for bond order
  • 5-order bond in MOL file using 15 for bond order
  • 6-order bond in MOL file using 16 for bond order
  • load "=xxxx/dssr--xxx=yyy"
  • Bug fixes:
  • DSSR fix for multi-model PDB file
  • DSSR - 4fe5 HPA ligand causes set backboneSteps true to fail
  • EXIT command with -n command line flag does not exit Jmol
  • echo renderer may not show correct font size
  • POLYHEDRA ID id OFFSET {x y z} broken
  • ScriptManager debug output being sent even if -i (silent) command line option set.

New in Jmol 14.9.1 (Feb 20, 2017)

  • Bug fix: bad release file for 14.9.0.

New in Jmol 14.9.0 (Feb 17, 2017)

  • new feature: set nboCharges (default true)
  • new feature: connect NBO
  • new feature: label %[nbo];
  • new feature: quintuple and sextuple bonds.
  • new feature: Viewer.runScriptCautiously(String) replacement name for older Viewer.runScript(String)
  • new feature: plugin main menu item.
  • new feature: startup options -U nbo or --plugin nbo
  • new feature: NBO n BETA - for GenNBOReader nth beta orbital; could be expanded
  • bug fix: SHOW CHEMICAL JME (from NCI CIR) does not properly return formal charges
  • bug fix: JSpecView, when open in application, does not allow ZAP
  • bug fix: draw POINTGROUP crashes Jmol if model is not first model
  • bug fix: DRAW circle rendering broken (load $2-butene ; draw pointGroup)
  • bug fix: NBO/ISOSURFACE command - Displaying BETA orbitals for NBO types (NHO, PNBO, etc.) that are from a file other than the current file causes read failure and no orbital display.
  • bug fix: Viewer.runScript(String) now uses evaluateExpression(T[])
  • Lesson learned: Never mix viewer.runScript() and viewer.runScriptQueued() calls.
  • bug fix: *.CA should pick up calcium in a PDB file
  • bug fix: cfi format (for NBOPro) writing broken
  • bug fix: La and Ac should be in transitionmetal
  • bug fix: GenNBO reader not recognizing FILTER "BETA"
  • code: NBO options extended using the NBO VIEW or NBO OPTIONS "..." command options
  • noting previously undocumented: set fontscaling true; font label 10 arial plain 0.020

New in Jmol 14.8.0_2016.12.17 (Dec 20, 2016)

  • New features:
  • set echo OFFSET {sx sy sz}
  • set labelOffset [mode sx sy sz ax ay az] (3.1.15, never documented)
  • fully implemented CIF 2.0 reader
  • MagCIF reader upgraded to new IUCr standard
  • x = getProperty("cifInfo", "c:/temp/test.cif")
  • autocalculation of MMFF94 partial charges
  • 3DPrinter-compatible VRML and STL writing.
  • measure ID "test" radius 0.0 font 15.0 SansSerif Plain align CENTER @1 @2 "test"
  • allowance for external app loading of binary (mmtf) files or any other file using a simple interface: Viewer.openReader(fullPathName, reader)
  • Jmol reads PyMOL 1.8 PSE files with "set dump_binary, 1"
  • load AUDIO audiofilename
  • settable chain string using {atomset}.chain = "xxx"
  • set hiddenLinesDashed
  • polyhedron -x.x ....
  • $pbz1_1_.getProperty(x) where x is "info", "faces", "faceTriangles", "faceCount", "face_areas", "face_types", "face_points", "vertices", ...more...
  • print unitcell("a=...,b=...,c=...,alpha=...,beta=...,gamma=....")
  • load ... unitcell "a=...,b=...,c=...,alpha=...,beta=...,gamma=...."
  • unitcell "a=...,b=...,c=...,alpha=...,beta=...,gamma=...."
  • unitcell RECIPROCAL 2
  • polyhedra AUTO ...
  • unitcell reciprocal x.x
  • write CIF
  • full implementation of OpenSMILES and OpenSMARTS in Jmol
  • C13 NMR prediction from http://www.nmrdb.org/service/jsmol13c?smiles=CCCC
  • Jmol now implements a way of indicating atropisomer chirality
  • CONNECT {pair1} {pair2} ATROPISOMER
  • BONDORDER ATROPISOMER_nm
  • Jmol SMILES bond atropisomerism ^nm- and ^^nm-

New in Jmol 14.6.4_2016.11.05 (Nov 9, 2016)

  • Bug fix: MCIF (magnetic CIF) reader miscalculates vector scales.

New in Jmol 14.6.4_2016.10.26 (Oct 30, 2016)

  • bug fix: POV-Ray output spheres too large -- somehow broken in 14.6.4_2016.10.15
  • code: netscape.jar references isolated to org.jmol.applet.Jmol

New in Jmol 14.6.4_2016.10.21 (Oct 21, 2016)

  • Bug fix: menu item for X3D export delivers STL; item for STL not functional
  • Bug fix: X3D export includes extraneous VRML text
  • Bug fix: load "@x" not saved in state properly
  • Bug fix: IDTF exporter broken in Jmol 14.6.4_2016.10.02

New in Jmol 14.6.4_2016.10.15 (Oct 17, 2016)

  • Bug fix: (JSmolJavaExt.js) JSmol/HTML5 WRITE xxx.stl not working.
  • Bug fix: STL export can place two endcaps in the same location

New in Jmol 14.6.4_2016.10.02 (Oct 3, 2016)

  • new feature: 3DPrinter-compatible VRML and STL writing:
  • mesh only; does not use high-level objects Cone, Cylinder, Sphere
  • extensive use of dEF and USE for small-footprint VMRL files
  • STL is binary generally, but will be ASCII using SET DEBUG TRUE
  • write t.wrl
  • write t.stl

New in Jmol 14.6.3_2016.09.18 (Sep 19, 2016)

  • bug fix: write MENU broken for non-English language (UTF-8 strings not correctly encoded using base64)
  • bug fix: write PNGJ should not store "#_DOCACHE_" in PNGJ file
  • bug fix: JSmol echo image loading from PNGJ can fail
  • bug fix: load "" after pasting in structure to load fails

New in Jmol 14.6.2_2016.08.28 (Aug 29, 2016)

  • new feature: allowance for external app loading of binary (mmtf) files or any other file using a simple interface: Viewer.openReader(fullPathName, null, reader)
  • bug fix: RCSB -> https "https://files.rcsb.org/download/%FILE.pdb"
  • bug fix: EBI sites to https
  • bug fix: Spartan 16 reader may have empty first model
  • bug fix: 2D model show SMILES uses @SP -- should be /nostereo/ based on _.dimension == "2D"
  • bug fix: NCI/CADD now requires "get3d=true" not "get3d=True"
  • code: Unit test includes binary types PyMOL and MMTF

New in Jmol 14.6.1_2016.08.11 (Aug 12, 2016)

  • Bug fix: PyMOL dump_binary file reading fixes.

New in Jmol 14.6.1_2016.08.09 (Aug 11, 2016)

  • bug fix: upgrade of RCSB mmtf format reading to version 0.2 specs load =2tbv.mmtf {1 1 1} filter "biomolecule 1;*.ca"
  • new feature: Jmol reads PyMOL 1.8 PSE files with "set dump_binary, 1"

New in Jmol 14.6.1_2016.07.29 (Aug 2, 2016)

  • Bug fix: COMPARE command can fail if an atom has no bonds.

New in Jmol 14.6.1_2016.07.11 (Jul 15, 2016)

  • synchronized with Jmol 14.7
  • bug fix: Jmol SMILES not allowing for insertion-code search -- adds "^" for insertion code: [G#129^A.*]

New in Jmol 14.6.0_2016.06.30 (Jun 30, 2016)

  • Bug fix: cartoon rendering broken in 2016.06.28.

New in Jmol 14.6.0_2016.06.28 (Jun 28, 2016)

  • Bug fix: using an exporter (write VRML, eg) with cartoonsFancy will break rendering after that
  • Bug fix: after loading PNGJ data, using write FILE crashes Jmol

New in Jmol 14.6.0_2016.06.22 (Jun 23, 2016)

  • bug fix: compare(a,b,"isomer") does not detect ENANTIOMER (broken in 14.5.5)
  • bug fix: missing error trap for unsettable property setting
  • bug fix: load models {0 0 1} ... fails in script compiler

New in Jmol 14.6.0_2016.06.14 (Jun 15, 2016)

  • Bug fixes:
  • bug fix: reading of protein structure for a group that is not in a polymer causes null pointer exception
  • bug fix: set hermiteLevel -4 allows hermite during mouse move but not spinning
  • bug fix: polyhedron faces not generated correctly when postions are very close together (still)
  • bug fix: polyhedron face areas not calculated correctly
  • bug fix: localization broken due to too-old GNU msgfmt version.
  • bug fix: splash image not appearing in Jmol application Help...about Jmol
  • bug fix: Jmol application Help may not appear at all
  • bug fix: switching out of hermite "fancy" cartoons doesn't actually do that.

New in Jmol 14.4.4_2016.04.22 (Apr 24, 2016)

  • bug fix: on loading, crystallographic file reading fails when applying symmetry
  • bug fix: on loading, user-defined space groups using Hall symbol fails
  • bug fix: SHELX reader broken

New in Jmol 14.4.4_2016.04.21 (Apr 22, 2016)

  • bug fix: CIF files with missing tags that Jmol needs fail to load at all. (Not necessarily a bad thing, but it is not supposed to fail so dramatically.)
  • bug fix: mmCIF/mmTF reader does not complete symmetry for biomolecules when there is a lattice.
  • bug fix: mmCIF, PDB, and mmTF readers with lattice indicated does not show unit cell
  • bug fix: certain viral capsid CIF files will fail to load due to this line: XAU '(X0)(1-10,21-25)' A,B,C

New in Jmol 14.4.4_2016.04.14 (Apr 15, 2016)

  • bug fix: Jmol 14.4.4_2016.04.13 will fail to read PDB files from scripts referencing http://www.rcsb.org/pdb/
  • does not affect http://www.rcsb.org/pdb/ligand
  • does not affect load =xxxx or load ==xxx
  • does not affect PNGJ files
  • only affects scripts that specifically reference that site (e.g. state scripts created prior to 4/13/2016)
  • bug fix: selection of dssr elements using select within(dssr,"pairs[where...]") is not working

New in Jmol 14.4.4_2016.03.31 (Apr 1, 2016)

  • bug fix: load $xxxx broken; http://cactus --> https://cactus
  • bug fix: _geom_bond_distance starting with "." halts CIF file reading

New in Jmol 14.4.4_2016.03.29 (Mar 30, 2016)

  • code: ru.po updated (Angel Herraez)
  • bug fix: SMILES generator still broken in 14.4.4_2016.03.25
  • bug fix: smiles1.find("SMILES",smiles2) broken in 14.4.3_2016.03.06
  • new feature: Polyhedra command allows for min and max radius -- polyhedra 2.8 3.0 @3
  • bug fix: unitcell PRIMITIVE for rhombohedral groups not implemented
  • bug fix: unitcell("primitive","R") not implemented
  • bug fix: WRITE IMAGE with negative width or height should throw a Jmol ScriptException
  • bug fix: draw ... [x y] does not position properly with antialias true
  • bug fix: allow AXES TYPE "" or non-recognized to be same as "abc"
  • bug fix: AXES TYPE "ab" should also be allowed when offset or center is set
  • bug fix: labels should not change size when creating images of different size than screen when angstromsPerInch != 0.
  • bug fix: if...BREAK|CONTINUE in unbracketed context does not properly place implicit END IF when TRUE clause is on next line AND next statement after that is another IF command

New in Jmol 14.4.4_2016.03.25 (Mar 25, 2016)

  • Fixes Jmol.getPropertyAsArray(), which fails to escape strings (14.4.4_2016.03.24d) .

New in Jmol 14.4.4_2016.03.24 (Mar 24, 2016)

  • bug fix: NCI requires stereochemistry to rings to be prior to a branch: C\1(/C)=C\C=C.C/1=C not C(/C)\1=C\C=C.C/1=C
  • new feature: x.bin() method allows return of an array listing both the bound and the count

New in Jmol 14.4.4_2016.03.22 (Mar 23, 2016)

  • bug fix: unitcell PRIMITIVE does not work as reported 3/21
  • bug fix: unitcell("conventional","F") does not work
  • bug fix: crystal systems with translational symmetry may have duplication of symmetry operators

New in Jmol 14.4.4_2016.03.13 (Mar 14, 2016)

  • new feature: polyhedra POINTS x.y
  • new feature: show SMILES/xxxx
  • new feature: show chemical NAME
  • new feature: full implementation of OpenSMILES aromatic model
  • new feature: {*}.find("SMILES/open")
  • new feature: /open option for smiles.find("SMILES", pattern)
  • new feature: compare("smile1","/open/smiles2")
  • new feature: {*}.find("SMILES/strict")
  • new feature: {*}.find("SMILES/open strict")
  • new feature: {*}.find("SMILES/mmff94")
  • new feature: optional processing of OpenSMILES [CH2:002] ":" atom class.
  • new feature: UNITCELL TRANSFORM @m4x4
  • new feature: calculate symmetry polyhedra {atomset}
  • new feature: calculate symmetry polyhedra id
  • new feature: atom set can be specified in polyhedra() function:
  • new feature: WRITE MOL67 xxx.mol
  • bug fix: SMILES should not be returned with comments for internal processing or sending to PubChem or others
  • bug fix: SHOW chemical SMILES can be off because it was using the name, not the SMILES string
  • bug fix: Jmol 14.3.16_2015.09.15 broke first-match-only flag in SMILES mapping
  • bug fix: POLYHEDRA when selection halos are on, all have edges
  • bug fix: moving of polyhedron will fail if corner of polyhedron is an atom
  • bug fix: macro functions cannot be used later in same script as a MACRO command
  • bug fix: Tripos MOL2 reader does not read element symbols properly
  • bug fix: default write MOL file should not indicate aromatic bond types 6 and 7

New in Jmol 14.4.3_2016.03.02 (Mar 2, 2016)

  • Bug fix: JavaScript reference to j2s for working gif does not recognize Info.j2sPath

New in Jmol 14.4.3_2016.02.28 (Feb 29, 2016)

  • bug fix: cyclic peptides do not complete loop for cartoons, backbone, etcs
  • bug fix: [function:"yyy",Function:"zzz"] fails to retain key capitalization after first entry for special names
  • bug fix: (JavaScript only) polyhedra not saved in state
  • bug fix: (Applet) broken image in coverImage
  • bug fix: polyhedra DELETE can crash Jmol if polyhedra are not colored

New in Jmol 14.4.3_2016.02.18 (Feb 19, 2016)

  • bug fix: slab/depth SET do not behave properly
  • bug fix: select VISIBLE is not properly set based on slab/depth SET
  • bug fix: _GEOM_BOND reading in CIF files nonfunctional.

New in Jmol 14.4.2_2016.02.14 (Feb 15, 2016)

  • FEATURE CHANGE: JSmol default for Info._disableInitialConsole changed to true. No longer necessary with JSmol_spinner.gif
  • new feature: j2s/img/cursor_wait.gif animation implemented
  • new feature: j2s/img/JSmol_spinner.gif implemented (Angel Herraez) - as default for Info._appletLoadingImage. Use Info._appletLoadingImage = "none" to disable
  • bug fix: STRUCTURE statement (utilized in RESTORE STRUCTURE) broken. Broken in Jmol 14.4.0_2015.10.30
  • bug fix: EBI assembly CIF files that are multi-model files will be by chain, not by model. Result was that each chain became a new model
  • bug fix: XmlMolProReader does not recognize FILTER "NOMO"
  • bug fix: JSmol has never shown cursors

New in Jmol 14.4.2_2016.02.09 (Feb 10, 2016)

  • bug fix: SMARTS pattern [ALA.*] not working without biological polymer type indication bug fix: SMARTS pattern [r500] not working outside of MINIMIZE

New in Jmol 14.4.2_2016.02.05 (Feb 5, 2016)

  • bug fix: LOAD $benzene; SHOW smiles should give c1ccccc1 not c1=cc=cc=c1
  • bug fix: LOAD FILES "$caffeine" ":caffeine";print {1.1}.find("SMARTS",{2.1}) should give atoms, but it does not. Problem is with aromatic structure to SMILES shows c=c instead of just cc. (SMARTS searching with c=c does not match

New in Jmol 14.4.2_2016.02.04 (Feb 5, 2016)

  • bug fix: JVXL files saved from models that involve full model rotate/translateSelected do not get restored properly.
  • bug fix: molecular orbitals do not move with atoms when full molecule is moved using rotateSelected or translateSelected

New in Jmol 14.4.2_2016.02.03 (Feb 5, 2016)

  • bug fix: IboView/Molpro XML reader validated for multi-molecule XML files -- to concatenate Molpro XML files, you must supply a new root tag as well as remove all directives.

New in Jmol 14.4.1_2016.01.15 (Jan 25, 2016)

  • bug fix: d = [start:1,end:10] fails due to reserved word "end" (also "select", "case", "default", "if", "for", etc.)
  • bug fix: color "chain" (with quotes) should work, allowing for x="chain"; color @x
  • bug fix: inappropriate use of REGEX in ["a","b"].find("x")
  • bug fix: ".xxx" should be allowed as a math continuation

New in Jmol 14.4.1_2016.01.09 (Jan 25, 2016)

  • code: (JavaScript) refactoring to allow faster, cleaner load for biomodels

New in Jmol 14.4.1_2016.01.08 (Jan 25, 2016)

  • bug fix: labels, echos, and measurements improperly shaded when z-shaded with nonblack background
  • bug fix: rendering error when set zshade followed by set antialiasdisplay
  • code: (JavaScript) refactoring to reduce extraneous file download

New in Jmol 14.4.1_2016.01.06 (Jan 25, 2016)

  • bug fix: labels, echos, and measurements disappear when z-shaded

New in Jmol 14.4.1_2016.01.04 (Jan 13, 2016)

  • bug fix: (JvxlReader) Jmol 12 mapped isosurface jvxl files do not show mapped color bug fix: setting cartoons on for phosphorus-only polymers fails
  • bug fix: setting default label properties using select none;.... fails
  • bug fix: undocumented model-based draw [array of points] broken -- points only -- selects from visible frames (frame *, for example) -- load cyclohexane_movie.xyz; frame *; draw @{{C5}.split().sub({1,0,0})

New in Jmol 14.4.1_2016.01.01 (Jan 13, 2016)

  • bug fix: file dropping of JVXL files does not work
  • bug fix: Mesh capper not working for multiple cuts due to unclosed surface cut -- for example: load maleic.cif 1;select on atomindex=6;lcaocartoon scale 1.0 CAP unitcell "cpk"
  • bug fix: Escape.e(P4) returns value for Escape.e(T3) -- only affects SurfaceTool
  • bug fix: (JSmol only) Java return (int) fValue(x); will return "NaN" instead of "0" for x NaN -- JSmol script 0 + "test" will print "NaN" rather than "0"

New in Jmol 14.4.1_2015.12.23b (Jan 13, 2016)

  • bug fix: JavaScript error reporting uses alert() instead of just setting the error message bug fix: PyMOL 1.8 PSE files cannot be read because of missing settings
  • code: more efficient loading of PyMOL .pse session files

New in Jmol 14.4.1_2015.12.23 (Jan 13, 2016)

  • bug fix: PyMOL 1.8 PSE files cannot be read
  • bug fix: dots broken when colored none
  • bug fix: color cartoons red blue not saved in state
  • bug fix: color cartoons red blue flipping red/blue in sheets

New in Jmol 14.4.1_2015.12.21 (Jan 13, 2016)

  • bug fix: color [0xffffff] should not be case-sensitive -- [0Xffffff] should be OK
  • bug fix: set spin fps ... fails
  • code: (JavaScript) adding use of typedArray.buffer.slice

New in Jmol 14.4.1_2015.12.20 (Jan 13, 2016)

  • code: (JavaScript) adding use of array.slice and implementing Java byte[] as JavaScript Int8Array()
  • bug fix: array handling for labels very inefficient
  • bug fix: y = javascript("x") only creates string equivalent of x, not actual numerical/object values
  • bug fix: y = javascript("x") draws "x" from wrapped anonymous function using eval() instead of global context using window.eval()

New in Jmol 14.4.1_2015.12.15 (Jan 13, 2016)

  • bug fix: Bad build for Jmol Java applet

New in Jmol 14.4.1_2015.12.14 (Jan 13, 2016)

  • bug fix: JSmol (JSmolCore.js) check for MS Edge browser, which does not support dataURI

New in Jmol 14.4.1_2015.12.13 (Jan 13, 2016)

  • bug fix: JavaScript Chrome/Edge fix for slow response due to setTimeout issues; uses requestAnimationFrame instead in JSmol.js
  • bug fix: zoomTo not setting time to 0 in the case of scriptWait
  • bug fix: set selectAllModels should restrict action of display/hide as well
  • bug fix: set selectAllModels not working appropriately
  • bug fix: set selectAllModels should not be saved in state
  • bug fix: JmolData.jar does not update atom screen positions upon REFRESH or select {visible}
  • bug fix: JmolData.jar -p flag does not work properly
  • bug fix: model 0 issued when more than one PDB file is open does not execute model *

New in Jmol 14.4.0_2015.12.02 (Jan 13, 2016)

  • bug fix: PDB reader broken for filter "biomolecule n"
  • bug fix: mmCIF reader can fail to pop up menu when biomolecule is present.

New in Jmol 14.4.0_2015.12.01 (Jan 13, 2016)

  • bug fix: JSON generation from arrays broken in HTML5 version due to browser changes in Array.toString().
  • bug fix: DCD reader broken.
  • bug fix: getProperty("JSON", "variableInfo", "x") will fail if x is an array -- was problem with JSV_predict2 failing to properly map atoms between Jmol and JSME
  • bug fix: {atomset}.sxyz gives incorrect screen coordinate when antialiased
  • bug fix: point(pt, true|false) also modifies pt itself
  • bug fix: point({atomset}, true) gives incorrect screen coordinate when antialiased.
  • bug fix: point({atomset}, false) gives incorrect Cartesian coordinate when antialiased. bug fix: popup menu item "Surfaces...Off" resets atom selection bug fix: files with names containing "[]" cannot be loaded.
  • bug fix: {cell=555}.find("cellFormula") can fail because of 2% slop involved in defining cell=555
  • bug fix: {atomset}.split() [split atomset by model] returns array of strings, not array of atoms
  • bug fix: getproperty SHAPEINFO fails if CGO is present
  • bug fix: CGO from state deletes DRAW objects
  • bug fix: CGO not properly isolated to current model; "fixed" not implemented

New in Jmol 14.4.0_2015.11.25 (Jan 13, 2016)

  • bug fix: draw ARC|ARROW|CURVE|LINE|VERTICES @x where x is an array does not work

New in Jmol 14.4.0_2015.11.18 (Nov 21, 2015)

  • Bug fix: loading mmCIF files where label_asym_id != auth_asym_id will apply biomolecule symmetry to wrong chain.

New in Jmol 14.3.16_2015.08.21 Beta (Aug 23, 2015)

  • new feature: load var x same as load "@x"
  • similar to write var x
  • example:
  • var x = load("test.png",true)
  • load var x
  • write test2.png as PNGJ
  • bug fix: creating and running and saving binary hash from PNGJ fails
  • example:
  • var x = load("test.png",true)
  • load "@x"
  • write test2.png as PNGJ
  • bug fix: hover callback is not supposed to be stopped with HOVER OFF
  • bug fix: atom.sx and atom.sy and atom.sz report incorrectly when antialiasing is on
  • bug fix: write VAR x "test.png" creates a ZIP file instead of a PNGJ file when x is from load("test.png",true) bug fix: write test.png as PNGJ (without initial quotes) fails

New in Jmol 14.3.16_2015.08.18 Beta (Aug 19, 2015)

  • bug fix: PyMOL reader not reading "H69" as "helix" (RGS-Ga_8pdb_structures_aligned_S90_20.5.15.pse)
  • bug fix: PyMOL labels offset in Y direction (down.pse) see http://noys3.weizmann.ac.il/a2jb/browse
  • bug fix: PyMOL session with isosurface cannot be read from state
  • known bug: RGS-Ga_8pdb_structures_aligned_S90_20.5.15.pse has two frames; showing frame 2 with no displayed atoms

New in Jmol 14.3.16_2015.08.17 Beta (Aug 18, 2015)

  • bug fix: PDB reader cuts off long titles. bug fix: slab setting by wheel can be unintentional
  • bug fix: wheeling slab could run range unintentionally way too high or low
  • new feature: slab/depth setting.
  • these enable wheel actions:
  • bindAction(SINGLE|CTRL|WHEEL, ActionManager.ACTION_wheelZoom); bindAction(SINGLE|SHIFT|WHEEL, ActionManager.ACTION_wheelZoom); bindAction(SINGLE|CTRL|SHIFT|WHEEL, ActionManager.ACTION_wheelZoom);
  • these enable slab-wheel actions:
  • bindAction(SINGLE|CTRL|WHEEL, ActionManager.ACTION_slab); bindAction(SINGLE|SHIFT|WHEEL, ActionManager.ACTION_depth); bindAction(SINGLE|CTRL|SHIFT|WHEEL, ActionManager.ACTION_slabAndDepth);

New in Jmol 14.3.16_2015.08.11 Beta (Aug 12, 2015)

  • bug fix: a = {*}.label("%[xxx]") does not work.
  • bug fix: "".format([a,b]) crashes Jmol
  • new feature: load filter "addBonds"
  • new feature: load *1crn*

New in Jmol 14.2.14_2015.06.11 (Jun 12, 2015)

  • bug fix: polyhedra broken for number of vertices > 6:
  • needed smaller default distanceFactor (set to 1.5; formerly 1.85)
  • this setting is for any

New in Jmol 14.2.13_2015.03.07 (Mar 9, 2015)

  • bug fix: x[2] = y[2] fails
  • adds IMAGE command, Windows BMP image file reading
  • new feature: NBO command with no arguments starts NBO panel (Java application only)

New in Jmol 14.3.12_2015.02.11 Beta (Feb 12, 2015)

  • bug fix: 14.3.12_2015.02.09 breaks MODEL "someTitle" syntax
  • bug fix: MUTATE not properly saved in state
  • bug fix: "USER MOD" not accepted at beginning of PDB file (MolProbity breaking PDB format here)
  • bug fix: 02.10 may break loading ligand files

New in Jmol 14.2.12_2015.02.10 (Feb 11, 2015)

  • bug fix: color $contact1 "roygb" range -0.5 1.0; broken (in state after using CONTACT)
  • bug fix: mmCIF reader does not flag first model of a multimodel set as type PDB

New in Jmol 14.3.12_2015.02.07 Beta (Feb 9, 2015)

  • bug fix: set meshScale is not being applied to isosurface contours
  • bug fix: zoomTo{xxx} 0 does not center (broken in 13.1.16_dev_2013.05.23)
  • bug fix: appending a model to a model with data can fail
  • bug fix: 02.04 select conformation=1 broken
  • bug fix: 02.04 select within(chain,...) broken
  • bug fix: hydrogen addition should not follow component file ILE7 HG12 != ILE7 HG13 ILE7 HG13 != ILE7 HG12 ARG10 HB2 != ARG10 HB3 ARG10 HB3 != ARG10 HB2 ARG10 HG2 != ARG10 HG3 ARG10 HG3 != ARG10 HG2 ARG10 HD2 != ARG10 HD3 ARG10 HD3 != ARG10 HD2 LEU18 HB3 != LEU18 HB2 LEU18 HB2 != LEU18 HB3 PRO19 HD2 != PRO19 HD3 PRO19 HD3 != PRO19 HD2 ILE25 HG12 != ILE25 HG13 ILE25 HG13 != ILE25 HG12

New in Jmol 14.3.12_2015.01.30 Beta (Jan 31, 2015)

  • bug fix: select %w %x %y %z not implemented
  • bug fix; lcaoCartoon broken in 14.3.10_2014.11.27/14.2.12_2015.01.22
  • bug fix: isosurface id surf1 solvent; select within(2.0, $surf1) broken

New in Jmol 14.3.12_2015.01.29 Beta (Jan 30, 2015)

  • bug fix: 01.28 version does not write correct PDB CONECT records
  • bug fix: 01.22 version may not correctly clear rasmol hydrogen bonds in trajectories code: simplification of BioModel; extraction of legacy Chime messaging into ChimeMessenger class
  • code: extraction of org.jmol.modelset.Trajectory

New in Jmol 14.3.12_2015.01.28 Beta (Jan 30, 2015)

  • new feature:
  • MUTATE command
  • operates only on last model present if multiple models are loaded
  • replaces one amino acid group with another
  • can read from RCSB or from user-specified file
  • examples: mutate 33 lys // uses last occurrence of resno=33 mutate @@3 arg // replaces group of atom 3 in current model mutate @r @fname // replaces resno in variable r with file data (use "==XXX" for RCSB) mutate {r} his // same as above; r must be an atom selection mutate 22 "myfile.cif" // user-defined replacement

New in Jmol 14.3.12_2015.01.27 Beta (Jan 28, 2015)

  • BUG FIX:
  • select thisModel does not select all atoms in visible frame set
  • NEW FEATURE:
  • @@3 for "atomno=3 and thisModel"
  • provides a function distinct from @3 when there are multiple models
  • includes all atoms in current frame set
  • NEW FEATURE:
  • frame [1 3 5 6]
  • sets limited number of frames for animation and frame
  • same as animation frame [1 3 5 6]; frame
  • NEW FEATURE:
  • CGO SCREEN option
  • CGO [SCREEN z ...]
  • reads CGO 2D VERTEX records as screen coordinates, installing them at a depth of z
  • where z > 0 indicates a percent (0.01 far back; 100 front)
  • z < 0 indicates an absolute screen z value as -z.
  • uses 2D VERTEX and other CGO point elements, not 3D
  • NEW FEATURE:
  • CGO UVMAP option
  • CGO [UVMAP @origin @x @y x0 y0 x1 y1 scaleX scaleY ...]
  • 2D VERTEX records are scaled and mapped to a plane defined by @origin @x
  • NEW FEATURE:
  • CGO PostScript option
  • CGO [ PS @origin @x @y ] data "PS" [primitive encapsulated postscript data] end "PS"
  • maps 2D EPS data onto a plane defined by an origin point, an x-axis point, and a y-axis point.
  • somewhat similar to UV mapping of textures in other programs
  • allows 2D data to be superimposed on a model.
  • a crude implementation still in development; doesn't properly implement stroke;
  • just for drawing lines; does not implement PS fill, gsave, grestore
  • just moveto, lineto, newpath, closepath, setlinewidth, scale
  • uses %%BoundingBox x0 y0 x1 y1 prolog record to map [x0 y0] to @origin, [x1 0] to @x, and [0 y1] to @y
  • used for NBO contour mapping
  • bug fix: CGO LINE_LOOP not closing
  • bug fix: configuration 1 broken
  • bug fix: display configuration=1 broken (in Jmol 12.0, 2011)

New in Jmol 14.3.12_2015.01.22 Beta (Jan 23, 2015)

  • new feature: load =cod/1000041 loads Crystallographic Open Database CIF files
  • bug fix: load =xxx/..... (special database) fails
  • bug fix: (JavaScript) using "Helvetica Neue, Sans-serif" instead of just "Sans-serif" (org.jmol.awtjs2d.JSFont.java) - gets around Safari bug in Safari v. 7

New in Jmol 14.2.12_2015.01.22 (Jan 23, 2015)

  • bug fix: color rockets amino fails
  • bug fix: "color TRANSLUCENT -1" (screened translucency) restored;
  • -- had been removed in 14.3.12_2015.01.20 because broken in jmol-11.7.27_02-27-09
  • bug fix: atom screened translucency not saved in state
  • bug fix: isosurfaces with screened translucency not restored from JVXL with that
  • bug fix: screened translucent bonds broken
  • code: adding org.jmol.g3d.PixelatorScreened, PixelatorT

New in Jmol 14.2.11_2015.01.20 / 14.3.11_2015.01.20 Beta (Jan 21, 2015)

  • bug fix: Languages lost in Jmol Application
  • new feature: select :"X" where quotes are used now forces case sensitivity
  • bug fix: DIPOLE command broken in Jmol 14.3.10_2014.11.27 (OK in 14.2)
  • bug fix: for old PDB files with no chain ID, "select :" fails

New in Jmol 14.2.11_2015.01.20 (Jan 21, 2015)

  • bug fix: Languages lost in Jmol Application
  • new feature: select :"X" where quotes are used now forces case sensitivity
  • bug fix: DIPOLE command broken in Jmol 14.3.10_2014.11.27 (OK in 14.2)
  • bug fix: for old PDB files with no chain ID, "select :" fails

New in Jmol 14.3.10_27.11.2014 Beta (Nov 27, 2014)

  • bug fix: SPIN BRANCH {atomno=2} {atomno=1} does not work
  • code: scriptExt.IsoExt splits CmdExt into two parts - note this will require changes to build_03_tojs_stable
  • code: simplification of SurfaceGenerator
  • bug fix: JVXL files do not record selected contour
  • bug fix: isosurface CONTOUR -n broken (in Jmol 12)
  • bug fix: isosurface "t.jvxl" loading of contoured planes broken
  • bug fix: isosurface plane xy map property atomno broken every other time used
  • NEW FEATURE: isosurface contour 0 "t.jvxl" will override contour selected in JVXL file new feature: isosurface CONTOUR n i -- n contours; i-th only
  • FEATURE CHANGE:
  • For the ISOSURFACE command, there is an undocumented syntax that the CUTOFF keyword prior to a number is optional, as in "ISOSURFACE 2.0". This was never documented and was never shown in any examples. This change is to require the CUTOFF keyword
  • NEW FEATURE - isosurface LATTICE {i j k} FIXED:
  • creates an isosurface from periodic volumetric data with the specified number of unit cells
  • "fixed" in the sense that the operation is at load time not at rendering, allowing slabbing and use of WITHIN
  • NEW FEATURE - isosurface UNITCELL x.x:
  • for periodic lattices only
  • adjusts grid by x.x in fractional coordinates
  • caution is advised, as the grid is expanded in this process, leading to more grid points and more memory required
  • negative x.x results in a selection of a subset of the data centered on the center of the unit cell

New in Jmol 14.2.9_23.11.2014 / 14.3.9_23.11.2014 Beta (Nov 24, 2014)

  • Bug fixes:
  • isosurface slab plane -xy not recognizing "-"
  • PNGJ writing broken
  • VASP CHGCAR reader not recognized for primitive cell
  • Euler ZYZ and ZXZ for quaternion({0 0 1},theta) where theta < 0 in error

New in Jmol 14.3.9 Beta (Nov 20, 2014)

  • bug fix:
  • set labelOffset {1 2 3} or set labelOffset [1 2 3 4 5 6 7] fails if selection does not contain a label at each selected atom

New in Jmol 14.2.9 (Nov 20, 2014)

  • new feature:
  • VASP CHGCAR reader
  • new feature:
  • VASP CHGCAR isosurface reader
  • new feature:
  • load HISTORY "saved.his" (Gabor Oszlanyi)
  • loads command history with script in saved.his
  • new feature:
  • CTRL-PAGE_UP CTRL-PAGE_DOWN in console (Gabor Oszlanyi)
  • searches for next instance of current start of command up or down command history
  • new feature:
  • capture END
  • closes capture without annoying popup message
  • also for capture CANCEL and just CAPTURE
  • new feature:
  • transparent GIF using WRITE GIFT "xxx.gif"
  • new feature:
  • GIF images use dithering to approximate full palette.
  • new feature:
  • CAPTURE "file.gif" 10 transparent - or CAPTURE "file.gift"
  • "gift" automatically changed to "gif"
  • new feature:
  • CAPTURE "filename0000.png"
  • captures set of PNG files - 0000 is not required new feature: CAPTURE "filename0000.gif"
  • captures set of GIF file - 0000 IS required in order to distinguish this from animated
  • GIF
  • bug fix:
  • set labelOffset {1 2 3} or set labelOffset [1 2 3 4 5 6 7] fails if selection does not contain a label at each selected atom
  • bug fix:
  • Molden reader fails to read orbitals if [GEOCONV] is present

New in Jmol 14.3.7 Beta (Oct 15, 2014)

  • new feature: modulation occupancy settable using {*}.occupancy = {*}.modulation('O',t)
  • bug fix: msCIF reader superspace group operators with mixing of x1,x2,x3 into x4,x5 was still not quite correct.
  • bug fix: data "occupancy set" spelled wrong in state

New in Jmol 14.3.6 Beta (Aug 18, 2014)

  • bug fix: modulated magnetic moment scaling by VECTORS MAX x.x not saved in state for modulations that are 0,0,0.
  • bug fix: magnetic CIF reader not automatically showing modulation
  • bug fix: load SUPERCELL {x y z} not working correctly in terms of packing
  • bug fix: load SUPERCELL not working correctly with modulation or magnetic

New in Jmol 14.2.4 (Aug 4, 2014)

  • bug fix: annotation atom sets not adjusted for added hydrogens
  • bug fix: 14.3.3_2014.08.02 broke mmCIF reader
  • bug fix: BinaryDocument (Spartan file) reading broken in 14.1.12_2014.03.18

New in Jmol 14.2.2 (Jun 30, 2014)

  • bug fix: MCIF reader misreads magnetic symmetry operators involving xyz scaling
  • bug fix: isosurface "=3hyd" AS "3hyd.omap" fails to save proper file (error in seek() method of javajs.util.binaryDocument)

New in Jmol 14.2.0 (Jun 14, 2014)

  • New features:
  • readers with unit cells may load as trajectories
  • Bug fix:
  • CASTEP reader broken for multiple cells and geometry optimization

New in Jmol 14.1.16 Dev (May 30, 2014)

  • FEATURE CHANGE:
  • jmolCommandInput 6th parameter added is default value
  • defaults to "help"
  • set useArcBall removed
  • no longer necessary
  • arcBall is always used anyway
  • removed UNITCELL "xxx" where xxx is an isosurface ID
  • undocumented
  • not necessary, as UNITCELL $xxx or UNITCELL isosurface xxx does as well
  • REMOVED: set fractionalRelative
  • an odd quantity -- related specifically to scripts commands
  • using {1/1 1/2 1/3} and cell=nnn
  • Its use with cell= was never documented.
  • It makes no sense to change the unit cell and not change the
  • meaning of {1/1 1/2 1/3} and cell=nnn
  • Only relates to situations where the unit cell has been offset.
  • Its presence caused unitcell [{origin} {a} {b} {c}] to fail.
  • It should never have been set in state, as it has nothing to do with the state
  • default space group names for Int. Tables # 39, 41, 64, 67, 68 added
  • moveTo AXIS [a,b,c,x,y,z]
  • rotates the model smoothly to a crystallographic or cartesian axis.
  • in the case of abc, the rotation places the remaining two axes
  • to the right and down (International Tables standard)
  • in the case of xyz, the rotation places the remaining two axes
  • to the right and up (standard Cartesian orientation)
  • for abc, if no unit cell is available, a simple {1 1 1 90 90 90} unit cell is used
  • added to application and popup View menus
  • New feature:
  • unitcell "type"
  • type can be "standard" or "parent" for now
  • derived from CIF records
  • "conventional" and "primitive" may follow
  • unitcell "standard"
  • unitcell "parent"
  • unitcell "abc_offset"
  • abc_offset is of the form "a,b,c;0,0,0"
  • where a, b, and c, can be any expression involving a, b, and c
  • and 0 can be an offset
  • numbers can be expressed fractionally or as decimals
  • offset is optional, but semicolon is not
  • effect is cumulative -- unit cell is NOT first restored
  • reversed using !
  • examples:
  • unitcell "a+b,a-b,c;1/4,1/4,1/4"
  • unitcell "!a+b,a-b,c;1/4,1/4,1/4"
  • unitcell "a+b,a-b,c;"
  • JSmol: allow for a user callback for customization of menu
  • if (Jmol._showMenuCallback)
  • Jmol._showMenuCallback(menu, x, y);
  • show(xxx) function
  • same as script("show " + xxx)
  • set showUnitCellDetails TRUE (default)
  • FALSE removes a,b,c,alpha,beta,gamma lines
  • unitcell RESET (or RESTORE)
  • returns unit cell to original values and removes offset and scaling
  • resets width to fine line
  • restore UNITCELL
  • returns unit cell to original values and removes offset and scaling
  • show symop n "fmatrix"
  • show symop @1 @2 "fmatrix"
  • gives rational fractional matrix
  • BilbaoReader NONORM option -- reads displacements as actual values, not normalized
  • load ... filter "symop=..."
  • list of numbers separated by space, for example:
  • load quartz.cif packed filter "symop=2"
  • load quartz.cif packed filter "symop=2 3"
  • set echo depth x.x for standard echos
  • works for 3D echos now as well as 2D echos
  • values in percent of depth
  • x.x >= 1000 are (x.x % 1000) in front of the 3D position
  • x.x

New in Jmol 14.1.15 Dev (May 7, 2014)

  • Bug Fix:
  • CIF reader not filtering atoms by element
  • structure command may not properly remove residues from structures (F. Reichmann)
  • FRAME n setting frame to n - 1. (F. Reichmann)
  • unitcell {0 0 0}; in state leaves unit cell on
  • modulation of anisotropic parameters broken
  • Jana2006 reader does not accept filter "MODAVE"
  • msCIF with filter "MODAXES=X" broken

New in Jmol 14.1.14 Dev (Apr 26, 2014)

  • New feature:
  • getProperty(x, SQL_query)
  • -- Full SQL for any Jmol associative array.
  • -- Result is an array if x is an array.
  • LIKE operator extended to atom expressions
  • --as for other atom expressions, is not case-sensitive
  • "like" operator, strings only
  • rich SQL logic in GETPROPERTY, getProperty(), and within(dssr,"xxxx.yyy...")
  • -- syntax: [SELECT keys WHERE expression]
  • -- keys indicating only one key, such as "nt1", return just the value
  • -- keys may be a LIKE wildcard such as "nt*" or "*nt" or "*nt*" also return just the value(s)
  • -- keys * or */* means "return all values as an associative array"
  • -- keys */nt1,nt2 means "return a new associative array including only keys nt1 and nt2"
  • -- keys */nt* means "return a new associative array including all keys starting with nt"
  • -- if drilling to this associative array from a list, * or */... returns an array of key/value pairs
  • -- expression may be any standard Jmol expression that does not involve actual Jmol variables (instead, the variable names should all be the keys, and their values will be that given in the key:value pair)
  • -- keys may be "dotted" -- modelProperties.FreqValue -- but in this case the dotted key (FreqValue here) must be exact case. "modelProperties.freqvalue" would not work.
  • JANA2006 reader adds M40 molecular group support
  • -- no TLS modulation
  • -- no local axes (third header line of pos# record)
  • calculate structure dssr
  • -- fetches http://x3dna.bio.columbia.edu/dssr/?POST?opts=--hl --more&model=[pdb data]
  • -- builds auxiliaryInfo.models.n.dssr
  • -- displays summary report
  • -- complements calculate structure dssp, except it is done by the x3dna server at Columbia, not Jmol
  • (application only) -a --autoAnimationDelay
  • -- delay time in seconds for press-and-hold operation of toolbar animation buttons (default 0.2; set to 0 to disable)
  • calculate hbonds structure
  • -- now includes DSSR-calculated bonds for nucleic acids
  • select leadAtom(s)
  • -- selects *.CA, *.P and terminal O in nucleotides
  • set backboneSteps TRUE
  • -- draws base pair steps between dssr-identified base pairs

New in Jmol 14.1.13 Dev (Apr 4, 2014)

  • bug fix:
  • LOAD command cannot force XML types
  • load xmlvasp::vasprun.xml
  • load vasp::vasprun.xml
  • option without "xml" required only for Oddesey, as there are both Odyssey and XmlOdyssey
  • application file open fails when preview is unchecked in Edit|Properties
  • vectors using vibration scale, not vector scale
  • vector 0.01 misread as if integer "20" (pixel width)
  • Gaussian fchk+freq needs to propagate bonding as well to modes
  • JDX reading of older Chime-related ##PEAKASSIGNMENTS records
  • polyhedra display improperly when some vertex atoms are hidden (Nick Greeves)

New in Jmol 14.0.13 (Apr 2, 2014)

  • Bug Fix:
  • changes to var incomplete
  • JmolAppletSigned0.jar missing export classes (POV-Ray, VRML, for example)
  • Mac Spartan spardir reading
  • -- for web, use zipped up version of spardir
  • A=[]; A[3] = 5 not working
  • var x not isolated to script context
  • ellipsoid command broken
  • New Features:
  • Gaussian fchk file reader
  • var x,y,z;
  • -- commas optional
  • -- similar to JavaScript
  • -- initializes the variable to ""

New in Jmol 14.0.12 (Mar 31, 2014)

  • new feature:
  • JSpecView getSolutionColor fill/all/none/false
  • any combination of these four flags
  • fill: fill area under a VIS spectrum with color
  • none: remove fill
  • all: do this for all spectra, not just the selected spectrum
  • false: use interpolation method rather than curve fitting
  • JSpecView PEAK command -- adds PEAK GC/MS "#1" #1 here indicates "MS for first GC peak"
  • x= format("JSON", data) simple way to generate JSON code.
  • x = format("base64", data) creates base64-encoding of the data prepends the string with ";base64,"
  • binary byte array from array(s) where s starts with ";base64," from binary associative arrays
  • binary associative arrays Any array containing "$_BINARY_$" as a key.
  • x = write("PNGJ") Creates a binary associative array equivalent to writing a PNGJ file
  • Contains keys "_IMAGE_", "JmolManifest.txt", "state.spt" and all associated files.
  • write VAR x "filename" or write @x "filename"
  • x = load("myfile",true) Creates a binary associative array variable x that contains the contents of the file file.
  • data are stored as raw bytes.
  • filter "ATOM" opposite of filter "HETATM"
  • load ASYNC ....
  • script ASYNC .... load and script ASYNC start a new asynchronous thread to load the file and then continue after that.
  • JSmol/HTML5 only; others ignore
  • Mol3D reader
  • show CHEMICAL STDINCHIKEY
  • show CHEMICAL STDINCHI
  • load ":inchikey:xxxxx" requires STANDARD InChIKey (as from {*}.find("chemical", "stdinchikey")
  • x = {*}.find("chemical",type)
  • type is "smiles", "inchi", "stdinchi", "inchikey", "stdinchikey"
  • uses NCI/CADD CIR
  • Note that unlike SHOW CHEMICAL, "InChIKey=" and "InChI=" are dropped
  • Note that unlike SHOW CHEMICAL, trailing new line char is removed
  • x = smilesString.find("chemical",type)
  • type is "smiles", "inchi", "stdinchi", "inchikey", "stdinchikey"
  • allows going directly from SMILES to other quantities uses NCI/CADD CIR
  • Bug Fix:
  • NWChem reader broken
  • JSpecView GC/MS issues
  • JSmol callbacks should refer to "jmolApplet0" not "jmolApplet0_object"
  • set cameraDepth not working
  • note that loading of PyMOL files affects this setting, which is reset only using the INITIALIZE command
  • getProperty() function does not recognize a list as a variable and returns it as a string
  • Dsn6Reader.java misnamed, causing EDS map file load error in JavaScript only. (I did not know that was even possible!)
  • java.io.dataStreamReader.readShort() does not take into account JavaScript equivalence of short and int, causing "-1" to be read as 65535.
  • minimum modulationScale set to 1; should be 0.1.
  • translucent echo backgrounds broken
  • filter "HETATM" does not work
  • write XYZ broken by changes to the way arrays are shown with the PRINT command
  • x = adfjladj(3) crashes Jmol
  • x[0] = "tst" "here" "now" should cause script exception
  • isosurface MOLECULAR delivers wrong surface
  • spacefill ionic not working
  • set cameraDepth disabled
  • some translations not being carried out.
  • msCIF reader not accepting normalized commensurate Fourier vectors
  • JSmol/HTML MSIE local installation AJAX working again (still no binary files)

New in Jmol 14.0.11 (Mar 14, 2014)

  • New Feature:
  • JSpecView readers for ACD/Labs annotated MS, IR, Raman, and UV/VIS
  • displays fragments for MS (highlights atoms)
  • highlights atoms involved in an IR/Raman stretch
  • UV/VIS and Raman untested
  • JSpecView and Jmol read ACD/Labs assigned spectra block JDX files.
  • 2D MOL files with missing hydrogens on hetero atoms.
  • fully synced
  • drag-drop enabled
  • associative array standard "dot" notation
  • a.test = 33
  • print a.test
  • caveat: cannot do this with a.keys, a.size, or a.type
  • not implemented in Jmol 14.0 because of the feature change
  • associative array alternative ".." syntax
  • same as JavaScript and Java, but ".." instead of "."
  • for example: a["test"] == a..test
  • .covalentRadius added as more appropriate alias for .covalent
  • .bondingRadius added as more appropriate alias for .ionic
  • set bondingVersion
  • color(color1, color2, n, asHSL)
  • returns a color scheme as a string
  • colors can be of any nature
  • string or point, name or rgb
  • n colors; simple interpolation from color1 to color2
  • asHSL must be TRUE or FALSE;
  • when TRUE, uses hue/saturation/luminance instead of rgb gradient
  • added simpler associative array notation: [key:value,...]
  • no quotes required
  • supplements {"key":value,...} where quotes are still required due to conflict with atom set chain descriptors such as {a:b}.
  • catchable THROW
  • asynchronous resumable processes
  • SAVE CONTEXT contextName
  • show SAVED
  • delete $SAVED savedName
  • RESUME with arguments is synonymous with RESTORE
  • Better idea for THROW
  • Bug Fix:
  • applet language localization skipping translations containing \"
  • application language localization does not include defs defined for JmolApplet
  • JSpecView/JSME connection with simulated and ACD/Labs annotated spectra
  • JSpecView loading simulation now compatible with synced applets
  • drag/drop not working for JSV applet
  • solid-state NMR calc (Magres) should not apply "nearest-atom-only" algorithm for measure ALL in dipolar coupling measurements
  • state contains: zap;load /*data*/ data "append inline"
  • zoomto without time goes over 2 seconds, not 1 second
  • print "id" + "x" fails (back to 13.2 at least)
  • animFrameCallback not reporting for each morph
  • inline-if fails if not at end of statement
  • Jmol math fix for new . notation.
  • state reading broken in most recent version at chemapps
  • ++/-- compatibility with no-comma arrays
  • print ++b["test"] fails
  • ++b["test"] fails
  • a[6][8] = "q" not working correctly when a is a string
  • {*}.covalent is misleading in that it is a mix of covalent and ionic bonding distances.
  • try { ... throw ...} catch {....} continues through catch when resumed.
  • anonymous context { ..... } not closed
  • JSON of 4x4 matrix (M4) fails

New in Jmol 14.1.10 Dev (Feb 20, 2014)

  • New feature:
  • THROW command

New in Jmol 14.0.10 (Feb 20, 2014)

  • Bug fix:
  • color atoms formalcharge not saved in state
  • averageAtomPosition never updated.
  • load of model with one atom does not set center to that atom
  • HTML5 popup frank mini-menu not implemented
  • HTML5 popup menu checkboxes not turning off
  • zap or zap {atom expression} broken

New in Jmol 14.0.9 (Feb 19, 2014)

  • Bug fix:
  • recently released 14.0.8 introduced a math bug that caused y = "test" + x.f() to be evaluated as ("test" + x).f()
  • long-time multiple unary minus bug (at least 6 years!) that print 3 +(- -3) evaluates to 0, not 6.
  • New feature: WRITE "filename" AS type
  • allows setting type at end of WRITE command using AS

New in Jmol 14.0.8 (Feb 15, 2014)

  • Feature change:
  • IDTF exporter now calling media9 rather than movie15 in accompanying TeX file
  • New feature:
  • JSmol Info.z, Info.zIndexBase
  • 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
  • Can use Tinker:: but this is only required if first line is JUST an atomCount
  • no need to give SMILES; Jmol can generate it from {model1}
  • generates SMILES with explicit H atoms
  • Bug fix:
  • Set defaultLoadScript "{0 0 0}" actually sets that to {1 1 1}
  • goes way way back to early Jmol math where there were no point-type variables
  • PyMOL reader update for Version 1700 lacking setting 83.
  • -m option not working with Jmol.jar
  • PNGJ files within ZIP collections not being read.
  • tensor("efg", "value") should return sparce array, not dense for missing tensors
  • JSmol now allows writing POVRAY, MAYA, IDTF, VRML, etc. both from Java and from HTML5 code: reworking of export classes
  • label @{math expression...} not working
  • interpretation of x and @x in select commands and {...} phrases

New in Jmol 14.1.8 Dev (Feb 7, 2014)

  • 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
  • Bug Fix:
  • substructure() function using SMILES instead of SMARTS, so only full structures; better error trapping and messages in SMILES-related methods
  • make webexport discovery of path to Jmol.jar and jsmol.zip more robust.
  • getProperty extractModel not honoring subset
  • set pdbGetHeader TRUE does not capture REMARK3 REMARK290 REMARK350
  • getProperty("JSON",....) should wrap value in {value:...}
  • MO persistent translucency broken in 11.x
  • show MENU write MENU load MENU all broken in 12.2
  • {*}[n] should be empty if nAtoms

New in Jmol 14.1.6 Dev (Jan 28, 2014)

  • bug fix: translucent geosurface was turned off

New in Jmol 14.0.7 (Jan 28, 2014)

  • bug fix: 14.0.6 fatally bugged -- unitcell and echo rendering, getProperty

New in Jmol 14.0.5 (Jan 10, 2014)

  • Bug Fix:
  • LCAOCartoon translucency broken
  • translucent backbone broken
  • pqr,p2n readers broken
  • isosurface map property xxx can fail if surface is a fragment that (somehow) has a point not associated with an underlying atom.

New in Jmol 14.1.4 Dev (Jan 6, 2014)

  • Bug fix:
  • PDB byChain, bySymop not supported.
  • incommensurate composite structures not packed into unit cell properly
  • incommensurate composite structures - wrong unit cell for d > 1
  • if load "" fails, last file name is lost
  • print a (operator) b not processing string parameter B consistently across operators
  • composite structures reading for JANA2006 M50/M40 files
  • capture time slightly off; needs 50 ms addition. This may vary with rendering speeds.
  • CIF reader goes into molecular mode even if geom_bond block is all "? ? ? ? ?"
  • n-d incommensurate modulated composite structures (preliminary testing)
  • getProperty atomInfo broken for modulated atoms
  • x.distance.min(y) broken
  • New feature:
  • {xxx}.distance.all({yyy}) returns float[][] of values
  • expanded unit cell ijk notation
  • filter "MODCELL=x"
  • MSCIF reader now allowing up to d=10; was d=6
  • escape pressed cancels pending measurement
  • {xxx}.getProperty("yyy")
  • unitcell {atomset}
  • altloc set for msCIF _atom_site_subsystem_code
  • select ON ; select OFF
  • atomSet1.distance.min(atomSet2, TRUE)
  • atomSet1.distance.min(point, TRUE)
  • atomSet1.distance.max(atomSet2, TRUE)
  • atomSet1.distance.max(point, TRUE)

New in Jmol 14.0.4 (Jan 6, 2014)

  • bug fix: rockets broken
  • bug fix: PDB byChain, bySymop not supported.

New in Jmol 14.0.3 (Dec 30, 2013)

  • New feature:
  • filter "MODCELL=x"
  • incommensurate composite readers Jana2006 and CIF
  • sets base cell to specified subsystem
  • MSCIF reader now allowing up to d=10; was d=6
  • escape pressed cancels pending measurement
  • {xxx}.getProperty("yyy")
  • only for FIRST atom
  • returns getProperty("atomInfo.yyy", {xxx})[1] (not xxx.yyy.all)
  • unitcell {atomset}
  • unit cell based on first atom of atom set.
  • canceled by any unitcell {none}
  • or other unitcell command other than on/off and width
  • altloc set for msCIF _atom_site_subsystem_code
  • sets % and also configuration
  • prevents covalent bonding between subsystems
  • select ON ; select OFF
  • same as selectionHalos ON/OFF
  • deprecates selectionHalos command
  • atomSet1.distance.min(atomSet2, TRUE)
  • atomSet1.distance.min(point, TRUE)
  • atomSet1.distance.max(atomSet2, TRUE)
  • atomSet1.distance.max(point, TRUE)
  • returns single closest/furthest atom in atomSet1 from point or atomSet2
  • Bug fix:
  • incommensurate composite structures not packed into unit cell properly
  • incommensurate composite structures - wrong unit cell for d > 1
  • if load "" fails, last file name is lost
  • print a (operator) b not processing string parameter B consistently across operators
  • composite structures reading for JANA2006 M50/M40 files
  • capture time slightly off; needs 50 ms addition. This may vary with rendering speeds.
  • CIF reader goes into molecular mode even if geom_bond block is all "? ? ? ? ?"
  • n-d incommensurate modulated composite structures (preliminary testing)
  • getProperty atomInfo broken for modulated atoms
  • x.distance.min(y) broken
  • code: generic javajs.util.Matrix class added based on Jama code for inversion using L/U decomposition

New in Jmol 14.0.2 (Dec 19, 2013)

  • Bug fix:
  • modulation not distinguishing between q and t;
  • modulated measurements not working
  • not skipping set defaultLattice "{NaN NaN NaN}"
  • isosurface map atomic orbital fails
  • vibrational display of modulation with distances doesn't update
  • vibration off causes unnecessary warning in console
  • draw symop broken
  • array.mul(matrix3f) crashes Jmol
  • select symop=1555 broken
  • set picking dragSelected not working
  • Code:
  • refactored CifReader, separating out MMCifReader and MSCifReader
  • minor renaming/refactoring of methods in SV
  • adds javajs.api.JSONEncodable interface
  • super-simple implementation in org.jmol.script.SV
  • allows implementations of javajs to deliver custom JSON results

New in Jmol 14.1.2 Dev (Dec 14, 2013)

  • new feature: JavaScript: JSmol api Jmol.evaluateVar(applet, expression)
  • better than Jmol.evaluate because result is a JavaScript variable, not a string.
  • DEPRECATING JSmol api Jmol.evaluate(applet, expression)
  • new feature: getProperty("JSON", ....)
  • returns JSON code for property
  • allows JavaScript: x = Jmol.getPropertyAsArray("variableInfo","some expression")
  • new feature: getProperty variableInfo allows retrieval of variables in Java or JSON format
  • evaluates expression
  • defaults to "all"
  • new feature: modulation adjustable by q and t, up to d=3
  • new feature: pickedList -- ordered array of recently picked atoms
  • can be used the same as the PICKED variable, but that is ordered sequentially, not temporally
  • new feature: array.pop(), array.push()
  • similar to JavaScript
  • new feature: modulation scale x.x
  • new feature: caption "xxxxx" x.xnumber of seconds to run
  • new feature: modulation 0.2 // sets t-value
  • new feature: array.pop(), array.push(x)
  • a=[];a.push("testing");print a.pop()
  • new feature: select ON/OFF atom-set
  • turns selection halos on or off as well as doing the selection
  • convenience only
  • new feature: pt1.mul3(pt2)
  • returns {pt1.x*pt2.x, pt1.y*pt2.y, pt1.z*pt2.z}
  • if both are not points, reverts to simple multiplication
  • new reature: array.mul3(pt2)
  • applies mul3 to all elements of array
  • new feature: {atomset}.modulation(type, t)
  • delivers P3 (displacement modulation)
  • implemented only for type="D" (optional)
  • optional t is 0 by default
  • bug fix: modulation not distinguishing between q and t;
  • bug fix: modulated measurements not working
  • bug fix: not skipping set defaultLattice "{NaN NaN NaN}"
  • bug fix: isosurface map atomic orbital fails
  • bug fix: vibrational display of modulation with distances doesn't update
  • bug fix: vibration off causes unnecessary warning in console
  • bug fix: draw symop broken
  • bug fix: array.mul(matrix3f) crashes Jmol
  • bug fix: select symop=1555 broken
  • bug fix: set picking dragSelected not working
  • code: refactored CifReader, separating out MMCifReader and MSCifReader
  • code: minor renaming/refactoring of methods in SV
  • code: adds javajs.api.JSONEncodable interface
  • super-simple implementation in org.jmol.script.SV allows implementations of javajs to deliver custom JSON results

New in Jmol 14.0.1 (Dec 5, 2013)

  • New features:
  • Jmol._j2sLoadMonitorOpacity (default 55)
  • load() function, as in print load("xxx"), limited local file reading in applet:
  • no root-directory files
  • no files without extension
  • no files with any "/." in path
  • JAR files securely signed
  • applet JAR files include JNLPs (Java Network Launch Protocols) for local file loading
  • JSmol URL options _USE= _JAR= _J2S= overrides for Info data
  • (was present but undocumented) print quaternion([array of quaternions])
  • returns spherical mean a la Buss and Fillmore (http://www.math.ucsd.edu/~sbuss/ResearchWeb/spheremean/)
  • print quaternion([array of quaternions], true)
  • returns standard deviation for spherical mean a la Buss and Fillmore (http://www.math.ucsd.edu/~sbuss/ResearchWeb/spheremean/)
  • units are angular degrees
  • named quaternion modulus values
  • print quaternion(1,0,0,0)%"matrix"
  • options include w x y z normal eulerzxz eulerzyz vector theta axisx axisy axisz axisangle matrix
  • set celShadingPower
  • sets strength of cel shading
  • integer values
  • default 10 is a thick line
  • 5 is a fine line
  • 0 turns cel shading off
  • negative value removes interior shading -- outline only
  • operates on pixel based on normal to light source (power > 0) or user (power < 0)
  • sets color to background contrast (black or white) when normal_z < 1 - 2^-(|celShadingPower|/10)
  • mmCIF reading reports _citation.title in Jmol scripting console
  • minimize SELECT {atomset} ONLY
  • ONLY option excludes all other atoms
  • minimize {atomset}
  • implicit SELECT and ONLY
  • "extensions" directories in JSmol for contributed JS and SPT scripts
  • jsmol/js/ext
  • jsmol/spt/ext
  • load ... filter "ADDHYDROGENS"
  • -- local set pdbAddHydrogens just for one load command
  • compare {1.1} {2.1} BONDS SMILES
  • list = compare({atomset1} {atomset2} "SMILES" "BONDS")
  • list = compare({atomset1} {atomset2} SmartsString "BONDS")
  • write JSON xxx.json
  • set particleRadius
  • global radius for atoms over the max radius value (16.0)
  • defaults to 20.0
  • CIF and PDB filters "BYCHAIN" and "BYSYMOP" for virus particulation
  • creates just one atom per chain or per symop
  • size can be scaled larger than the max of 16 Angstroms using, for example:
  • set particleRadius 30;
  • spacefill 30; // any number over 16 here uses particleRadius instead
  • symop() function allows symmetry from biomolecule filter for PDB and mmCIF
  • isosurface SYMMETRY
  • applies symmetry operators to isosurface
  • more efficient rendering and creation
  • default selection is {symop=1} only
  • default coloring is to color by symop based on propertyColorScheme
  • new atom property: chainNo
  • sequentially from 1 for each model;
  • chainNo == 0 means "no chain" or chain = ''
  • new propertyColorScheme "friendly"
  • color-blindness-friendly color scheme
  • used at RCSD
  • JSpecView completely Java-free; includes 2D nmr and PDF printing of spectra
  • WRITE PDF "xxx.pdf" quality > 1 requests landscape mode
  • uses efficient custom PDF creation classes
  • sizes image to fit if too large
  • JSpecView adds PDF and 2D NMR for JavaScript
  • load "==xxx" FILTER "NOIDEAL"
  • chemical component load from PDB using the "nonideal" coordinate set
  • Bug fix:
  • write CD removed; ChemDoodle has changed formats; use JSON instead
  • PDB and CIF files indicated assemblies such as PAU as large negative number
  • COMPARE with no rotation starts infinite loop
  • looping problem with delay(-1)
  • Mouse wheeling for Chrome in JavaScript
  • JavaScript popup menu fix for language changes
  • JavaScript core components not being processed; Jmol._debugCode not recognized
  • unitcell offset incorrectly for biomolecules; origin incorrect for axes.
  • isosurface/mo FRONTONLY broken
  • language localization broken in JavaScript
  • ADF reader not reading MO output from DIRAC Build 201304052106
  • Safari reports yellow Jmol info instead of asking to accept applet
  • tag needed to be
  • CIF reader not handling _pdbx_struct_assembly_gen.assembly_id properly
  • wrong atom set for load =3fsx.cif filter "ASSEMBLY 1"
  • [#558 Compatibility issue with ChemDoodle] JSmol error in definition of Number.toString()
  • mouse wheel not working properly
  • JavaScript J2S compiler error does not coerce int += float to integer
  • JavaScript WEBGL option broken
  • JavaScript NMRCalculation does not access resources
  • JavaScript stereo not implemented
  • MOL reader fix for multiple-model file (just 13.3.9_dev)
  • MOL reader error with load APPEND -- does not continue atom numbers
  • CIF modulation reader not reading linear combinations of cell wave vectors
  • CIF reading with filter "BIOMOLECULE 1" fails if only the identity operation
  • mmCIF reader not reading all _pdbx_struct_assembly_gen.oper_expression options
  • PDB CRYST entry 1.0 1.0 1.0 90 90 90 should mean "no unit cell" regardless of biomolecule filter
  • isosurface slab not adapting well for flat molecules such as HEM
  • print userfunc() may fail (userfunc() by itself is fine)
  • within(helix) not implemented for C-alpha-only polymers
  • _modelTitle not updated when a new file is loaded or zapped
  • {*}.symop.all not delivering symmetry operator appropriately
  • for triple bond in SMILES in URLs
  • build.xml missing PDF creation classes
  • [#554] for
  • load http://sourceforge.net/p/jmol/code/18631/tree/trunk/Jmol-datafiles/xyz/3structs.xyz?format=raw;
  • zap model!=1.1;
  • following Java update, adding proper path check for local signed applet
  • {xxx}.property_xx not saved in state (broken 8/7/2013 rev 18518)
  • Manifests updated for signed and unsigned applet JAR files
  • write fails
  • applet scriptWait() method broken
  • PyMOL session may display unit cell after read from saved state
  • MMCIF reader fails for multiple assembly types
  • CIF reader "biomolecule 1" translating to "molecular" rather than "assembly"
  • load trajectory with multiple files not working
  • JS applet popup menu not closing properly upon language change
  • HTML checkbox id attribute not assigned

New in Jmol 13.3.8 Dev (Nov 6, 2013)

  • new feature: JSpecView adds PDF and 2D NMR for JavaScript
  • bug fix: following Java update, adding proper path check for local signed applet
  • bug fix: {xxx}.property_xx not saved in state (broken 8/7/2013 rev 18518)
  • bug fix: Manifests updated for signed and unsigned applet JAR files
  • bug fix: write fails
  • bug fix: applet scriptWait() method broken
  • bug fix: PyMOL session may display unit cell after read from saved state
  • bug fix: MMCIF reader fails for multiple assembly types
  • bug fix: CIF reader "biomolecule 1" translating to "molecular" rather than "assembly"
  • bug fix: load trajectory with multiple files not working
  • bug fix: JS applet popup menu not closing properly upon language change
  • bug fix: HTML checkbox id attribute not assigned
  • code: Required manifests added for Java Ju51 (January, 2014).
  • code: JmolOutputChannel moved to javajs.util.OutputChannel
  • code: jsmol.php fixed to allow " in saveFile method
  • code: refactoring Parser into javajs.util
  • code: DSSP moved to org.jmol.dssx, reducing JSmol bio load by 20K

New in Jmol 13.2.8 (Nov 2, 2013)

  • Bug Fixes:
  • Following Java update, adding proper path check for local signed applet
  • {xxx}.property_xx not saved in state (broken 8/7/2013 rev 18518)
  • write fails
  • applet scriptWait() method broken
  • MMCIF reader fails for multiple assembly types
  • load trajectory with multiple files not working
  • JS applet popup menu not closing properly upon language change
  • HTML checkbox id attribute not assigned

New in Jmol 13.2.7 (Oct 2, 2013)

  • Bug Fixes:
  • Crystal reader not applying lattice translations
  • translations incomplete
  • state saving of echo "bottom left" instead does "top left"
  • multiple-file crystal structures may fail to load if there is a lattice shift
  • space group not being calculated automatically for user-defined space groups
  • angle measurements can end with "//nanometers"
  • first pending measurement loses label

New in Jmol 13.3.7 Dev (Oct 1, 2013)

  • Bug fix:
  • Multiple-file crystal structures may fail to load if there is a lattice shift
  • Space group not being calculated automatically for user-defined space groups
  • Measures broken

New in Jmol 13.3.6 Dev (Sep 28, 2013)

  • new feature:
  • adds remote logging for applet and app via http:// and via function for applet using jmolApplet0._applet.viewer.setLogfile(function(data) {......})
  • compare {1.1} {2.1} BONDS "smiles"
  • show BEST ROTATION / show BEST VOLUME (better than undocumented show rotation best, show rotation volume)
  • set animationMode "ONCE" "LOOP" "PALINDROME"
  • show animationMode; x = animationMode
  • CAPTURE command, including ROCK and SPIN
  • set drawFontSize // defaults to 14.0
  • FEATURE CHANGE:
  • added bindings: "drag" and "up" -- may affect power users who use BIND command
  • new: _center CTRL+SHIFT+LEFT+click
  • new: _reset
  • bug fix:
  • JSON NIO port SYNC broken
  • print getProperty("image", "width=200;height=300;type=png") not working
  • write IMAGE "t.png" not working
  • rotate -10 -10 not working
  • mouse bindings not distinguishing DOWN/CLICK/DRAG/UP properly
  • mouse bindings _center and _reset not working
  • show MOUSE not including user-defined mouse bindings
  • chains improperly selected in JSmol/HTML5
  • JSmol/HTML5 not allowing drag-drop or file loading from a local drive.
  • JSmol/HTML5 not allowing WRITE FILE ?
  • JSmol/HTML5 not allowing WRITE xxx.pdb, xxx.mol, etc
  • platformSpeed persists but appears unreadable after loading a state
  • JavaScript version InputStreamReader not processing non-UTF data correctly
  • second reading of older PNG files with embedded script fails due to improper png file caching
  • code:
  • continued refactoring of ScriptEvaluator to ScriptExt
  • refactoring to isolate LabelToken and Labels from core JavaScript load
  • refactoring, simplification of image output and export
  • major simplification and consolidation of file I/O methods, including exporters, using JmolOutputChannel class.
  • code merge between 13.2 and 13.3
  • major clean-up of ActionManager

New in Jmol 13.3.5 Dev (Sep 27, 2013)

  • new feature:
  • show NMR taps into NMRDB directly
  • bug fix:
  • CRYSTAL reader not allowing vibration for conventional cell
  • JavaScript binary for Safari and Opera new feature: stutureModifiedCallback
  • ID @id vector fails

New in Jmol 13.2.4 (Sep 13, 2013)

  • Bug fix:
  • select 1-5 broken

New in Jmol 13.3.3 Dev (Jul 29, 2013)

  • bug fix: Gaussian cube format changed and not recognized (extra "1" in third line).
  • bug fix: PDB header don't do trim();
  • bug fix: isosuface ID @x ... becomes isosurface ID "@x"
  • bug fix: color chain broken
  • bug fix: rockets with color chain
  • bug fix: filter ":X" broken
  • bug fix: O not 2- in PDB adding hydrogens
  • bug fix: NWChem reader error
  • bug fix: JSmol 2-sided surface color problem due to Java2Script miscoding of Number.shortValue()
  • bug fix: PyMOLMeshReader code clean-up.

New in Jmol 13.2.3 (Jul 29, 2013)

  • bug fix: Gaussian cube format changed and not recognized (extra "1" in third line).
  • bug fix: PDB header don't do trim();
  • bug fix: isosuface ID @x ... becomes isosurface ID "@x"
  • bug fix: color chain broken
  • bug fix: rockets with color chain
  • bug fix: filter ":X" broken
  • bug fix: O not 2- in PDB adding hydrogens
  • bug fix: NWChem reader error bug fix: JSmol 2-sided surface color problem due to Java2Script miscoding of Number.shortValue()
  • bug fix: PyMOLMeshReader code clean-up.
  • bug fix: PyMOL mesh reader broken for EDS files
  • bug fix: MMCIF_PDBX structures not being read
  • bug fix: allow PyMOL PSE files reading as part of a set of files, not just by itself bug fix: quaternion plots not synched with originating structure
  • bug fix: 1skt.cif loses secondary structure (MMCIF_PDBX reader needed)
  • bug fix: set showTiming not functional
  • bug fix: set pdbAddHydrogens does not set formal charge on O(1-) or "O" of H2O (2-)
  • bug fix: PNGJ files not properly caching, and PSE files with DOCACHE option
  • new feature: calculate formalCharge

New in Jmol 13.2.0 (Jul 19, 2013)

  • new feature: set exportScale x.x -- adjusts export scale -- only implemented for VRML and X3D exporters
  • new feature: unitcell center {atomset}
  • new feature: unitcell center {fx fy fz}
  • new feature: {*}.ms, {*}.cs %[ms] %[cs] magnetic shielding and chemical shift
  • new feature: label xxx
  • new feature: set shift_H xxx (ppm)
  • new feature: getProperty("nmrInfo")
  • new feature: NMR analysis tools:
  • x = measure({a} {b} "isc_hz") - J coupling
  • x = measure({a} {b} "dc_khz") -- dipolar constant
  • MEASURE {a} {b} "2://dc_hz" -- dipolar constant
  • MEASURE {a} {b} "2:%3.2VALUE//dc_khz" -- dipolar constant
  • MEASURE {a} {b} "2://khz" -- defaults to dc_khz
  • MEASURE {a} {b} "2://hz" -- defaults to isc_hz
  • MEASURE {a} {b} "2://isc_1hz"
  • new feature: {xxx}.tensor(type,what) type = "temp", "ms", "efg", etc.
  • returns a list of data. isc-type returns a list of lists [index1, index2, value]
  • what = "j" (isc-type only) "chi" (efg only) "dc" (dipolar coupling constant; type ignored) "eigenvalues" float[v1,v2,v3] "eigenvectors" P3[V1,V2,V3] "value" Float (v3) "asymMatrix" Matrix3f "symMatrix" Matrix3f "isotropy" Float v_iso=(v1 + v2 + v3)/3 "anisotropy" Float v3 - (v1 + v2)/2 "asymmetry" Float (v2 - v1)/(v3 - v_iso) "eulerzxz" float[] "eulerzyz" float[] "quaternion" Quaternion "indices" float[modelIndex,atomIndex1,atomIndex2] "string" selected readable data "type" anything else
  • all key/value pairs new feature: bind "+:"
  • added "+:" indicates to NOT unbind Jmol action
  • new feature: ellipsoid OPTIONS "xxxx"
  • "xxxx" is a quoted string of options separated by semicolon: "arcs;arrows;axes;ball;dots;fill;wireframe" with optional "no" in front of each new feature: SET ECHO POINT {atom or point}
  • allows 2D and 3D echos to have pointers to atoms or points
  • bug fix: set shift_XX not saved in state
  • bug fix: JSmol menu not disappearing upon touch outside menu
  • bug fix: PyMOL surface map reading error
  • bug fix: magres measurement of dipole coupling constants do not reach just min-distance set bug fix: "cs" for Cs symmetry broken in chemical shift
  • bug fix: cartoons with too small nonzero size will not render anything code: org.jmol.quantum.NMRCalculation smoothly handles J-coupling and dipolar coupling constant display. code: org.jmol.quantum.NMRCalculation implements org.jmol.api.JmolNMRCalculation: public float getQuadrupolarConstant(Tensor efg); public float getJCouplingHz(Atom a1, Atom a2, String type, Tensor t); public float getDipolarConstantHz(Atom a1, Atom a2); public float getDipolarCouplingHz(Atom a1, Atom a2, V3 vField); public JmolList getInteractionTensorList(String type, BS bs); public BS getUniqueTensorSet(BS bs); public JmolList getTensorInfo(String tensorType, String infoType, BS bs); public Map getMinDistances(MeasurementData md); public boolean getState(SB sb); public Object getInfo(String sym)

New in Jmol 13.0.14 (Apr 1, 2013)

  • bug fix: isourface boundbox plane ....
  • bug fix: isosurface boundbox {pt1} {pt2} plane ...
  • bug fix: JVXL 1.0 format reading broken bug fix: MOL2 reader not properly assigning element symbols bug fix: isosurface slab translucent broken when saved in state
  • bug fix: isosurface slab translucent mesh broken when saved in state
  • bug fix: sync socket connections not working bug fix: WRITE PNGJ does not allow sizing of image bug fix: backbone/spine defs do not take into account phosphorylated proteins. Better: "@backbone protein&(_a>=1&_a=64&_a=6&_a=72)", "@spine protein&_a>=1&_a=6&_a

New in Jmol 13.1.13 Dev (Feb 22, 2013)

  • bug fix: set picking IDENT when picking is already ident can cancel a pending measurement
  • bug fix: applet does not refresh when mouse exits with pending measurement
  • bug fix: labels within fog should be hidden
  • bug fix: load CENTROID does not always work -- wrong implicit normalization flag (was -1 instead of 1)
  • bug fix: property_xxx does not work (since 10/3/12, 13.1.7)
  • bug fix: The "show history" command is supposed to clear out the "show history" command itself, but only if it is a top-level command (from the console), but it does more than that if it is part of script("show history"). Probably true with all recent versions of Jmol.
  • bug fix: isosurface binary file reading (MRC, CCP4, O, binary PMESH, etc.) broken

New in Jmol 13.0.12 (Feb 8, 2013)

  • MOPAC2012 files not recognized

New in Jmol 13.1.12 Dev (Jan 24, 2013)

  • PDB reading of X-PLOR using hybrid-36 and NAMD files using hex -- see
  • new feature: load xxx.pdb filter "TYPE i,n" -- loads custom text fields into the "atomType" property of an atom upon customized PDB file loading where i is the number of the column (starting with 1) and n is the number of columns -- text is trimmed

New in Jmol 13.0.10 (Dec 14, 2012)

  • bug fix: PDB occupancies for first atoms may be 0.0 instead of 1.0
  • bug fix: select *W does not work bug fix: !quit was not stopping animation and vibration bug fix: 13.0.9 breaks Gaussian reader, MagRes reader, NAME= load option broken in applet due to ref to jspecview.util.TextFormat
  • bug fix: setEllipsoid... options not implemented for nonthermal ellipsoids in 13.0 or 13.1

New in Jmol 13.0.9 (Nov 24, 2012)

  • bug fix: Jmol application toolbar picking tool should not select none
  • bug fix: ellipsoid rendering does not allow axes less than 0.2 Angstroms (changed to 0.02)
  • bug fix: CASTEP density reader fails to reset origin to 0 0 0 in mapping
  • bug fix: UTF files with BOM (byte order marker) present not read correctly
  • bug fix: UTF files within GZIP or ZIP files not read correctly
  • bug fix: set picking draw no longer works in Jmol 13.0 or 13.1
  • bug fix: select resno=@{n+3} fails in 12.2, 13.0, and 13.1

New in Jmol 13.1.8 Dev (Oct 29, 2012)

  • code: clearing font cache upon zap.
  • code: HTML5-only JavaScript full text working
  • code: HTML5-only JavaScript version working
  • new feature: much better text rendering using 3-bit translucency
  • bug fix: boundbox $pmeshID, center $pmeshID, and zoomto $pmeshID not implemented
  • bug fix: stronger (bold) frame labels
  • bug fix: no automatic change to bold for antialiasDisplay or PovRAY
  • bug fix: try/catch not working when embedded in another context
  • bug fix: JmolData not producing output for PRINT commands
  • bug fix: JmolData setting haveDisplay true, then failing to get mouse manager
  • bug fix: MRC file reader not setting default cutoff correctly
  • bug fix: (13.1 only) MRC/DNS6 file readers fail
  • bug fix: MRC surface file reader with symmetry error
  • bug fix: (13.1 only) minimization broken

New in Jmol 13.0.6 (Oct 25, 2012)

  • bug fix: PDB 4B2Q, with faulty (incomplete) REMARK 350 not read

New in Jmol 13.0.4 (Sep 11, 2012)

  • bug fix: translate selected x ...
  • bug fix: ISOSURFACE saving in state broken 7/30/12 in 13.0.RC3
  • bug fix: simple isosurface PLANE not saved in state
  • bug fix: isosurface command with MAP from state when saved to state may fail

New in Jmol 13.1.2 Dev (Sep 4, 2012)

  • new feature: cache ADD "filename"
  • adds a file into the memory cache as a set of bytes
  • new feature: cache REMOVE "filename"|ALL
  • removes a file from the cache
  • new feature: show cache -- displays the cache as an array
  • new feature: cache() function -- returns the cache as an associative array {filename: nBytes, filename: nbytes,...}
  • new feature: write INLINE "xxxx" "filename" for example: write INLINE "testing" "myfile.txt" for example: write INLINE @{load("$caffeine")} "caffeine.mol"
  • new feature: set defaultDropScript for drag-drop and File|Open
  • new feature: (JmolViewer) public void cacheFile(String fileName, byte[] bytes) -- allows a mechanism for applets or embedding apps to deliver file content as bytes -- for applets, first getPropertyAsJavaObject("Viewer")
  • bug fix: translate x 0 does not recenter the model in the window
  • bug fix: PDB polymers of length 1 allow size to be set and appear {visible} but are not bug fix: OPEN dialog doesn't allow for no PDB cartoons.
  • bug fix: open dialog for 1-residue PDB files does not show atoms.

New in Jmol 12.2.34 (Aug 22, 2012)

  • bug fix: isosurface SOLVENT producing cavity-like artifacts
  • bug fix: isosurface MINSET or SET not compatible with SLAB
  • bug fix: show $d1 where d1 is a DRAW object broken
  • bug fix: calculate hydrogens incorrect for proteins

New in Jmol 12.3.32 Pre (Jun 27, 2012)

  • new feature: drawHover displays ID for isosurface and reports to hoverCallback
  • new feature: load "$$xxxxx" loads 2D version, not 3D (used for JmolData connection with JME)
  • bug fix: compiler not synchronized; allows jmolEvaluate() to fail if two threads access it simultaneously
  • bug fix: getproperty isosurface after a "no-surface" isosurface call like load $water;isosurface sasurface fails
  • bug fix: color for hbonds/ssbonds backbone incorrect

New in Jmol 12.2.32 (Jun 27, 2012)

  • bug fix: compiler not synchronized; allows jmolEvaluate() to fail if two threads access it simultaneously
  • bug fix: getproperty isosurface after a "no-surface" isosurface call like load $water;isosurface sasurface fails
  • bug fix: color for hbonds/ssbonds backbone incorrect
  • bug fix: isosurface plane... map property temperature not working

New in Jmol 12.3.31 Pre (Jun 19, 2012)

  • bug fix: isosurface plane within map fails
  • bug fix: write broken in 12.3.30

New in Jmol 12.2.30 (Jun 14, 2012)

  • bug fix: background image NONE fails
  • bug fix: if(...) statement (no braces) broken in 12.2.21

New in Jmol 12.3.29 Pre (Jun 11, 2012)

  • new feature: Mopac archive reader, including internal coord. defs
  • use FILTER "NOCENTER" to NOT center atoms in unit cell
  • use CENTROID for complete molecules with centroids within unit cell
  • use PACKED CENTROID for complete molecules with any atoms within unit cell properties stored in auxiliaryInfo # use getProperty auxiliaryInfo or x = getProperty("auxiliaryInfo".foo) to retrieve # new feature: set pathForAllFiles "..."
  • all files, local or remote, will be taken from the indicated path
  • the indicated path may be a zip file entry (ending with "|")
  • automatically reset to '' in case of an unrecoverable error in execution

New in Jmol 12.3.28 Pre (May 31, 2012)

  • new feature: isosurface
  • new feature: write VIBRATION n
  • writes 20 * n frames # -- n periods # -- some issues with first frame and value of n
  • new feature: load PACKED CENTROID # -- only complete molecules having centroid within or on the face of the unit cell # -- may not preserve # of atoms of unit cell
  • new feature: unitcell $isosurfaceID
  • new feature: unitcell [{center}, {a}, {b}, {c}] # -- sets unit cell for current model only
  • new feature: "plot data" command by itself opens a new frame with just one atom in it, at (0,0,0)
  • new feature: isosurface SLAB BRILLOUIN (or WIGNERSEITZ) # -- transposes an isosurface into the Brillouin-zone/Wigner-Seitz unit cell # -- based on the isosurface's vectors if there is no unit cell for this model. # -- for creating isosurfaces of Fermi surfaces

New in Jmol 12.3.27 Pre (May 25, 2012)

  • bug fix: draw pointgroup scale x.x -- changing x.x does not revise point group
  • bug fix: reading of JVXL-version 1 (nonXML) files does not display colors
  • bug fix: translate y 10 works, but translate Y 10 does not

New in Jmol 12.3.26 Pre (May 23, 2012)

  • sets the model's ID to "xxx"
  • can be used to switch to that model using model "xxx"
  • can be targeted file-specifically using "filename#xxx"
  • if two models have the same ID and no filename is given, # then the first model found becomes the current model
  • used for correlating non-Jmol synced applets
  • new feature: script "t.spt"(...variables...)
  • quotes are optional if file name does not include " " or "(" # -- "script" is optional if file name is quoted or ends with ".spt"
  • allows passing variables to a script much like a function call
  • variables will be in VAR named "_arguments" within that script (like JavaScript)
  • arguments, like all arrays in Jmol, is 1-based, 0-terminated (unlike JavaScript)
  • arguments is unsettable by the user # -- for standard script functions, _arguments will be []

New in Jmol 12.3.24 Pre (May 9, 2012)

  • new feature: SMARTS search for atom type using quotes: ["37"]-["58"]
  • new feature: SMARTS option /aromaticdouble/ allows distinguishing between aromatic single and double bonds
  • new feature; SMARTS option /aromaticstrict/ checks 6-electron rule for aromatics
  • new feature: CALCULATE partialCharge does MMFF94 charge calculation
  • all atom types validated
  • charge values validated to +- 0.001001 over the 761-atom dative validation set
  • new feature: isosurface CACHE
  • creates a JVXL version of the surface (possibly outside of Jmol, but that's not implemented yet)
  • saved by write JMOL as a JVXL file "isosurface_ID" # (where ID is the original isosurface ID) within the JMOL zip collection # -- Warning! not saved using write SPT
  • write JMOL or write PNGJ after using the CACHE option, not write SPT # -- invoked by isosurface file "cache://isosurface_ID"
  • cleared by reset CACHE
  • allows rapid recreation of an isosurface across file loads
  • possibly limited to a subset of surface types

New in Jmol 12.3.23 Pre (Apr 25, 2012)

  • new feature: PubChem search for name (which can be a CAS number), cid, or SMILES using ":"
  • from pubChemFormat = "http://pubchem.ncbi.nlm.nih.gov/rest/pug/compound/%FILE/SDF?record_type=3d";
  • (many thanks to Evan Bolton and Paul Thiessen (NIH) for their assistance on this. # load :name:tylenol
  • bug fix: callback functions for modular calls: applet0.readCallback(....)
  • bug fix: Molden reader problems reading frequencies
  • bug fix: VASP reader with {n n n} and vibration vectors problem
  • bug fix: in 2bat, SIA was considered part of the carbohydrate chain because we were not checking bonding

New in Jmol 12.2.22 (Apr 17, 2012)

  • bug fix: "connect;" command in states saved prior to 11.9.24 and then read by versions after that
  • The order in which Jmol created bonds changed in 11.9.24. Due to this, Jmol must check for the # version number of Jmol used to create a state, and if it was before this point, it must # apply "legacy" autobonding methods. Unfortunately, if that state from pre-11.9.24 versions # contains the "connect;" command, which it would if someone used the CONNECT command by itself
  • to regenerate all bonds in a model PRIOR to saving the state (Proteopedia does this), then
  • those scripts will be misread in versions 11.9.24-12.2.21/12.3.21.
  • bug fix: antialiasDisplay does not show drag-box properly
  • bug fix: SMARTS syntax [${xxx}n] and [${xxx}m-n] changed to [$n{xxx}] and [$m-n{xxx}]
  • to avoid conflict with specifying isotope

New in Jmol 12.3.19 Pre (Apr 2, 2012)

  • bug fix: set dragSelected disallows popup menu
  • new feature: select baseModel for JSpecView
  • new feature; model {atomset} -- model of first atom in this set
  • bug fix: MOPAC (PUBLIC DOMAIN) output reader can fail on reading vibrations
  • bug fix: Spartan 10 archives have .gz and .carc files. This fix adds .gz reading;
  • work-around is that Spartan 10 allows saving of Archive without carc compression, which is a proprietary format.

New in Jmol 12.3.18 Pre (Mar 19, 2012)

  • bug fix: allow for alternating list/hash entry:
  • for example: print getproperty("jspecview","##TITLE")["items"][1]["spectra"][1]["id"] instead of: print ((getproperty("jspecview","##TITLE")["items"][1])["spectra"][1])["id"] new feature: JSpecView reads and displays 2D spectra very quickly -- all
  • tested JCamp-DX 6.0 files readable. -- JSpecView 2.0.10176
  • bug fix: GaussianReader not reading "Natural Orbitals" section from
  • B3LYP 6-31g sp gfprint pop(full,NO)
  • bug fix: Jmol support for ZIP collection of JDX files read properly
  • bug fix: support for file reading with BOM UTF-8, UTF-16, or UTF-32
  • bug fix: script processor not recognizing UTF-8 Binary Order Mark at start of script
  • bug fix: (undocumented) POLYHEDRA {...} to {...} with COLOR or TRANSLUCENT fails bug fix: POLYHEDRA command or COLOR POLYHEDRA can change selection
  • bug fix: PDB reader doesn't recognize 16 LINK records at start of file
  • bug fix: script xxxx(xxx)xxx/xx.xxx fails at "(" due to revision 16201 2011-10-02)

New in Jmol 12.3.17 Pre (Mar 6, 2012)

  • new feature: allows simpler color scheme definition
  • color property occupancy "myscheme=red green blue"
  • Var x = ["red","green","blue"]; color property occupancy @{"myscheme=" + x}
  • bug fix: JCampDX reader resolving should allow spaces before "##TITLE"
  • bug fix: jvxl issue when color PHASE and translucent
  • upon reading JVXL doesn't handle translucency right
  • upon writing SPT doesn't preserve colors
  • bug fix: user variable lower case "x" not cleared by "X = none"
  • bug fix: draw HELIX fails for residue numbers < 0 # code: better Enum structure using name()

New in Jmol 12.3.16 Pre (Feb 22, 2012)

  • new feature: (application) SYNC ON; sync * "JSpecView:..." sends commands to JSpecView
  • new feature: (JSpecView) accepts commands using public syncScript(script)
  • bug fix: GAMESS-US reader error reading NBOs
  • bug fix: print [2, 3, 4].mul([3,4,5]) fails
  • bug fix: missing ANISOU records cause file-read error in PDB files
  • bug fix: JCAMP-DX reading by JSpecView for tiered BLOCK files

New in Jmol 12.2.15 (Feb 13, 2012)

  • bug fix: SLAB unit cell not showing all lines
  • bug fix: CRYSTAL reader needs to change to MOLECULAR when X(ANGSTROMS) found (fullerene slab)
  • bug fix: Popup Menu item hbond calculate should not require PDB

New in Jmol 12.3.14 Pre (Jan 31, 2012)

  • bug fix: state after frame RANGE or frame 0 not saved properly (state saves "frame all" instead of "frame 0")
  • bug fix: frame n does not work properly after load APPEND
  • bug fix: measurement units may appear as full word "nanometers" instead of "nm"
  • bug fix: user bindings do not access _atomPicked
  • solution is to add _ATOM _BOND _POINT _OBJECT to user binding actions

New in Jmol 12.2.13 (Jan 24, 2012)

  • bug fix: user bindings do not access _atomPicked
  • solution is to add _ATOM _BOND _POINT to user binding actions
  • bug fix: getProperty("bondinfo",[{13}]) gets info for atom 13 instead of bond 13
  • bug fix: isosurface offset does not change boundbox or zoom/center points
  • new feature: isosurface SCALE extends to volume file readers
  • new feature: zoom $isosurface1 0 -- scales to match isosurface boundbox
  • note to Bob: jpe needs update of img/blank.js js/top_buttons.js htm1/quickvs.js,qv_msgs.js molview/JmolAppletSigned.jar

New in Jmol 12.2.12 (Jan 16, 2012)

  • bug fix: show spacegroup not working
  • bug fix: lcaocartoon for allene central carbon py incorrect
  • bug fix: antialiasdisplay (and image writing) not compatible with scaleAngstromsPerInch bug fix: cannot write JPG images
  • bug fix: last group of protein cartoon will not display if it is not helix and not sheet

New in Jmol 12.3.11 Pre (Jan 11, 2012)

  • new feature: plot ramachandran
  • now those points .phi and psi return values
  • load 1crn.pdb;plot ramachandran;print {2.1}.psi # new feature: LOAD .... filter "reverseModels" does just that
  • for IRC calculation transition state -> minimum reversal # new feature: measures "2:%VALUE %UNITS//xx"
  • where xx is a specified unit such as nm or Angstroms
  • overrides set measurementUnits
  • fixes state problem when units or labels are changed after measurements are made
  • operates on selected measurements only (or all, if no measurements are selected)
  • bug fix: frame 0 during animation can cause exception
  • bug fix: changes in defaultDistanceLabel not always preserved in state correctly
  • bug fix: parameters can be set to invalid values using xxx = ... instead of set xxx ...
  • bug fix: (Application) proper Edit...Preferences dialog action

New in Jmol 12.3.10 Pre (Jan 3, 2012)

  • new feature: _animTimeSec
  • new feature: Application -- press and hold animation next/prev button to continuously run animation
  • new feature: write PDB adds CONECT records
  • for all multiple bonding and all HETATM bonds
  • uses CONECT i j j to indicate multiple bonding
  • new feature: compare {from} {to} FRAME
  • aligns frames automatically
  • particularly nice for IRC calculation animations
  • for example: compare {file=2} {1.1} FRAME
  • can be followed by quaternion, atom, or SMILES options
  • for example: compare {file=2} {1.1} FRAME ATOMS @1 @5 @2 @8 @3 @9
  • (all of file 2 atoms moved) file 2 atoms 1,2,3 aligned # with file 1.1 atoms 5,8,9)
  • if {to} is a subset of {from}, then FRAME is unnecessary,
  • and if ATOMS is included, then just the list of alignment
  • atoms is necessary.

New in Jmol 12.2.9 (Dec 12, 2011)

  • bug fix: set isKiosk should:
  • (a) not be reversible
  • (b) not allow file saves other than logging
  • (c) not allow prompt dialogs
  • (d) not allow console or popup menu or ScriptEditor
  • bug fix: background colors saved to state can be off very slightly
  • bug fix: draw PLANE with three vertices problems after save -- four-atom planes, not three
  • bug fix: x = file("?") fails on Cancel
  • bug fix: delay not allowed within try{...}

New in Jmol 12.2.8 (Dec 5, 2011)

  • bug fix: set picking DRAW does not work on polygon sets
  • bug fix: set picking DRAW does not report position change
  • bug fix: CifReader (molecular type, with GEOM_BOND records) adds
  • extra atoms when embedded in JMOL or PNGJ file or part load FILES command
  • bug fix: PdbReader -- crystallographic non-PDB files not checking special positions

New in Jmol 12.3.7 Pre (Nov 28, 2011)

  • bug fix: show orientation shows incorrect zyz format if reset uses file-based orientation matrix (smol, Sygress)
  • bug fix: isosurface plane xy map mep
  • code: MPJmolApp work
  • bug fix: user variables should not be rest by INITIALIZE in an spt file
  • new feature: "Write PNG+JMOL" added to application and signed applet menu # code: dispensing with InputStream in favor of BufferedInputStream
  • new feature: write PNGJ
  • creates a PNG file with appended JMOL (zip) data containing
  • all necessary files, MANIFEST, and script file.
  • viewable in directories as an "icon" and readable by image readers
  • draggable back into Jmol and readable using LOAD
  • PNG file includes:
  • iTXt field "Jmol Type\0PNGJxxxxxxxxx+yyyyyyyyy"
  • where xxxxxxxxx is a pointer to the ZIP data # yyyyyyyyy is the number of ZIP data bytes
  • iTXt field "Software\0Jmol 12.3.7 2011-10-11 15:30"
  • iTXt field "Creation Time\0Tue, 24 Nov 2011 19:56:10 -0600"
  • yyyyyyyyy bytes of .JMOL zip data
  • show FILE "xxx.PNG" will show list of contained files.
  • show state FILE "xxx.PNG" will extract state
  • show FILE "xxx.PNG|1crn.pdb" for example will extract file
  • bug fix: x3d/vrml outputting unnecessary spheres
  • bond caps within opaque atoms removed (not precisely correct to do that)
  • bug fix: minimization broken
  • bug fix: contact still not quite right -- setting default to +0.0 instead of +0.25
  • new feature: simple Z-Matrix reader
  • invoked by ZMATRIX:: or file starting with #ZMATRIX
  • lines starting with # are comments, which can contain jmolscript

New in Jmol 12.2.5 (Nov 15, 2011)

  • bug fix: isosurface scale 0.5 plane... broken if no atoms present
  • bug fix: isosurface color density broken
  • bug fix: set PdbAddHydrogens does not transfer C atomSymmetry to H atoms
  • bug fix: contact() function not working when typed from console
  • bug fix: set axesOrientationRasmol not working properly (since 11.5.51) # bug fix: frame x.y - y.z not working

New in Jmol 12.2.4 (Nov 5, 2011)

  • bug fix: with antialiasDisplay, dragMolecule goes 1/2 speed of cursor
  • bug fix: nucleic acid residues with HO5' may render last group strangely (since 12.0.RC16, 6/6/2010)
  • bug fix: workaround for weird Mac Point3i(Point3i pt) class initializer bug
  • bug fix: MO readers can fail if inappropriate filter "TLS" is given
  • bug fix: array.bin(low,high,binSize) not documented and can cause exception

New in Jmol 12.2.3 (Nov 1, 2011)

  • bug fix: CRYSTAL reader not properly setting model properties
  • bug fix: userFunction(x,@y) should operate as per all math
  • parens - value of variable pointed to by y # -- x = myfunc(x, @y) same action as just myfunc(x, @y)
  • bug fix: userFunction x @y
  • no parens - should operate as value of x and value of y # -- @ is unnecessary but allowed
  • bug fix: reading of JVXL files for color density fails to color properly
  • bug fix: .... vdw 100.0% --- should be OK with float there, even if it rounds.
  • bug fix: load append twice can cause zap to be in wrong place in state file
  • bug fix: for (x IN {*}) ... makes x a bitset and leads to array[1] for x.atomName
  • bug fix: for (x IN {*}.bonds) does not work

New in Jmol 12.3.3 Pre (Oct 31, 2011)

  • new feature:
  • ellipsoid SET 1; ellipsoid SET 2;
  • TLS ellipsoids are dual
  • TLS-S is SET 1; TLS-T is SET 2
  • after issuing this command, further size or color commands affect only that set
  • needs verification by Ethan Merrit
  • new feature: load xxx.pdb filter "TLS"
  • loads TLS data # new feature: atom property property_tlsGroup
  • new feature: MolecularPlayground now accepts messages to the banner: message banner: xxxxxxx
  • new feature: MolecularPlayground fully functional.
  • This application (MPJmolApp) is part of a three-part suite
  • that runs on a Mac mini involving:
  • "Hub" [name] for overall control (Mac app; not open source yet) MPKinectDriver for obtaining motion events (Mac app; not open source yet) MPJmolApp for displaying the results (source here)
  • The Hub and MPJmolApp communicate over local port 31416, sending
  • JSON messages back and forth. (See note in org.jmol.app.jsonkiosk.JsonNioService.java)
  • For demonstrations of the installation at St. Olaf College,
  • see the following YouTube videos:
  • http://www.youtube.com/watch?v=iQRkuku8ry0
  • http://www.youtube.com/watch?v=XCRrRZe1j6g
  • http://www.youtube.com/watch?v=FTTIVWGtFD0
  • For details relating to the original Molecular Playground
  • installation at U. Mass.-Amherst, see
  • http://molecularPlayground.org
  • Note that all of the functionality of the original MP are
  • present in MPJmolApp
  • new feature: MolecularPLayground can now ignore all Hub requests for
  • commands and content changes, thus allowing its own configuration
  • script to drive the presentation instead of the Hub's. So the Hub
  • can be used simply as an interface to the Kinect driver. This just allows a simpler development interface
  • a simple three-column Excel file can
  • be used to drive a presentation. (see org.jmol.molecularplayground.biophysics.xlsx)
  • MPJmolApp looks for the file MpJmolAppConfig.spt
  • This file can override MPJmolApp's default parameters: # NIOContentPath # default: System.getProperty("user.dir").replace('\\', '/') # + "/Content-Cache/%ID%/%ID%.json"
  • ignored if NIOcontentDisabled ends up true (see below) NIOterminatorMessage
  • default: "MP_DONE" # NIObannerEnabled
  • default: true # NIOcontentScript
  • default: (not present, setting NIOcontentDisabled=false)
  • NIOcontentDisabled
  • default: true if NIOcontentScript is present; false if not
  • NIOmotionDisabled
  • default: false
  • The script in MpJmolAppConfig.spt is run, along with whatever
  • default settings are generated by the above checks.
  • Parameters are set by querying the Viewer for those Jmol variables.
  • If NIOcontentDisabled is true, then all JSON messages from the Hub
  • of types "content", "command", and "banner" are ignored. It is still important that the running script send "MP_DONE" messages periodically (within every 6 minutes) so that the Hub knows that MPJmolApp is still
  • alive and does not try to restart it. If NIOmotionDisabled is true, then all JSON messages from the Hub # of types "move", "sync", and "touch" are ignored.
  • These are checked every time a JSON command is received, so the running script can specifically turn off motion detection if that or content detection if that is desired.
  • Note that MPJmolApp has a full console and menu that are available
  • on the operator's screen, (which is just mirrored to the projector).
  • This allows for parameter setting and adjustments on the fly.
  • new feature: show NMR
  • predicted NMR spectrum
  • uses http://www.nmrdb.org/predictor?smiles=xxxx
  • requires NCI SMILES due to bug at nmrdb not allowing "."
  • bug fix: CRYSTAL reader not properly setting model properties
  • bug fix: userFunction(x,@y) should operate as per all math
  • parens - value of variable pointed to by y
  • x = myfunc(x, @y) same action as just myfunc(x, @y)
  • bug fix: userFunction x @y
  • no parens - should operate as value of x and value of y
  • @ is unnecessary but allowed
  • bug fix: set echo "myecho" [10 10%] not working
  • bug fix: apiPlatform not correctly accessed in JpegEncoder
  • bug fix: reading of JVXL files for color density fails to color properly
  • bug fix: .... vdw 100.0% --- should be OK with float there, even if it rounds. code: refactored for Molecular Playground and Jmol Android
  • several System.out. messages present.
  • code: refactoring adapter XML readers

New in Jmol 12.3.2 Pre (Oct 18, 2011)

  • bug fix: POV-Ray export of cartoons broken
  • bug fix: script javascript:xxxx() broken
  • new feature: set vectorSymmetry -- displays vibration vectors as double-ended arrows. bug fix: SMILES comparison when the number of stereocenters is not the same is wrong
  • new feature: compare("XXX","XXXX","ISOMER") comparison now includes "AMBIGUOUS STEREOCHEMISTRY!"
  • code: popup/modelkit refactoring to isolate awt/Swing references
  • bug fix: connection deletion removes all measurements -- can't imagine why...
  • code: JmolModelKitInterface part of apiPlatform call
  • code: JmolPromptInterface replaced with apiPlatform call

New in Jmol 12.2.2 (Oct 17, 2011)

  • bug fix: POV-Ray export of cartoons broken
  • bug fix: script javascript:xxxx() broken

New in Jmol 12.2.1 (Oct 14, 2011)

  • bug fix: SMILES comparison when the number of stereocenters is not the same is wrong new feature: compare("XXX","XXXX","ISOMER") comparison now includes "AMBIGUOUS STEREOCHEMISTRY!"
  • code: popup/modelkit refactoring to isolate awt/Swing references
  • bug fix: connection deletion removes all measurements -- can't imagine why...
  • bug fix: H2,H3 connected to terminal N of protein not backbone
  • bug fix: select PROTEIN selects non-PDB atoms
  • bug fix: Molden reader does not read "Sym=X" (missing space after '=')
  • bug fix: Molden reader does not read angstrom units # bug fix: color isosurface {atomset} does not work if isosurface has not already been mapped.
  • bug fix: PDB reader not reading Rasmol-style files with multiple bonding
  • CONECT 1 2 2 # or # CONECT 1 2 # CONECT 1 2
  • means for Rasmol double bond between atoms 1 and 2
  • bug fix: Molden file reader error with [5D] flag before [GTO]

New in Jmol 12.3.1 Pre (Oct 13, 2011)

  • bug fix: H2,H3 connected to terminal N of protein not backbone
  • bug fix: select PROTEIN selects non-PDB atoms
  • new feature: CASTEP reader (take 2)
  • reads Mulliken files by default, Hirshfield with filter "CHARGE=HIRSH"
  • reads spins into {*}.property_spin. label is %[property_spin]
  • reads Born charge tensors as atom ellipsoids
  • bug fix: Molden reader does not read "Sym=X" (missing space after '=')
  • bug fix: Molden reader does not read angstrom units
  • bug fix: color isosurface {atomset} does not work if isosurface has not already been mapped.
  • bug fix: PDB reader not reading Rasmol-style files with multiple bonding
  • CONECT 1 2 2
  • CONECT 1 2
  • CONECT 1 2
  • means for Rasmol double bond between atoms 1 and 2
  • code: experimenting with fragmentation of applet core classes into _1b, _1c, _1d, _1e, _1f

New in Jmol 12.2.0 (Oct 4, 2011)

  • bug fix: MO overlaying orbitals
  • bug fix: PDB reader not reading Rasmol-style files with multiple bonding
  • -- CONECT 1 2 2 means for Rasmol double bond between atoms 1 and 2
  • 224 new features
  • summary of feature changes between Jmol 12.0 and 12.2:
  • FEATURE CHANGE: "ligand" definition changed to!(protein,nucleic,water,UREA)"
  • instead of "hetero and not solvent"
  • FEATURE CHANGE: default zShadePower set to 3
  • FEATURE CHANGE: undocumented a[13] = 3 (where a is a matrix, for a[1][3]) removed
  • FEATURE CHANGE: DSSP default for "calculate structure"-- old way is now "calculate structure RAMACHANDRAN"
  • FEATURE CHANGE: DSSP default for LOAD of PDB file with no header.
  • in previous versions, Jmol used a ramachandran-angle-based calculation for secondary structure determination when a PDB file had no HELIX or SHEET records.It just seems reasonable to use the industry-standard DSSP method instead.
  • new feature: JmolSmilesApplet method (smiles1)
  • new feature: JmolSmilesApplet method getRelationship(smiles1, smiles2)
  • new feature: The Jmol application can now communicate via socketswith other Jmol applications or specialized servers.
  • The SYNC command has been expanded to make this very easy: sync -nnnn starts a server on local port nnnn accepting only local connectionssync nnnn "background white" (from another app, generally) would execute thatcommand on the app acting as a server You can also do this from one app frame to another, because they are independentinstances of Jmol.
  • Jmol can provide server service to other apps using: sync -3000[start other app, connecting on 3000]sync 3000 ..... Because once the server is started and another app has connected,Jmol will send messages to that other app, not itself. To test the service within one application, just create the server and sendcommands to itself using a negative port number: sync -3000;sync -3000 'Mouse: rotateZBy 30'
  • Note that in this context the "server" is the one getting commands from the "client"But the server can also send commands to the client provided the client has given theappropriate handshake: {"magic":"JmolApp","event":"out"} Sent from Jmol (via outSocket): {"magic" : "JmolApp", "role" : "out"} (socket initialization for messages TO jmol){"magic" : "JmolApp", "role" : "in"} (socket initialization for messages FROM jmol){"type" : "script", "event" : "done"} (script completed) Sent to Jmol (via inSocket): {"type" : "banner", "visibility" : "ON" or "OFF" } (set banner for kiosk){"type" : "banner", "text" : bannerText } (set banner for kiosk){"type" : "command", "command" : command } (script command request){"type" : "content", "id" : id } (load content request){"type" : "move", "style" : (see below) } (mouse command request){"type" : "quit" } (shut down request){"type" : "sync", "sync" : (see below) } (sync command request){"type" : "touch", (a raw touch event)"eventType" : eventType,"touchID" : touchID,"iData" : idata,"time" : time,"x" : x, "y" : y, "z" : z } For details on the "touch" type, see org.jmol.viewer.ActionManagerMT::processEventContent is assumed to be in a location determined by the Jmol variablenioContentPath, with %ID% being replaced by some sort of ID number of tag provided bythe other half of the system. That file contains more JSON code: {"startup_script" : scriptFileName, "banner_text" : text }
  • An additional option "banner" : "off" turns off the title banner.The startup script must be in the same directory as the .json file, typically as a .spt file
  • Move/sync commands include: {"type" : "move", "style" : "rotate", "x" : deltaX, "y", deltaY }{"type" : "move", "style" : "translate", "x" : deltaX, "y", deltaY }{"type" : "move", "style" : "zoom", "scale" : scale } (1.0 = 100%){"type" : "sync", "sync" : syncText }
  • Note that all these moves utilize the Jmol sync functionality originally intended forapplets. So any valid sync command may be used with the "sync" style. These includeessentially all the actions that a user can make with a mouse, including thefollowing, where the notation represents a number of a given type. Theseevents interrupt any currently running script, just as with typical mouse actions. "centerAt "-- set {ptx,pty,ptz} at screen (x,y)"rotateMolecule ""rotateXYBy ""rotateZBy ""rotateZBy " (with center reset)"rotateArcBall ""spinXYBy "-- a "flick" gesture"translateXYBy ""zoomBy ""zoomByFactor ""zoomByFactor " (with center reset)
  • new feature: preliminary QuantumEspresso XML readernew feature: Jmol Application flags -k and -P-- -k kiosk mode: like applet, but with a banner across the top-- -P JSON NIO client mode over port -- for JSON NIO, use -J or -j to set nioContentPath and nioTerminatorMessageto the desired values. For example:Jmol -k -P 31461 -j "nioContentPath='./%ID%/%ID%.json';nioTerminatorMessage='SCRIPT_DONE'"
  • new feature: Jmol.js adds jmolSwitchToSignedApplet().This needed a new tag that is now inserted around the applet.
  • new feature: filter "_Xx" for filtering element Xxbug fix: MO SLAB n never implemented
  • bug fix: MOLDEN reader not reading spherical basis functions
  • bug fix: contact command not symmetricSet A should generally be the ligand. However, consider note:// check for O--H...N or O...H--N and not considering// hydrogens and still have a filter// a bit of asymmetry here: set A may or may not have H atoms added.// This is particularly important for aminesThe issue here is that we do not assume that hydrogens have beenadded to ligands. So we make some allowances there.
  • bug fix: SMILES [#6]-[#6] should not match bonds in benzene, only biphenyl
  • bug fix: in SMARTS matching of SMILES string, aromatic ring conditions were not matched
  • bug fix: null pointer exceptions when model with unit cell is appended to model without unit cell
  • bug fix: CIF reader not implemented with filter "CONF n"
  • bug fix: unit cell not turned off in state for PDB files loaded with biomolecule
  • bug fix: mo points 1000 brokenbug fix: xxx = {*}; xxx.property_x = 3 improperly parsed as a script commandbug fix: getproperty minimizationInfo returns JSON instead of readable string
  • bug fix: JaguarReader not reading D6 MOs properly code: all references to java.awt and javax.swing isolated toorg.jmol.awt, rg.jmol.export, and org.jmol.multitouchcode: refactored Jmol core Swing classes restricted toapplet, console, export, modelkit, multitouch, popupTODO: Question about what c=c should do. For now, changing that to NOT match C=C of benzene

New in Jmol 12.2 RC 7 (Sep 22, 2011)

  • bug fix: SMILES [#6A] and [#6a] should be distinc
  • bug fix: load SMILES should not allow 2D return
  • bug fix: load SMILES not saved properly in state
  • bug fix: set isosurfaceKey not displaying key for planar contour plot
  • bug fix: GAUSSIAN reader cannot read MOs when more than 1000 orbitals
  • new feature: CASTEP reader for .md and .geom trajectories
  • bug fix: atomic orbitals should be assigned 0 if |psi| < 1e-7
  • bug fix: load TRAJECTORY does not assign model names
  • new feature: load TRAJECTORY now loads vibrations as trajectories

New in Jmol 12.2 RC 6 (Sep 13, 2011)

  • bug fix: load PACKED SUPERCELL produces redundant atoms
  • new feature: transparent background PNG images with WRITE PNGT xxxx.png
  • -- set ANTIALIASEIMAGES false to avoid slight trim issue
  • -- use an unusual color, such as [x010101] for the background # new feature: preliminary CASTEP .phonon frequency file reader # -- preliminary only
  • -- reads q=0 and q#0 points
  • -- use load ... SUPERCELL to select out a specific q-point
  • -- for example: load c60.phonon {1 1 1} SUPERCELL {2 1 2}
  • will select for q = (0.5 0 0.5) # load c60.phonon -5 {1 1 1} SUPERCELL {2 1 2}
  • and only mode 5 for q = (0.5 0 0.5)
  • load c60.phonon -5 {2 2 2} SUPERCELL {-4 1 2}
  • eight supercells; mode 5 only for q=(-0.25 0 0.5)
  • new feature: unitcell {xxx yyy z} where z is negative fills entire (standard) xxx yyy space with unit cells of size z
  • bug fix: AtomSetChooser set up too late -- can override embedded jmolScript vibration/vector scale commands
  • bug fix: set naviationPeriodic while navigating should disallow unit cell and standard axes
  • bug fix: MO LIST broken
  • bug fix: linear combination of MOs broken in 12.1.49
  • new feature: forgotten feature: load "xxxx.xxx" [ list of models to load ]
  • -- for example: load "cyclohexane_movie.xyz" [ 1 6 11 26 ]
  • new feature: set minPixelSelRadius
  • bug fix: Crystal reader not handling CONV option properly
  • bug fix: CIF reader not reading isotopes such as D and T
  • new feature: CRYSTAL reader reads property files for tensor quantities
  • -- displayed as ELLIPSOID
  • -- note that scale is set using ELLIPSOID N where N is a percent; default 50; max 100
  • bug fix: load slab/polymer with PACKED does not work
  • new feature: unitcell {xxx yyy scale}
  • -- allows for display of a block of unit cells in 444 555 notation
  • -- cleared by unitcell {0 0 0}
  • feature change: contact full/trim returned to simpler original non-paired idea bug fix: imines SMILES may cause null pointer exception
  • bug fix: SOE added to carbohydrate list (L-sorbose in pyranose form; SOL is the open form, 3AI3.pdb) bug fix: setting DOTS off can cause null pointer exception
  • bug fix: saving state of contact broken
  • bug fix: contact SLAB n not working
  • bug fix: deleting of the first model in a set that has load APPEND will not produce the correct state
  • bug fix: deletion of models having atoms with dots can generate null pointer exception
  • bug fix: QuantumEspresso reader not reading ALAT/A_0 files correctly
  • bug fix: measurements, picking not allowed to FIXED atoms
  • bug fix: (contact) ligand nitrogens not protonated and become hbond acceptors
  • -- solution for now is to consider all N/O HETATM atoms "ambiguous"
  • new feature: UNDO/REDO
  • -- console-only commands same as buttons
  • -- full file reload (saving of full state)
  • bug fix: undocumented "redo" "undo" application-only commands changed to "redocmd" "undocmd"
  • new feature: undoMove/redoMove
  • -- script commands
  • -- act like CTRL-Z/(CTRL-SHIFT-Z or CTRL-Y)
  • -- just move atoms; no file loading (just atom positions saved) UNDOMOVE/UNDOMOVE
  • undo last movement
  • UNDOMOVE n
  • undo last n movements
  • UNDOMOVE 0/UNDOMOVE ALL
  • undo all movements
  • REDOMOVE/REDOMOVE 1
  • redo last movement
  • REDOMOVE n
  • redo last n movements
  • REDOMOVE 0/REDOMOVE ALL
  • redo all movements
  • UNDOMOVE -1
  • clear UNDO history
  • REDOMOVE -1
  • clear REDO history
  • REDOMOVE -2/UNDOMOVE -2
  • clear both histories

New in Jmol 12.2 RC 5 (Aug 18, 2011)

  • bug fix: "$phosphorus pentoxide" label %[shape] indicates AX4E not AX4 hybridization on phosphorus
  • new feature: set isosurfaceKey ON|OFF
  • -- creates a vertical hoverable key on the left
  • -- only the most recent and visible isosurface
  • -- is not exported
  • bug fix: show colorscheme "high" causes exception

New in Jmol 12.2 RC 4 (Aug 17, 2011)

  • bug fix: setting a timeout should reset the timer of a running timeout with the same ID
  • bug fix: contact translucent carries over to next contact command
  • bug fix: modelKit increase/decrease charge not working
  • bug fix: show SMILES|CHEMICAL NAME broken
  • bug fix: for(x in...) where x is not defined causes exception
  • bug fix: CONTINUE in switch within for or while loops infinitely
  • bug fix: zap; load append ... ignores the zap!
  • new feature: selection of surfaces in SurfaceTool

New in Jmol 12.2 RC 3 (Aug 9, 2011)

  • bug fix: color broken in 12.2.RC2
  • bug fix: isosurface pmesh INLINE broken
  • bug fix: 1jgq phosphorus-only default rendering disabled

New in Jmol 12.2 RC 2 (Aug 8, 2011)

  • FEATURE CHANGE: "ligand" definition changed to
  • !(protein,nucleic,water,UREA)"
  • instead of "hetero and not solvent"
  • new feature: contact VDW shows clash-contacts with equal-volume
  • combination with CLASH gives bulls-eyesplane only
  • new feature: real-time docking with visual scoring test:
  • set pdbAddHydrogens
  • load caffeine.xyz;load append 1crn.pdb
  • frame *
  • select protein;wireframe only
  • select none
  • set picking dragMolecule
  • timeout "t1" -1000 "contact {selected} {!selected} color type"
  • bug fix: select deuterium, HOH, _1H, _H1 isotope business messed up
  • bug fix: timeouts not waiting for their own completion
  • bug fix: !quit not interrupting timeouts
  • bug fix: command line -M sparshui not working
  • bug fix: isosurface color density not picking up last yz points
  • bug fix: 12.2.RC1 doesn't allow for isosurface color XXX t.jvxl
  • bug fix: Old legacy Chime *.C for _C in non PDB filesonly when one model, and it is not a PDB file
  • new feature x = compare({1.1}, {2.1}, "MAP", {1.1}.find("smiles"))
  • MAP returns a set of correlations between set 1.1 and set 2.1 based on the given smiles string
  • format is an array of arrays of [i,j]
  • bug fix: setting VDW radius after creating isosurfaces or contacts should delete that
  • surface if set of atoms involved in surface intersects set of changed vdw radii
  • bug fix: H-bond contact to water O categorized as clash
  • bug fix: MO for multi-model file does not save state properly
  • bug fix: GROMACS reader should not use sorbital group 3 name SOL for waterchanged to WAT
  • bug fix: SOL considered solvent, but is sorbitol; SOL added to carbohydrate list instead
  • code: better-protected Binary Sorted Tree Forest invalidation
  • code: enum class for Structure
  • code: enum class for Vdw and RadiusData
  • code: enum class for file load state
  • code: enum class for color palettes
  • code: enum class for stereoMode
  • code: enum class for animationMode
  • code: enum class for quantum shellsless than ideal!
  • code: enum class for draw
  • code: enum class for Callbacks
  • NOTE: THIS AFFECTS ALL EMBEDDED APPLICATIONS
  • WITH CALLBACKS (in a good and simple way!)
  • code: enum class for axes modes

New in Jmol 12.0.48 (Jul 21, 2011)

  • bug fix: try {} does not pass VAR variables into its context.
  • bug fix: catch(err) not setting variable "err"
  • bug fix: CML files with atoms starting with both aNN and aNN_ will not bond correctly
  • bug fix: set fontScaling does not scale offset with font
  • bug fix: application Help menu item no long pushed right.

New in Jmol 12.0.47 (Jul 5, 2011)

  • bug fix: definition of CARBOHYDRATE was updated:
  • - [A2G],[NGA],[SIA],[SLB],[LBT],[NDG],[AMU] added (GalNAc, NeuNAc, lactose, GlcNAc, MurNAc)
  • -- [ASF],[NAM] removed, they are no longer carbohydrates
  • -- a few existing ones are deprecated by PDB; they are left for compatibility
  • but are now listed as such (maybe remove them in future).
  • bug fix: Bad Jmol.js
  • bug fix: draw pointgroup fixed to first model

New in Jmol 12.0.46 (Jul 4, 2011)

  • bug fix: _smilesString variable not being cleared when a PDB file is loaded
  • bug fix: WebMO reader fails to read HOMO/LUMO business.
  • bug fix: throwing script parsing error on correct "isosurface slab within [4 elements
  • representing the slab box]" (was losing last "]").
  • bug fix: (application) Jmol console not receiving echo messages
  • bug fix: UFF full listing (set loglevel 6;minimize steps 0;show minimization) missing n and cosNphi0 in torsions
  • bug fix: PQR reader mistaking " HD3" as deuterium

New in Jmol 12.1.49 Pre (Jun 10, 2011)

  • new feature: set zSlab {atom expression or point}; set zShade ON
  • sets the front of the shading to be at a position in space
  • very nice for ligands!
  • FEATURE CHANGE: default zShadePower set to 3
  • bug fix: MarchingCubes not reading last plane of data
  • code: isosurface NCI (promolecular) reads progressively
  • new feature: isosurface NCI (noncovalent interactions) -- Henry Rzepa suggested incorporating this
  • NCIPLOT promolecule calculation for reduced density. # Plots reduced density mapped with ABS(rho)

New in Jmol 12.0.44 (May 31, 2011)

  • bug fix: set appendNew false; load =1q0y; load APPEND =1crn causes exception
  • bug fix: lcaoCartoon does not get hidden when atom deleted
  • bug fix: isosurface SELECT should also set model index
  • bug fix: isosurface mesh incompatible with fullylit and frontonly
  • bug fix: navigate broken
  • bug fix: modelKit dragMinimizeAtom broken in 12.0.43
  • bug fix: dragMinimize should select all non-fixed atoms if there are fixed atoms
  • bug fix: write @{"xxxx"} fails
  • bug fix: isosurface ... map VDW -- mapping not saved in state
  • bug fix: CRYSTAL reader does not read vibrations for atoms with two-character symbols bug fix: third oxygen atom in 5'-terminal phosphate was not assigned to backbone (e.g. 4tna.pdb)
  • bug fix: cartoons with hermite level do not reposition for atom position changes or trajectories
  • bug fix: isosurface plane x=-1 (with no spaces) not accepted
  • bug fix: x = write("VRML") should give VRML contents and not write to disk
  • bug fix: defined @ variables not indicating changes when models are deleted
  • bug fix: calculate structure RAMACHANDRAN broken in 12.0.18
  • bug fix: update in Jmol.js: Java version detection got broken in Mac Firefox 4.0.1 (part of browser compatibility test)

New in Jmol 12.1.47 Pre (May 15, 2011)

  • new feature: MO POINTS npts seed -- displays MOs as pointilist objects
  • load c6h6.smol
  • mo points 5000
  • mo homo
  • mo points 3000 13
  • optional random number seed reproduces previous results
  • new feature: isosurface atomicOrbital n l m [zeff] [ POINTS npts seed]
  • allows Monte Carlo type orbital display, as for http://stolaf.edu/people/hansonr/origami/WIN/orbital1.zip
  • (see http://stolaf.edu/people/hansonr/orbital), e.g.: isosurface phase atomicOrbital 3 2 1 POINTS 5000 optional random number seed reproduces previous results
  • new feature: contoured planes and 3D objects can be remapped and recontoured using ISOSURFACE MAP
  • new feature: set dotScale applies to isosurface points in pointilist objects
  • new feature: SCALE parameter implemented for atomic orbitals.
  • bug fix: remapping of a contoured isosurface fails
  • bug fix: user-defined @ atom sets should be saved in state
  • bug fix: defined @ atom sets not indicating changes when models are deleted
  • bug fix: parameter setting of Jmol integer parameters with float values may not set variables
  • example: set dotScale 3.0 does set that variable, but there is no effect. (not fixed in 12.0)

New in Jmol 12.0.43 (May 13, 2011)

  • bug fix: undocumented "redo" "undo" application-only commands changed to "redocmd" "undocmd"
  • bug fix: transcient halos not always transient for dragSelected
  • bug fix: FIX command not working properly
  • bug fix: select within(chain, atomno=xxx) will not select all desired atoms
  • if the chain is spread out over multiple regions of the file (1gzx)
  • bug fix: set dragselected may not turn off transient selection halos
  • bug fix: undo (CTRL-Z) and redo (CTRL-SHIFT-Z/CTRL-Y) not implemented for dragSelected
  • bug fix: molecules incorrectly assigned for covalently attached cofactors, such as HEM (1gzx)
  • bug fix: set picking dragMolecule then use of SHIFT after rotate COMPARE will result in unwanted translation

New in Jmol 12.1.45 Pre (May 6, 2011)

  • new feature: NBO second-order data saved in modata:
  • Var x = getProperty("auxiliaryInfo.models[2].moData.secondOrderData")
  • show x
  • >> x = [[69.0,115.0,1.2800001,0.044],[69.0,134.0,0.67,0.026],...[mo1, mo2, E(2), f(i,j),...]
  • where mo1 and mo2 are indexes into the MO list (Note that they are floats, not integers.)
  • and E(2) and f(i,j) are the E(2) value calculated by genNBO.
  • bug fix: quaternion N frame off slightly due to bisection error.
  • also affects Rasmol hydrogen bond calculation
  • bug fix: select a will not select P-only DNA adenosines (1jgq)
  • bug fix: select A and select a may be different for P-only DNA strands (1jgq)
  • bug fix: help needs to add version to http call
  • bug fix: properties of type float[][] not saved as ScriptVariable lists
  • bug fix: AIMS reader upgrade to include atom/atom_frac line mix
  • bug fix: PSI3 reader for WebMO
  • bug fix: NWChem reader skips vibration info; set to skip only translation/rotation models
  • bug fix: data connect can cause null pointer exception if data statement has white-space-only lines

New in Jmol 12.0.42 (May 5, 2011)

  • bug fix: quaternion N frame off slightly due to bisection error.
  • also affects Rasmol hydrogen bond calculation
  • bug fix: select a will not select P-only DNA adenosines (1jgq)
  • bug fix: select A and select a may be different for P-only DNA strands (1jgq) # bug fix: properties of type float[][] not saved as ScriptVariable lists
  • bug fix: AIMS reader upgrade to include atom/atom_frac line mix
  • bug fix: PSI3 reader for WebMO
  • bug fix: data connect can cause null pointer exception if data statement has white-space-only lines

New in Jmol 12.1.44 Pre (Apr 27, 2011)

  • bug fix: MOs broken in 12.1.43
  • bug fix: drawpicking fails for drawn polyhedra. (turned off for now)

New in Jmol 12.1.43 Pre (Apr 25, 2011)

  • new feature: show chemical name
  • new feature: show chemical InChI
  • new feature: show chemical InChIKey
  • new feature: set echo ID "xxxx"
  • new feature: show drawing (2D line drawing, from NIH)
  • new feature: isosurfaces can be remapped.
  • isosurface molecular map property temperature
  • isosurface map property partialcharge
  • isosurface vdw
  • isosurface map mep # bug fix: { echo testing } causes compiler error
  • bug fix: { echo "testing" } causes compiler error
  • bug fix: cannot access site_xxx definitions created by PDB file read
  • bug fix: echo myecho ... after echo ALL still does ALL
  • bug fix: cube file reader (load command) does not convert z coordinates to Angstroms. bug fix: isosurface CAVITY cannot be mapped
  • bug fix: isosurface CAVITY broken
  • bug fix: application load menu unnecessarily creates new frame and loses current script processing

New in Jmol 12.1.42 Pre (Apr 8, 2011)

  • code: Swing class instantiation failure caught
  • bug fix - set picking identifyBond not implemented
  • bug fix - leaving modelKitMode does not leave bondPickingMode "ident"
  • new feature: for (var x in [....]) {...} # -- array option

New in Jmol 12.0.39 (Mar 28, 2011)

  • bug fix: menu labels incorrect in 12.0.38

New in Jmol 12.1.41 Pre (Mar 26, 2011)

  • new feature: for (var x in {...}) {...}
  • for example: for (x in {selected}) { print x }
  • new feature: x = {*}.mass.sum (and .max, .min, etc.)
  • note, like other atom properties, {*}.mass by itself is an AVERAGE of masses of all atoms
  • accounts for isotopes, but otherwise just uses average masses. Source: John Moore/Jon Holmes, J. Chem. Educ.
  • new feature: x = plane(, , true)
  • bug fix: for(_x...) not disallowed bug fix: Spartan .smol files: default for charges is now ESPCHARGES (what SpartanStudent reports), not MULLIKEN
  • filter "MULLIKEN" now reads those charges
  • bug fix: {*}.resno, .atomno, etc. where the property is an integer returns sum, not average
  • bug fix: closing a prompt dialog with ESCAPE can cause crash; should return "null"
  • bug fix: conflicting (Edit) selectMenu removed
  • can't have two menus with exactly the same name, or language will only update one bug fix: miscalculating distances for atom exclusion in CifReader molecular option
  • bug fix: image creation does not lock out mouse or system refreshes
  • bug fix: select {*} (color=...) fails (specifically math functions doubling as atom properties)
  • bug fix: cross-applet script output from print script("show ...", "B") not working
  • bug fix: synchronize command broken
  • bug fix: "string"%-n right-side truncation one character short
  • code: MouseManager14, ActionManager simplifications

New in Jmol 12.0.37 (Mar 19, 2011)

  • bug fix: within(xxx, ) will fail
  • bug fix: Crystal09 reader upgrade
  • bug fix: adaptation for improperly CONECTed PDB files such as 1W7R
  • bug fix: select *y defaults to select {*}(y) instead of select {:y}
  • bug fix: newer cml format for crystal information
  • bug fix: vibration ON not saved in state
  • bug fix: not reading MOPAC 6, 7, or 2009 files

New in Jmol 12.1.39 Pre (Mar 15, 2011)

  • bug fix: write of stereo image only shows one half of dual display
  • bug fix: application does not update menus properly
  • new feature: load MENU -- if user-defined menu label is "null" then that menu item is removed # -- for example: labelName | null or labelMenu | null
  • bug fix: Jaguar reader not reading vibrations correctly
  • bug fix: write JMOL (instead of write xxx.jmol) not implemented

New in Jmol 12.0.35 (Mar 9, 2011)

  • bug fix: Jaguar reader not reading vibrations correctly
  • bug fix: load of model when animation is on may cause animation NEXT to fail
  • new feature: (fixing property smoothing) isosurface... map property x WITHIN x.y
  • allows a maximum distance to be defined; speeds up calculation
  • defaults to 5.0 when set isosurfacePropertySmoothing FALSE
  • bug fix: isosurface VDW can ignore H2O
  • bug fix: load FILES incorrectly autobonds CONECTed atoms
  • bug fix: draw LIST broken
  • bug fix: (signed applet only) write FRAMES multiple calls to file dialog
  • bug fix: draw/show pointGroup not correct when {0 0 0} is not center of model
  • bug fix: draw pointGroup deletes all draw objects, not just of this model's point group
  • bug fix: multimodel show pointGroup does not reset when frame is changed

New in Jmol 12.1.37 Pre (Feb 28, 2011)

  • bug fix: set PICKING OFF nonfunctional
  • bug fix: unnecessary moveto commands in state
  • bug fix: CTRL-SHIFT-LEFT on Macintosh must be pressed with LEFT first. go figure... (Old, old problem fixed)
  • -- problem was that CTRL-SHIFT-LEFT-DRAG specifically was delivered as CTRL-SHIFT-MOVE
  • -- specifically relates to changing the slab after slab ON
  • new feature: (relevant to Macintosh only) COMMAND-SHIFT-LEFT-DRAG same as CTRL-SHIFT-LEFT-DRAG
  • bug fix: isosurface for trajectory not working
  • bug fix: Var x in function x() not recognized
  • bug fix: Var data followed by data++ causes syntax error
  • new feature: you can put element numbers in place of element symbols in XYZ files,
  • and you can have a sixth column that is radius e.g.
  • elemno x y z charge radius
  • or (for just the radius with no charge)
  • elemno x y z - radius
  • note that charge can be formal (integer) or partial (decimal)
  • # bug fix: isosurface .... map select {...} not saved properly in state
  • bug fix: MO HOMO should select highest non-negative value if no occupancy info
  • bug fix: Spartan reader not reporting HOMO
  • bug fix: load xxxx.top should default to xxxx.trj for coord files

New in Jmol 12.0.34 (Feb 28, 2011)

  • bug fix: set PICKING OFF nonfunctional
  • bug fix: unnecessary moveto commands in state
  • bug fix: CTRL-SHIFT-LEFT on Macintosh must be pressed with LEFT first. go figure... (Old, old problem fixed)
  • -- problem was that CTRL-SHIFT-LEFT-DRAG specifically was delivered as CTRL-SHIFT-MOVE
  • -- specifically relates to changing the slab after slab ON
  • new feature: (relevant to Macintosh only) COMMAND-SHIFT-LEFT-DRAG same as CTRL-SHIFT-LEFT-DRAG
  • bug fix: isosurface for trajectory not working
  • bug fix: Var x in function x() not recognized
  • bug fix: Var data followed by data++ causes syntax error
  • bug fix: isosurface .... map select {...} not saved properly in state
  • bug fix: MO HOMO should select highest non-negative value if no occupancy info
  • bug fix: Spartan reader not reporting HOMO
  • bug fix: load xxxx.top should default to xxxx.trj for coord files

New in Jmol 12.1.34 Pre (Feb 8, 2011)

  • bug fix: {xxx}.element = "B" does not work
  • new feature: CTRL-V "dropping" of a url into Jmol loads the model found at that URL.
  • bug fix: JavaScript getPropertyAsArray("auxiliaryInfo.models") will fail for crystal structures
  • bug fix: undocumented select within(hkl,...) and select within(plane,...) missing
  • bug fix: message @x should replace x with a variable; "message @x is the value of x" should not
  • bug fix: older syntax MESSAGE %{x} for variable value missing
  • bug fix: variable pointers such as @x = 3 and y = 3 + @x not working
  • bug fix: subtle label off bug leaves atom "clickable"
  • bug fix: subtle bond deletion bug leaves atoms with bonds unclickable
  • bug fix: AMBER CYX not recognized in @cystine definition
  • bug fix: MD topology/coord file loading problems; general trajectory problems
  • bug fix: write xxx.obj upgrade
  • bug fix: drag/drop CUBE files should use isosurface sign red blue

New in Jmol 12.1.33 Pre (Feb 2, 2011)

  • bug fix: CIF reader not reading files with multiple models involving GEOM_BOND
  • new feature: write xxx.OBJ -- WaveFront OBJ file writing
  • new feature: isosurface MRC keyword indicates file is MRC type (for nonstandard MRC files)
  • bug fix: scriptLevelMax 20 too small -- changed to 100
  • bug fix: for/while local variables improperly localized in iterative functions
  • bug fix: 12.1.32 should not have changed + to be

New in Jmol 12.1.32 Pre (Jan 27, 2011)

  • new feature: simple embedded application version of evalStringWaitStatus
  • that returns output from print/message/echo commands
  • see TestScriptOutput:
  • http://jmol.svn.sourceforge.net/viewvc/jmol/trunk/Jmol/examples/basic/org/jmol/TestScriptOutput.java?content-type=text/plain
  • new feature: preliminary NWChem orbital reading
  • still not normalized correctly
  • d and f orbitals not checked
  • UHF alpha/beta not checked
  • new feature: | x
  • IN PLACE concatenation
  • array1 will be appended to
  • if x is an array of length n, then nelements will be added
  • works as a |= b
  • to append a full array as one element, usea |= [x]
  • to append with creating a NEW array, use a + x or a + [x] instead
  • new feature: "unset" command same as "reset"
  • for example:
  • a = array([1,2,3],[4,5,6],[7,8,9])
  • y = a[3]
  • unset a
  • show variables
  • y = [7,8,9];
  • just looks better for variables
  • good to use this if just a small part of a large array
  • or hashtable is wanted and the rest can be discarded
  • new feature: sort/reverse does array sorting IN PLACE, not by copying
  • for example:
  • y = x.sort
  • x is sorted, and y is a copy of that
  • still need x = x.sort in general, because "x.sort" is not a command
  • new feature: array assignment is always by reference, as for JavaScript and Java
  • y = x[3], if x[3] = [3, 4, 5], assigns y to [3, 4, 5], so if later
  • one uses y[4] = "new", then at that point x[3] = [3, 4, 5, "new"]
  • y == x[3] distinction removed
  • new feature: x = intersection(plane, plane)
  • new feature: x = intersection(pt, plane) (i.e. line perp to plane through pt)
  • new feature: x = intersection(ptLine, vLine, plane)
  • new feature: x = intersection(ptLine, vLine, point) (i.e. plane perp to line through pointprojection of point onto line)
  • new feature: draw polygon @x @y where @x and @y are arrays of points and faces, respectively
  • bug fix: a = {} initialized as bitset, not associative array
  • bug fix: | should set bit
  • bug fix: | should set bits indicated in
  • bug fix: & should return true if bit is set
  • bug fix: % n when n < 0 should do "last n + 1"
  • bug fix: | [a,b,c] should append elements to arrayIN PLACE
  • bug fix: animation incompatible with spin for largish structures
  • bug fix: _modelFile variable incorrect for file read from zip file
  • bug fix: If a script such as "test.spt" creates a function
  • test(), then the next implicit script command "test.spt" will fail
  • bug fix: implicit script command XXXX.xxx loses case of filename
  • bug fix: array appending appends string values
  • bug fix: frame 0.0 does NOT enable all frames; breaks "quaternion" command
  • bug fix: isosurface fragment fix
  • bug fix: cartesian exporter capping cylinders flat and spherical both
  • bug fix: Jmol logo was missing from the Help>What's New window.
  • bug fix (improvement): the Help>User Guide window was too narrow.
  • bug fix: echo @x when x is an associative array
  • bug fix: write t.jvxl does not work for new solvent/molecular surfaces business
  • code:ArrayList X ... --> List X
  • code: ScriptVariable simplified
  • ScriptVariable[]objects --> (ArrayList)value

New in Jmol 12.1.31 Pre (Jan 20, 2011)

  • feature change: undocumented a[13] = 3 (where a is a matrix, for a[1][3]) removed
  • new feature: MOL reader reads >
  • new feature: load FILTER "*.CA,/=5"
  • every 5th alpha carbon
  • note comma before /=
  • new feature: write xxxx.OBJ
  • Wavefront OBJ files
  • export/_ObjExporter written by Ken Evans
  • new feature: write xxxx.XYZRN
  • input for MSMS
  • suggest first using set DEFAULTVDW BABEL
  • new feature: multidimensional array assignment: a[1][2] = 10
  • allows setting of a specific element of a multidimensional array
  • value can be anything -- a number, an array, an hashtable, a bitset, etc.
  • allowed also for matrices, but if the value is not a number, or
  • the row/column pointers are outside the range 1-3 or 1-4, then
  • the matrix is turned into an array automatically
  • for an array, when not a direct assignment, you need parentheses:
  • x = (a[1])[2]; if ((a[1])[2] == 3)....
  • because in general a[1][2] means "array a, elements 1 through 2"
  • for a matrix, you can use a[1][2] anywhere -- this is a difference between matrices and arrays
  • new feature: y == x[3] (double "=" in context of assignment)
  • y is now an alias for x[3], not a copy
  • allows, for example:
  • y = x[3]; y[2] = 6;
  • equivalent to (x[3])[2] = 6 (which is not a valid syntax)
  • new feature: x.sort(n)
  • array sorting by nth object 1 - arrayLength; 0 == last, -1 = next to last, etc.
  • new feature: load 1blu.pdb filter "*.CA | HETATM,![HOH]"
  • - "|" means "OR", so this reads:
  • load only alpha carbons OR (HETATM and not HOH)
  • bug fix: Jmol 11.9.24+ will read states created by prior versions incorrectly
  • fixed by adding "legacyAutoBonding" setting
  • bug fix: loading a file on command line does not allow
  • for write xxxx.jmol to include model file in zip file
  • bug fix: fails: load 1mbo.cif; isosurface select(not solvent) ignore(none) sasurface;
  • bug fix: passing an array to a function does not correctly pass by reference
  • bug fix: dot function included in array x = [(whatever).something...] fails
  • bug fix: array sorting for objects
  • bug fix: creating arrays from variables does not copy variable value
  • bug fix: draw .... @s does not work for title, but @{s} does
  • new feature: x = plane(, , true)
  • bug fix: ZAP should not set appendNew TRUE
  • bug fix: load APPEND after ZAP inserts ZAP into state after load command
  • bug fix: write MOL writes incorrect charge

New in Jmol 12.0.27 (Jan 13, 2011)

  • bug fix: write MOL writes incorrect charge
  • bug fix: isosurface SETS or POCKET with DOTS gives too many dots
  • bug fix: set measurementLabels off not working for ticksbug fix: draw TRIANGLES not working
  • new feature: Finnish translation
  • bug fix: isosurface color mesh blue not working
  • bug fix: (modelkit) load $PCl5; assign atom ({2}) "C" fails to place H atoms correctly
  • bug fix: isosurface sets not sorted by number of vertices
  • bug fix: logFile/logCommands/logGestures should not be saved in state
  • bug fix: log file cannot be turned off by setting value to ""
  • bug fix: user-defined function calls should be able to look like Jmol commands, without ()

New in Jmol 12.1.26 Pre (Dec 20, 2010)

  • new feature: write SDF creates multi-model SDfile based on models of selected atoms
  • new feature: write V3000 creates V3000 file; see http://www.symyx.com/downloads/public/ctfile/ctfile.pdf
  • new feature: the list of languages in the popup menu
  • is ordered by language code
  • displays each language name both in the current language and in the native language
  • is updated adding a new language if this is chosen via script (or maybe by the OS default)
  • new feature: plane(pt1, pt2) -- returns bisecting plane
  • new feature: draw SLAB $draw1 PLANE @{plane({...} {....})}
  • clips a drawn polygon based on a plane
  • $draw1 must be a draw POLYGON definition
  • draw draw1 SLAB $draw1... is allowed
  • for example:
  • draw p4 polygon 4 {1 2 3} {2 3 4} {4 5 6} {7 8 9} 2 [0 1 2 0] [2 3 0 0]
  • draw p4 slab $p4 PLANE @{plane({0 0 0}, {10 0 0})}
  • new feature: measure listsame as show measurements
  • bug fix: GenNBO reader does not read MOs properly
  • bug fix: GenNBO reader does not read UHF data
  • bug fix: GenNBO reader does not read xxx.31 file P orbitals not in X Y Z order
  • bug fix: applying unit cell in LOAD command to XYZ file containing multiple models
  • does not convert later model coordinates to fractional ones.
  • bug fix: Web Export and write xx.jmol fail for load XXX:: forcing file type
  • bug fix: write MOL creates V2000 file
  • bug fix: over-run of SDF, MOL/V2000 reports error
  • bug fix: assigning array elements using x[i] = pt, where pt is a
  • variable that is a cartsian point or a plane does not copy variable
  • bug fix: SMILES generator in certain cases may not return stereochem (c-C(OH)(H)-c)
  • bug fix: mistyped command such as measure LIST (with LIST present) crashes Jmol
  • bug fix: pop-up menu after zap 1.1 in set of two models crashes Jmol
  • code: V3000Reader integrated into MolReader
  • code: JUnit test for file reading GenNBO and CIF files lacks viewer object

New in Jmol 12.0.25 (Dec 20, 2010)

  • new feature: (part of write MOL bug fix) write SDF creates multi-model SDfile based on models of selected atoms
  • new feature: (part of write MOL bug fix) write V3000 creates V3000 file; see http://www.symyx.com/downloads/public/ctfile/ctfile.pdf
  • bug fix: write MOL creates V2000 file
  • bug fix: over-run of SDF, MOL/V2000 reports error
  • bug fix: Web Export and write xx.jmol fail for load XXX:: forcing file type
  • bug fix: GenNBO reader does not read MOs properly
  • bug fix: GenNBO reader does not read xxx.31 file P orbitals not in X Y Z order
  • bug fix: applying unit cell in LOAD command to XYZ file containing multiple models
  • does not convert later model coordinates to fractional ones.
  • bug fix: assigning array elements using x[i] = pt, where pt is a
  • variable that is a cartsian point or a plane does not copy variable
  • bug fix: SMILES generator in certain cases may not return stereochem (c-C(OH)(H)-c)
  • bug fix: pop-up menu after zap 1.1 in set of two models crashes Jmol
  • code: V3000Reader integrated into MolReader
  • code: JUnit test for file reading GenNBO and CIF files lacks viewer object

New in Jmol 12.1.24 Pre (Nov 30, 2010)

  • new feature: isosurface solvent [optionalRadius default:1.2] FULL
  • FULL option does full triples-test, about 3 times slower than
  • standard Jmol solvent/MOLECULAR surface, which only checks pairs.
  • somewhat more realistic.
  • bug fix: isosurface t.obj should be discernable as OBJ if created by PyMOL
  • bug fix: set drawPicking does not pick visible isosurfaces
  • bug fix: draw * translucent does nothing
  • bug fix: isosurface on frame other than first will be incorrect
  • bug fix: draw with multiple models can fail to save state
  • bug fix: SMILES check for c=c can fail.
  • bug fix: Mopac MGF reader upgrade allows orbital subset
  • bug fix: Mopac MGF reader upgrade allows filter "alpha", filter "beta"
  • bug fix: isosurface OBJ pymol.obj not reading Pymol output
  • new feature: streamlined STATE for appended files
  • bug fix: appending data to models with unit cells can cause odd results
  • bug fix: JME load append does not get saved properly in state
  • bug fix: bond set variables [{1 2 3}] incorrectly shown as atom bitsets ({1 2 3})
  • bug fix: xxx.yyy when "yyy" has been defined as a local variable using VAR fails
  • bug fix: find("SMILES", smilesString) does not find Jmol atomIndex == 0
  • bug fix: find("SMILES", smilesString) does not find [2H]
  • bug fix: slightly better response to command line input errors (complete command in history)
  • new feature: print point(3.5) -- rounds down (toward 0) to nearest integer
  • bug fix: IDTF exporter inverts rotation matrix from pt1, pt2, for dx = dy = 0
  • bug fix: Linux file completion from LOAD " improperly lowers the case of file names
  • new feature: Jmol SMILES generation includes stereochemistry
  • for octahedr al and trigonal bipyramidal

New in Jmol 12.0.22 (Nov 18, 2010)

  • bug fix: Jmol SMILES generation does not include stereohemistry
  • for octahedral and trigonal bipyramidal
  • bug fix: IDTF exporter inverts rotation matrix from pt1, pt2, for dx = dy = 0
  • bug fix: Linux file completion from LOAD " improperly lowers the case of file names
  • bug fix: zap 1.1 when models have cartoons or other bioshapes crashes Jmol (broken in 12.0.RC8)
  • bug fix: Ramachandran approximation of P straightness off by a few percent
  • bug fix: SMILES matching string with ".[C@H]" reads stereochemistry incorrectly
  • bug fix: load SMILES with %nn fails
  • bug fix: Jmol creating possibly ambiguous aromatic amine SMILES
  • 1-H-4-methylimidazole was: n1cnc(C)c1; now: [nH]1c[n]c(C)c1
  • bug fix: {*}.find("SMILES",smilesString) does not include aromatic H
  • bug fix: Smiles MF calculation for aromatic atoms N and C in error.

New in Jmol 12.1.23 Pre (Nov 16, 2010)

  • bug fix: labels OFF broken in 12.1.22

New in Jmol 12.0.19 (Oct 25, 2010)

  • bug fix: load "" does not work after loading a SET of models using load DATA
  • bug fix: CIF reader cannot read files with _space_group_symop_operation_xyz field
  • bug fix: naming functions or variables after Jmol token names fails or acts unexpectedly
  • (fixing this bug required script compiler changes, and that lead to the
  • two new features below)
  • bug fix: "var chains" does not work -- i.e. a name of a "within" option.
  • solution was to allow var ANYTHING.
  • bug fix: User variables and functions removed from state because they are
  • no longer necessary and also indeterminant in terms of the "state".
  • Originally these were needed because ECHO and DEFINE can be dynamic
  • -- which is still true -- and because certain commands such as ISOSURFACE
  • were being saved in the state just as their strings instead of their
  • intepreted code. But that was changed for 12.0, and this fix also changes
  • ECHO to be saved in its current state, not its dynamic state. While
  • dynamic DEFINE types may include variables, they aren't really
  • part of the "state" per se and aren't needed to recreate the state. So
  • they are dropped from the state with this fix as well.
  • new feature: function calls can look like Jmol commands (also added to 12.1.16):
  • function myfunc(a, b, c, d){....}
  • myfunc a b c d
  • these are MATHEMATICAL commands
  • use just a b, not @a @b
  • new feature: custom overloading of Jmol commands (also added to 12.1.16)
  • function measure(a, b) { print "measuring " + a + " " + b; measure @a @b }
  • measure {atomno=2} {atomno=3}
  • within function X, command X is standard Jmol;
  • outside the function, it is a reference to that function
  • overloaded functions are not saved in the state
  • new feature: load xxx.pdb filter "CONF 1" does a front-end filter of just
  • the first alt-loc atoms within a given residue. This leads to proper
  • formation of polymers in certain cases (2BLN, 2CI1). (necessary for DSSP)
  • bug fix: cartoon helix in 1TF6 broken by DSSP HHHGGG run
  • bug fix: not loading MOL files having no bonds
  • bug fix: load append INLINE ... not working
  • bug fix: max for Rasmol/chime units 499 -- should be 1000
  • bug fix: show state/xxxx incorrectly case-sensitive
  • code: undocumented load RANGE [i, j, k,...] removed (see load MODELS)
  • code: load FILTER clean-up, standardization

New in Jmol 12.1.16 Pre (Oct 21, 2010)

  • bug fix: naming functions or variables after Jmol token names fails or acts unexpectedly
  • (fixing this bug required script compiler changes, and that lead to the
  • two new features below)
  • bug fix: User variables and functions removed from state because they are
  • no longer necessary and also indeterminant in terms of the "state".
  • Originally these were needed because ECHO and DEFINE can be dynamic
  • -- which is still true -- and because certain commands such as ISOSURFACE
  • were being saved in the state just as their strings instead of their
  • intepreted code. But that was changed for 12.0, and this fix also changes
  • ECHO to be saved in its current state, not its dynamic state. While
  • dynamic DEFINE types may include variables, they aren't really
  • part of the "state" per se and aren't needed to recreate the state. So
  • they are dropped from the state with this fix as well.
  • new feature: function calls can look like Jmol commands (also added to 12.0):
  • function myfunc(a, b, c, d){....}
  • myfunc a b c d
  • -- these are MATHEMATICAL commands
  • -- use just a b, not @a @b
  • new feature: custom overloading of Jmol commands (also added to 12.0)
  • function measure(a, b) { print "measuring " + a + " " + b; measure @a @b }
  • measure {atomno=2} {atomno=3}
  • -- within function X, command X is standard Jmol;
  • -- outside the function, it is a reference to that function
  • -- overloaded functions are not saved in the state
  • bug fix: array variable elements cannot be changed
  • new feature: load xxx.pdb filter "CONF 1" does a front-end filter of just
  • the first alt-loc atoms within a given residue. This leads to proper
  • formation of polymers in certain cases (2BLN, 2CI1).
  • bug fix: "var chains" does not work -- i.e. a name of a "within" option.
  • solution was to allow var ANYTHING, understanding that if you
  • use "var CARTOONS" for instance, then CARTOONS ON is no longer
  • a command within the scope of that assignment.
  • bug fix: cartoon helix in 1TF6 broken by DSSP HHHGGG run
  • bug fix: not loading MOL files having no bonds
  • bug fix: load append INLINE ... not working
  • bug fix: max for Rasmol/chime units 499 -- should be 1000
  • bug fix: show state/xxxx incorrectly case-sensitive
  • code: undocumented load RANGE [i, j, k,...] removed (see load MODELS)
  • code: load FILTER clean-up, standardization

New in Jmol 12.1.15 Pre (Oct 15, 2010)

  • bug fix: QCHEM reader fails
  • bug fix: CRYSTAL reader fails to read formico_opt.out
  • bug fix: CIF reader not reading insertion codes (since forever!)
  • bug fix: set appendNew FALSE fails
  • bug fix: getproperty IMAGE (returning JPG64) doubles font size with set antialiasDisplay true
  • bug fix: "configuration 1" should select all if no alternative locations
  • new feature: PDB and CIF readers read helix subtypes alpha, 3/10, and pi
  • new feature: atom property substructure includes helixalpha(8), helix310(7) and helixpi(9)
  • bug fix: isosurface "xxxx.jvxl" colorscheme "rwb" does not work (jvxl files specifically)
  • feature change: DSSP default for "calculate structure"
  • old way is now "calculate structure RAMACHANDRAN"
  • feature change: DSSP default for LOAD of PDB file with no header.
  • in previous versions, Jmol used a ramachandran-angle-based calculation
  • for secondary structure determination when a PDB file had no HELIX or SHEET records.
  • It just seems reasonable to use the industry-standard DSSP method instead.
  • new feature: defaultStructureDSSP (default TRUE)
  • setting this FALSE gives previous behavior (see above)
  • for the CALCULATE STRUCTURE and LOAD commands
  • n the case of LOAD, only relevant when PDB header is missing HELIX/SHEET records
  • code: http://jmol.svn.sourceforge.net/viewvc/jmol/trunk/Jmol-datafiles/dssp/cullpdb_pc20_res1.6_R0.25_d101001_chains1769
  • was used for DSSP validation along with checkdssp.spt in that same directory
  • bug fix: load FILTER does not include %x for PDB files
  • bug fix: conformation n definition changed for PDB files to be consistent with DSSP

New in Jmol 12.0.17 (Oct 11, 2010)

  • bug fix: s = x[i] list variables all broken
  • bug fix: load FILTER does not include %x for PDB files
  • bug fix: conformation n definition changed for PDB files to be consistent with DSSP

New in Jmol 12.0.15 (Sep 22, 2010)

  • bug fix: unbind unknownName unbinds LEFT mouse!
  • bug fix: Safari slideZoom issue upon leaving and returning to applet (mouse MOVE not issued by OS)
  • bug fix: naming a variable after a function name such as "color" should be allowed
  • bug fix: "smilesString" changed to "_smilesString" and properly set
  • bug fix: Application filename for $xxxx not properly set
  • bug fix: MEP menu item is using MOLECULAR with default range; should be using VDW with range ALL
  • bug fix: unescaped spaces in load "$ethyl ether" cause fault at NIH.
  • bug fix: switch to String smilesUrlFormat = "http://cactus.nci.nih.gov/chemical/structure/%FILE/file?format=sdf&get3d=True";
  • bug fix: error writing isosurface color density JVXL file
  • bug fix: catch without catch(e) causes exception
  • bug fix: isolated H atoms when calculating hydrogen bonds causes exception
  • bug fix: Spartan reader not reading INPUT file coord -- adding filter "INPUT"
  • bug fix: calculate structure requiring {xxx}
  • code: deprecated "commandOption" shape property removed

New in Jmol 12.1.13 Pre (Sep 21, 2010)

  • new feature: hide/display bonds
  • new feature: hide/display [{bond set}]
  • new feature: allows customization of Jmol's phi/psi-based structure calculation
  • bug fix: unbind unknownName unbinds LEFT mouse!
  • bug fix: Safari slideZoom issue upon leaving and returning to applet (mouse MOVE not issued by OS)
  • bug fix: naming a variable after a function name such as "color" should be allowed
  • bug fix: "smilesString" changed to "_smilesString" and properly set
  • bug fix: Application filename for $xxxx not properly set
  • bug fix: language changing doesn't set tool tips
  • bug fix: MEP menu item is using MOLECULAR with default range; should be using VDW with range ALL
  • bug fix: unescaped spaces in load "$ethyl ether" cause fault at NIH.
  • bug fix: error writing isosurface color density JVXL file
  • bug fix: catch without catch(e) causes exception
  • bug fix: isolated H atoms when calculating hydrogen bonds causes exception
  • bug fix: Spartan reader not reading INPUT file coord -- adding filter "INPUT"
  • bug fix: calculate structure requiring {xxx}
  • code: deprecated "commandOption" shape property removed

New in Jmol 12.1.12 Pre (Sep 18, 2010)

  • code: JmolViewer interface Component display --> Container display (JPanel, JFrame, JDialog)
  • code: consoles work
  • code: examples get proper termination upon window closing
  • bug fix: reading unmapped isosurface from JVXL files broken in 12.0.13

New in Jmol 12.1.11 Pre (Sep 17, 2010)

  • test: set testFlag3 -- reports mouse action and mode (for Eric Martz)
  • new feature: set multipleBondRadiusFactor 0.75
  • new feature: set isosurfacePropertySmoothingPower
  • 0 (no property smoothing)
  • 10 (very strong smoothing)
  • 7 (default, same as Jmol 11.8)
  • new feature: AppletConsole allows embedding in larger applications
  • new feature: smooth on-the-fly language changes in applet and application
  • new feature: integrated AppConsole for embedded Jmol -- see Integration.java
  • new feature: multipleBondSpacing
  • set multipleBondSpacing = -1 (default, varies with viewing angle)
  • set multipleBondSpacing = -0.5 (half that distance; varies with viewing angle)
  • set multipleBondSpacing = 0.35 (positive ==> fixed multiple bond spacing)
  • bug fix: MO NOPLANE not working
  • bug fix: SmarterJmolAdapter should not read zip bytes it doesn't have to
  • bug fix: spacefill JMOL does not work
  • bug fix: Jmol 12 does not read old 11.1 isosurface commands from states
  • bug fix: load {i j k} RANGE x.x not expanding load box by 1 in each direction
  • bug fix: applet console does not display startup message
  • bug fix: console buttons do not change with new language
  • bug fix: undo/redo problems in AppConsole
  • bug fix: crystal reader can't read selected model
  • bug fix: 3.5E+0.0 read as "3.5 0.0"
  • bug fix: navY/navy color issue
  • bug fix: write PDB for nonPDB files incorrect
  • code: streamlined AppConsole and AppletConsole
  • code: GuiMap/JmolConsole AbstractButton methods merged
  • code: AppConsole now implements JmolCallbackListener, called by JmolPanel.notifyCallback

New in Jmol 12.1.10 Pre (Sep 9, 2010)

  • bug fix: JavaScript jmolScriptWait() can fail
  • bug fix: mep color range error (12.1.9, 12.0.11)
  • new feature: Spartan reader filter "ESPCHARGES" for ESP charges, if available, instead of Mulliken charges
  • color structure for carbohydrate fails
  • new feature: reset SPIN
  • new feature: set slabRange 5.0 -- a zoom-independent slabbing plane
  • bug fix: reset should not reset spin (introduced in 11.7.47); new RESET SPIN includes reset spinning
  • bug fix: SMILES generator allowing sp3 center in aromatic
  • bug fix: storing atom properties from CrystalReader messes up model atom bitset
  • bug fix: non PDB large molecule should not change default rendering
  • bug fix: PDB large molecule default rendering flaws

New in Jmol 12.1.10 Pre (Sep 9, 2010)

  • bug fix: JavaScript jmolScriptWait() can fail
  • bug fix: mep color range error (12.1.9, 12.0.11)
  • new feature: Spartan reader filter "ESPCHARGES" for ESP charges, if available, instead of Mulliken charges
  • color structure for carbohydrate fails
  • new feature: reset SPIN
  • new feature: set slabRange 5.0 -- a zoom-independent slabbing plane
  • bug fix: reset should not reset spin (introduced in 11.7.47); new RESET SPIN includes reset spinning
  • bug fix: SMILES generator allowing sp3 center in aromatic
  • bug fix: storing atom properties from CrystalReader messes up model atom bitset
  • bug fix: non PDB large molecule should not change default rendering
  • bug fix: PDB large molecule default rendering flaws

New in Jmol 12.1.9 Pre (Sep 3, 2010)

  • TODO: Check setting of other color schemes.
  • bug fix: set usercolorscheme not working.
  • bug fix: color label none when already none and after rendering for multi-line labels or with antialiasdisplay crashes Jmol
  • bug fix: lcaoCartoon p orbitals for CO2
  • bug fix: isosurface ISSQUARED
  • bug fix: PLOT command broken (Parser.parseStringInfestedFloatArray)
  • bug fix: color PROPERTY x with set rangeSelected does not work
  • bug fix: isosurface contour colors
  • bug fix: #....... #.... two in one line with first in first character fails
  • bug fix: isosurface plane problems
  • bug fix: set drawHover isosurface hover error kills hover watcher
  • code: AtomPropertyMapper isolated from IsoSolventReader
  • bug fix: isosurface "t.jvxl" map property temperature nonfunctional
  • bug fix: isosurface PROPERTY ("VDW 100%" implied) not working
  • code: rewrite of calculateHydrogen/hybridization code
  • bug fix: WRITE xxx should do SHOW not clipboard for application
  • bug fix: % at end of line acts as a line continuation
  • new feature: label %[shape]
  • new feature: lcaoCartoons dsp3 (a,b,c,d,e), d2sp3 (a,b,c,d,e,f)
  • bug fix: "sp3a" not "first bonded atom"
  • bug fix: failure to read old-style JVXL files.
  • bug fix: reading nth model from a file within a ZIP collection not possible

New in Jmol 12.1.8 Pre (Aug 28, 2010)

  • bug fix: LcaoCartoon capping/slabbing not saved in state
  • bug fix: isosurface planar mapping, contours, atomic orbital speed and scaling problems
  • bug fix: oops; isosurface atomicOrbital REALLY not scaling well

New in Jmol 12.0.9 (Aug 26, 2010)

  • bug fix: isosurface atomicOrbital not scaling well
  • bug fix: undo and smilesurlformat tokens missing
  • bug fix: isosurface ... map SQUARED ... nonfunctional
  • bug fix: exit, quit are stopping spinning -- should just be stopping moveTo
  • unless !exit or !quit.
  • bug fix: associative array problems with some auxiliaryInfo data saving to state
  • bug fix: binary map files within zip directories cannot be read
  • bug fix: mouse-based slab does not refresh
  • bug fix: JME reader misreading "Br+"
  • bug fix: Writing PDB file with residue number > 9999 trashes file. Now writes "0000" "0001" etc.

New in Jmol 12.1.6 Pre (Aug 21, 2010)

  • bug fix: very first start of Jmol, with no history, fails.
  • bug fix: QChem reader not indicating symmetry A B properly
  • bug fix: QChem reader filter "BETA" fails
  • bug fix: obscure error when array variable is in place of required expression
  • bug fix: ColorEncoder not allowing for override of BW and WB palette
  • bug fix: GAMESS reader UHF caught on reading orbitals with LZ VALUE line

New in Jmol 12.1.5 Pre (Aug 19, 2010)

  • bug fix: set defaults RASMOL broken
  • bug fix: CRYSTAL reader FREQUENCY needs fragment numbers sorted
  • bug fix: rotation QUATERNION broken by 11.9.36, Mar 25, 2009 - Does not rotation about {0 0 0}
  • bug fix: CURSOR_WAIT hourglass not turning off automatically after set picking JmolScript operation
  • bug fix: associative array function .keys should report sorted key list
  • bug fix: associative arrays as ScriptVariables must be checked for type
  • new feature: color() function:
  • color("") -- full details on current propertyColorScheme
  • color("$someID") -- full details on isosurface ID "someID" color scheme
  • color("xxx") -- full details for a named scheme where "xxx" is "rwb", for instance
  • color("myscale = [xFF0000] [ x00FF00] [x0000FF]") creation of a scheme and return of details
  • color("roygb", n) -- nth color of a standard color scheme
  • color("", x.y) -- color for a property value x.y
  • color("$someID", x.y) -- color for isosurface ID "someID" value x.y
  • color("roygb", min, max) -- color/value pairs (two arrays)
  • color("roygb", min, max, value) -- color for specific value
  • print color("myscale = [xFF0000] [x00FF00] [x0000FF]")

New in Jmol 12.0.3 (Aug 7, 2010)

  • bug fix: struts not restored from state
  • bug fix: color STRUTS also colors hbonds
  • new feature: Application Display menu item "resize"
  • bug fix: draw CYLINDER n ... where n is an integer does not give flat ends
  • bug fix: PNG file state for multiple file load cannot be read
  • bug fix: Jmol application not accepting -g
  • bug fix: "no atoms found returns wrong error message
  • bug fix: XYZ reader fails with load "filename" 3
  • bug fix: "[1,3,4,5]" can be translated to [1,3,4]
  • bug fix: slab/depth mouse action does not automatically refresh

New in Jmol 12.0.1 (Jul 30, 2010)

  • customizable mouse button/action bindings
  • multi-touch/Kiosk capability using SPARSHUI adaptation (U-Tube video)
  • parallel multiprocessor capability for isosurface creation
  • drag-and-drop to signed applets and the application
  • model kit mode allows rapid construction of simple models
  • extensive support for depiction of space groups
  • conversion of 2D models (SMILES, JME, MOL) to 3D
  • interface to JSDraw for 2D structure input
  • interface to Flot for plotting data
  • full implementation of Daylight SMILES/SMARTS
  • extension of Daylight SMARTS to 3D conformation
  • introduction of Jmol bioSMILES and bioSMARTS
  • new JmolSmilesApplet.jar.
  • JavaScript-like flow commands and TIMEOUT
  • JavaScript-like TRY/CATCH error handling
  • direct reading of Uppsala electron density maps
  • natural bond orbital reading/rendering
  • direct logging to files using the LOG command

New in Jmol 12.0 RC29 (Jul 28, 2010)

  • bug fix -- recent GAMESS f-orbital read error
  • bug fix -- recent MOL file read failure

New in Jmol 12.0 RC28 (Jul 27, 2010)

  • bug fix: Jmol Model Kit broken :{
  • bug fix: PROMPT command need not require @{...}
  • bug fix: a = {} needs to default to ({}) (empty bitset)
  • bug fix: alternative select @b[a]
  • bug fix: allowance for b["test"][1][3]

New in Jmol 12.0 RC26 (Jul 21, 2010)

  • bug fix -- recent GAMESS f-orbital read error
  • bug fix -- recent MOL file read failure

New in Jmol 12.0 RC25 (Jul 10, 2010)

  • Altered CmlReader.java adapter to allow cml input to applet by reading DOM nodes from the browser. (TOHW)
  • Completed much of the CdkJmolAdapter: PDB properties are now supported, and ChemSequence/ChemModel is mapped to AtomSetCollection/AtomSet. (EW)
  • Added reading of input structures from Mopac files. (EW)
  • Added Folding@Home (folding.stanford.edu) current.xyz files reader. (NV)
  • Added Unicode support in scripts. (MTH)
  • Added rendering of mesh surfaces.
  • Added rendering of polyhedrals. (MTH)
  • Added Drag-and-Drop to the application for JVM 1.5 and better. (ST)
  • Added the DADMLBrowser plugin allowing retrieving chemical information from the internet by queries on indices and URIs like dadml://any/pdbid?1CRN. (EW)
  • Added support for Spartan '04 smol files. (EW)
  • Added substructure command for SMILES pattern matching. (NV)
  • Dutch, Estonian, Hungarian, Portuguese, Romanian translations of Folding@Home webpage. (PV,IS,FL,CPN,TIM)
  • Spanish translation of Application, Applet and website. (AH)
  • Estonian translation of Application and Applet. (IS)

New in Jmol 12.0 RC24 (Jul 10, 2010)

  • bug fix -- recent GAMESS f-orbital read error
  • ug fix -- recent MOL file read failure

New in Jmol 12.0 RC23 (Jul 7, 2010)

  • feature change: quaternionFrame 'A' now 'B'
  • bug fix: documented quaternionFrame 'Q' returned (though not useful)
  • bug fix: readers might shift center of mass (normalize)
  • when CIF file models are loaded without a unit cell indication.
  • now set to not do that. You wouldn't notice it particularly unless you
  • later turned on the unit cell and noticed that the atoms were off
  • or you know the file data coordinates and notice that picked atoms have
  • different ones.
  • new feature: eta/theta atom properties -- nucleic acid conformation
  • Carlos M. Duarte, Leven M. Wadley, and Anna Marie Pyle
  • RNA structure comparison, motif search and discovery using a reduced
  • representation of RNA conformational space
  • Nucleic Acids Research, 2003, Vol. 31, No. 16 4755-4761
  • eta (C4_i-1 - P_i - C4_i - P_i+1)
  • theta (P_i - C4_i - P_i+1 - C4_i+1)
  • new feature: PLOT PROPERTY propertyX propertyY (optional propertyZ)
  • makes a graph for the currently selected atom set
  • also equivalent for quaternion and ramachandran commands, but preferred for
  • plot quaternion...
  • plot ramachandran...
  • deprecated: quaternion, ramachandran
  • new feature: mapProperty {atomSetFrom}.property1 {atomSetTo}.property2 (optional propertyKey)
  • Allows mapping of property data from one set of atoms to another
  • based on a key such as atomno or resno (default atomno).
  • Property2 must be "settable".
  • also mapProperty SELECTED {atomSet} key
  • same as mapProperty {selected}.selected {atomSet}.selected key
  • For example, creating a quaternion map, then mapping that data
  • with straightness, and then selecting a very specific subset of
  • the quaternion data and using that selection to select data
  • in the original model:
  • load 3cc2.pdb
  • calculate straightness
  • set quaternionframe 'B'
  • quaternion r difference
  • display {rna}
  • mapProperty {1.1 and *.P}.straightness {2.1 and rna}.property_x resno
  • select 2.1 and rna; color property_x;spacefill 0.1
  • select 2.1 and rna and within(2.0,{1.7700001 -0.49 2.62})
  • mapProperty selected {1.1 and *.P}
  • new feature: quaternionFrame "B" for nucleic C4'/P/C4'
  • feature change: quaternionFrame "C" for nucleic acids now
  • set as per:
  • Sarver M, Zirbel CL, Stombaugh J, Mokdad A, Leontis NB.
  • FR3D: finding local and composite recurrent structural motifs in RNA 3D structures.
  • J. Math. Biol. (2006) 215-252
  • new feature: print {selected}.find("SEQUENCE")
  • returns 1-letter sequence for selected atoms
  • new feature: print {selected}.find("SEQUENCE", true)
  • returns 1-letter sequence for selected atoms, with cross-links:
  • $ load 1crn.pdb
  • $ show sequence
  • Model 1
  • Chain A:
  • [THR]1 [THR]2 [CYS]3 [CYS]4 [PRO]5
  • [SER]6 [ILE]7 [VAL]8 [ALA]9 [ARG]10
  • [SER]11 [ASN]12 [PHE]13 [ASN]14 [VAL]15
  • [CYS]16 [ARG]17 [LEU]18 [PRO]19 [GLY]20
  • [THR]21 [PRO]22 [GLU]23 [ALA]24 [ILE]25
  • [CYS]26 [ALA]27 [THR]28 [TYR]29 [THR]30
  • [GLY]31 [CYS]32 [ILE]33 [ILE]34 [ILE]35
  • [PRO]36 [GLY]37 [ALA]38 [THR]39 [CYS]40
  • [PRO]41 [GLY]42 [ASP]43 [TYR]44 [ALA]45
  • [ASN]46
  • $ print {*}.find("sequence")
  • //* chain A protein 1 *// ~p~TTCCPSIVARSNFNVCRLPGTPEAICATYTGCIIIPGATCPGDYAN //* 46 *//
  • $ print {*}.find("sequence", true)
  • //* chain A protein 1 *// ~p~TTC:1C:2PSIVARSNFNVC:3RLPGTPEAIC:3ATYTGC:2IIIPGA
  • TC:1PGDYAN //* 46 *//
  • bug fix: state save for quaternion/ramachandran data frames fails
  • bug fix: Spartan reader not reading MOs when there is only one atom (AOs, that is)
  • bug fix: bioSMARTS search including first group
  • bug fix: MOReader (Gaussian, GAMESS) fix for NBO cartesian D/F orbitals
  • bug fix: atom deletion can result in array length error
  • bug fix: Application rubber-band selection mode not allows atom pick to be selection toggle

New in Jmol 12.0 RC22 (Jul 2, 2010)

  • bug fix: bioSMILES "~C:1.~G:1" fails
  • new feature: axes center {x y z}
  • new feature: data "connect_atoms" (for state with large number of connections)
  • new feature: set picking measure sequence
  • bug fix: rotate symop not functional for some symops
  • bug fix: phosphorus-only polymer quaternions not operational
  • bug fix: 3D-SMARTS multiple nesting
  • new feature: 3D-SMARTS [$(...)n]
  • new feature: 3D-SMARTS [$(...)nMin-nMax]
  • new feature: 3D-SMARTS pattern1 || pattern2
  • new feature: data "property_atom.xxxx" can be used like "property_xxxx" but xxxx must be a
  • settable atom property, which it will set.
  • bug fix: 11.6.RC15 introduced {*}.property_x same as {*}.x. But that is
  • not documented, and those are supposed to be different. The proper way to do this is:
  • data "property_x"
  • end "property_x"
  • {*}.partialcharge = data("property_x")

New in Jmol 12.0 RC21 (Jun 28, 2010)

  • new feature: set cartoonBaseEdges
  • displays nucleic acid bases as triangles
  • red:sugar edge, Green:Watson-Crick edge, Blue:Hoogsteen edge
  • see Nasalean L, Strombaugh J, Zirbel CL, and Leontis NB in
  • Non-Protein Coding RNAs, Nils G. Walter, Sarah A. Woodson, Robert T. Batey, Eds.
  • Chapter 1, p 6.
  • http://books.google.com/books?hl=en&lr=&id=se5JVEqO11AC&oi=fnd&pg=PR11&dq=Non-Protein+Coding+RNAs&ots=3uTkn7m3DA&sig=6LzQREmSdSoZ6yNrQ15zjYREFNE#v=onepage&q&f=false
  • bug fix: NOS (inosine) not given 1-letter code I
  • bug fix: quaternion({atom expression}) returning array
  • new feature: (undocumented) quaternion({atom expression}, nMax)
  • returns array of values.
  • bug fix: state preserved for modelkitmode
  • new feature: bioSEQUENCE () indicates "not cross-linked": select search("~r~C()~")
  • new feature: bioSEQUENCE subsets ~p~, ~n~, ~r~, ~d~
  • new feature: bioSEQUENCE wildcards N (same as * for ~n~, ~r~, or ~d~)
  • R (same as [A,G] for ~n~, ~r~, or ~d~)
  • Y (same as [C,T,U] for ~n~, ~r~, or ~d~)
  • bug fix: acceptance of curly " from Microsoft Word text clipping in scripts
  • bug fix: lcaocartoon cap broken
  • bug fix: isosurface boundbox not read from state
  • bug fix: translucent isosurface colorscheme saved but not read from state
  • new feature: modelkit mode invert ring stereochemistry
  • bug fix: application select-atoms toolbar button nonfunctional
  • new feature: set picking symmetry (undocumented)

New in Jmol 12.0 RC20 (Jun 21, 2010)

  • bug fix: JVXL XML reader error with "/>" in data attribute
  • bug fix: select within(5.0, {0 0 0}) nonfunctional
  • bug fix: MO fix for df order in model sets containing NBO and non-NBO orbitals
  • bug fix: font MEASUREMENTS ...
  • bug fix: QChem reader MO fix
  • bug fix: G orbital skipping
  • bug fix: WebExport creates directories in directories
  • bug fix: SMARTS C(CCCCN1)1 fix.
  • bug fix: removing rule that a SMILES string cannot end with a branch.
  • bug fix: log "NOW" changed to log "$NOW$"
  • bug fix: log "$CLEAR$" clears the log file
  • bug fix: syntax "else { [eol]" not functional

New in Jmol 12.0 RC19 (Jun 17, 2010)

  • new feature: invertSelected STEREO {center} {atomsToInvert}
  • Does a rotation of 180 degrees around a center about a line connecting
  • the center and the geometric center of any connected atoms not in the
  • list to invert. The results is the standard organic chemist's
  • "stereochemical inversion" at that point -- which does not
  • invert stereochemistry along the branches.
  • bug fix: set minimizationCriterion, set minimizationRefresh, set minimizationSteps
  • code: matrix3f/matrix4f JmolScript improvements
  • bug fix: load "@x" loads model twice when the saved state is restored
  • bug fix: load "@x" does not preserve load options
  • bug fix: UnitCell in appended model but not first model does not display

New in Jmol 12.0 RC18 (Jun 11, 2010)

  • bug fix: set drawPicking/drawHover inconsistent regarding isosurfaces
  • bug fix: exiting modelkitmode does not reset picking/hover settings
  • new feature: SMILES/SMARTS C^C and C^^C or C!^C (SMARTS) -- atropisomer (dihedral angle) check
  • new feature; SMILES and/or BIOSMILES with /double bond/ stereochemistry
  • new feature: {*}.find("SMILES", asBioSmiles), with asBioSmiles default FAlSE
  • so simply {*}.find("SMILES") gives STANDARD SMILES (noncanonical)
  • bug fix: WebExport now defaults to loading split applet
  • when pages are running from server.
  • new feature: SMILES reading proposed [C@]=C
  • bug fix: SmilesGenerator double bonds
  • new feature: Widgets in WebExport
  • Spin on/off checkbox
  • Open Console button
  • Background Color Picker
  • Stereo Viewing Mode Control
  • Animation Control

New in Jmol 12.0 RC17 (Jun 7, 2010)

  • bug fix: RC16 probably has chirality errors.
  • bug fix: square planar SP3 chirality inverted
  • new feature: BIOSMARTS note that for DNA, ":" marks crossing,
  • and since then the strand sequence reverses, we
  • can then show double helix simply as:
  • select nucleic and within(smarts,"~TGTCCT:AGGACA")
  • or, even simpler:
  • select nucleic and within(smarts,"~TGTCCT:******")
  • new feature: BIOSMILES format.

New in Jmol 12.0 RC16 (Jun 5, 2010)

  • bug fix: set minimizationCriterion, set minimizationRefresh, set minimizationSteps
  • code: matrix3f/matrix4f JmolScript improvements
  • bug fix: load "@x" loads model twice when the saved state is restored
  • bug fix: load "@x" does not preserve load options
  • bug fix: UnitCell in appended model but not first model does not display

New in Jmol 12.0 RC15 (May 29, 2010)

  • new feature Jmol reads SMILES --> 3D from http://cheminfo.informatics.indiana.edu/rest/thread/d3.py/SMILES
  • see http://cheminfo.wikispaces.com/smi23d
  • new feature: load SMILES "smilesstring"
  • new feature: load $smilesString
  • code: file reading clean-up in Viewer
  • bug fix: 12.0.RC6 (4/17) inadvertantly left in "false &&" in if statement in atom iterator broke:
  • polyhedra 2.0, geosurface, dots, and slows isosurface molecular more than 2-fold
  • new feature: FIX command takes argument like display or select. But ensures no atoms of this
  • set will be moved or dragged anywhere accidentally.
  • bug fix: isosurface selecting 2nd model while two are displayed produces no surface
  • new feature: set picking dragMinimizeMolecule (docking)
  • Using the model kit, you can load two models and then
  • use "drag and minimize molecule (docking) to move a model around and
  • watch how it responds to its fixed environment (within 5.0 A). If you have a ligand and a receptor,
  • if you move the ligand, it will minimize; if you move the receptor, it will minimize.
  • You can undo any change using CTRL-Z and redo it with CTRL-Y.
  • code: BitSetUtil.setBit()
  • bug fix: within() with the all-molecules flag was not working.
  • bug fix: isosurace PMESH inline not working
  • new feature: allowModelKit
  • new feature: modelkitmode expanded; "all frames" icon added in application
  • bug fix: improper/incomplete deletion of atoms
  • NOTE: Jmol 11.9 should not be considered ready for atom deletion
  • code: refactoring for proper deleted atoms processing
  • code: circle-drawing simplified; better highlight; POV-Ray halos fixed
  • new feature: assign ATOM {atom} "Symbol or Pl or Mi"
  • changes the type of {atom} to the given symbol or changes the charge up (Pl) or down (Mi) by one
  • adjusts valence with hydrogens as necessary
  • for example: assign ATOM {atomno=3} "C"
  • new feature: assign ATOM {atom} "type" {x y z}
  • creates a new atom at {x y z} of the given type, connected to {atom}
  • new feature: assign BOND {bond} "2"
  • modifies the bond and fixes valences at the two ends using hydrogen atoms
  • bug fix: synchronized (function) does not allow mouse-based function calling
  • TODO: Model Kit icons for atom/bond menus, rings, rotation
  • new feature: set picking assignAtom_+/- changed to assignAtom_Plus/Minus
  • new feature: set picking assignBond_+/- changed to assignBond_Plus/Minus
  • new feature: set modelkitMode
  • establishes three context menus -- atom, bond, and modelkit
  • allows extensive and easy modification of structures
  • TRIAL CHANGE: JmolApplet.jar and JmolAppletSigned.jar do not contain translations
  • for translations, use JmolApplet0.jar and JmolAppletSigned0.jar
  • this saves almost 30% in file size. Otherwise all the translations for
  • all languages are included in every download to every browser.
  • Point being that one should not use JmolApplet.jar or JmolAppletSigned.jar
  • in "production" mode -- they are just too big!
  • bug fix: after deleting atoms, connections can be found to deleted atoms

New in Jmol 12.0 RC14 (May 25, 2010)

  • bug fix: draw xx* delete -- does not recognize xx* as wild
  • bug fix: restore coord does not recalculate shapes
  • new feature: set highlight {atom set} or set highlight OFF
  • new feature: set picking assignAtom_Xx where Xx is an element
  • assigns the picked atom to that element and
  • bonds nearby atoms if present to form rings
  • new feature: set picking assignAtom_+ increments charge
  • new feature: set picking assignAtom_- decrements charge
  • all three adjust valence accordingly using hydrogen atoms
  • new feature: set bondPicking -- independent of atom picking
  • new feature: set picking assignBond_+ increments bonding
  • new feature: set picking assignBond_- decrements bonding
  • new feature: set picking assignBond_0|1|2|3 sets bonding
  • all three adjust valence accordingly using hydrogen atoms
  • new feature: CTRL-V will load file in clipboard or fail gracefully
  • new feature: CTRL-Z single undo of deletion/modification actions
  • new feature: set picking invertStereo
  • bug fix: minimization after atom deletion

New in Jmol 12.0 RC13 (May 24, 2010)

  • new feature: application title changes with animation frame change
  • new feature: file system directory clip file name(s), then CTRL-V into Jmol --> loads files
  • bug fix: Crystal reader broken
  • bug fix: AtomSetChooser not producing heirarchy of models
  • bug fix: within(BASEPAIR) incorrect logic check
  • code: ActionManagerMT and associated interfaces moved to org.jmol.multitouch
  • bug fix: smiles, mac problem with latest pre-release build
  • new feature: set picking dragMinimize -- drags and minimizes all atoms in the molecule containing the picked atom
  • new feature: set picking dragAtom -- drags the atom picked to a new location
  • code: TransformManager removing pointT
  • bug fix: dragSelected could be off by 1 pixel
  • bug fix: working on the 1.5/1.4 problem -- all unnecessary 1.5 coding switched back to 1.4 format including String.contains; parallel processing Executor class isolated from Viewer
  • bug fix: select within(SMILES,@x) not working

New in Jmol 11.8.24 (May 21, 2010)

  • bug fix: isosurface sigma x.x not properly implemented
  • "sigma 3.0" means "3.0 times the cutoff associated with sigma = 1.0"
  • this to be consistent with the Aztex viewer sliders that set the value of
  • 1.0 to be "1.0 sigma" and then scale based on that.
  • new feature: "3D-SMARTS" -- smarts("a") assigns aromatic based on 3D geometry --
  • -- flat ring of 3-7 atoms with all substituents directly in plane
  • true, not the official designation, but far more practical than checking bonds
  • -- will pick out rings in HIS, TYR, TRP, nucleic acid bases, etc.
  • new feature: full set of allenic, tetrahedral, square planar, trigonal pyramidal,
  • and octahedral smiles/smarts/substructure stereochemistry
  • tested against all structures described at
  • http://www.daylight.com/dayhtml/doc/theory/theory.smiles.html#RTFToC24
  • new feature: smiles/smarts/substructure adds allene stereochemistry:
  • select smarts("C(Cl)(C)=[C@@]=C(F)[H]")
  • new feature: smiles/smarts/substructure adds double bond stereochemistry:
  • select smarts("C(O)/C=C/([CH2])C")
  • new feature: "smarts" does not include attached hydrogens in match
  • new feature: smiles/smarts/substructure with tetrahedral chirality
  • select smarts("C[C@@]([C]=O)([CH])[CH2]")
  • code: Smiles refactoring and efficiencies

New in Jmol 12.0 RC12 (May 19, 2010)

  • bug fix: set measurements 0.05 not saved in state
  • bug fix: SMILES business not working outside of first frame
  • new feature: m = compare({2.1},{1.1} [,"SMARTS" (default)|"SMILES"],"smartsString..." [,"stddev"]) does a MATCH of atoms, then a compare
  • new feature: compare {2.1} {1.1} "[OH]ccOC" translate rotate SMARTS implied, but keyword SMILES or SMARTS can be used as well: correlates and moves model 2.1 to best fit for 1.1 based on the mapping of atoms from the SMARTS string

New in Jmol 12.0 RC10 (May 7, 2010)

  • bug fix: isosurface sigma x.x not properly implemented
  • "sigma 3.0" means "3.0 times the cutoff associated with sigma = 1.0"
  • this to be consistent with the Aztex viewer sliders that set the value of
  • 1.0 to be "1.0 sigma" and then scale based on that.
  • new feature: "3D-SMARTS" -- smarts("a") assigns aromatic based on 3D geometry --
  • -- flat ring of 3-7 atoms with all substituents directly in plane
  • true, not the official designation, but far more practical than checking bonds
  • -- will pick out rings in HIS, TYR, TRP, nucleic acid bases, etc.
  • new feature: full set of allenic, tetrahedral, square planar, trigonal pyramidal,
  • and octahedral smiles/smarts/substructure stereochemistry
  • tested against all structures described at
  • http://www.daylight.com/dayhtml/doc/theory/theory.smiles.html#RTFToC24
  • new feature: smiles/smarts/substructure adds allene stereochemistry:
  • select smarts("C(Cl)(C)=[C@@]=C(F)[H]")
  • new feature: smiles/smarts/substructure adds double bond stereochemistry:
  • select smarts("C(O)/C=C/([CH2])C")
  • new feature: "smarts" does not include attached hydrogens in match
  • new feature: smiles/smarts/substructure with tetrahedral chirality
  • select smarts("C[C@@]([C]=O)([CH])[CH2]")
  • code: Smiles refactoring and efficiencies
  • note: I realize that smarts and smiles is a can of worms, particularly in
  • relation to aromaticity. Ignoring that for now.
  • new feature: {atomSet}.find(["SMARTS",]"smartsString"[,isAll])
  • new feature: {atomSet}.find("SMILES","smilesString"[,isAll])
  • new feature: "smilesString".find("SMARTS","smartsString" [, isAll])
  • new feature: select smarts("smartsString")
  • smarts does not do implied H atoms, making it much easier to
  • use for pattern matching, which it was made for.
  • new feature: select smiles("smilesString") alias for substructure(..)
  • more specific and relevant -- SMILES strings are supposed to
  • be for full molecules, not substructure searching
  • new feature: JME data saved in variable "jmeString" for later generation of 2D data
  • new feature: "smilesString".find("SMILES","smilesString" [, isAll (FALSE)] )
  • bug fix: SMILES parser not properly checking explicit double bond check
  • new feature: SMILES matching expanded to aromatic types
  • bug fix: Spartan reader (compound document) misreadcode: frequency reading standardized -- using auxiliaryInfo.modelProperties more effectively
  • code: note that then getProperty modelInfo will return constraints, energies, and vibrational frequency info
  • CHANGED FEATURE: set loadDefaultOrientation retired (Sygress/CAChe and Spartan files only) in favor of FILTER "noOrient"
  • note that this will change the default orientation for these files to be the one last
  • saved in the actual .spartan or .csf file.
  • bug fix: undocumented obscure reference to nonstandard Hall symbols disregarded in readers
  • new feature: isosurface "=nnnn" automatically loads Uppsala Electron Density Server data
  • new feature: edsUrlCutoff, edsUrlFormat sets method of getting cutoff and file from electron density server
  • String edsURLFormat = "http://eds.bmc.uu.se/eds/dfs/%LC13/%LCFILE/%LCFILE.omap";
  • String edsURLCutoff = "load('http://eds.bmc.uu.se/eds/dfs/%LC13/%LCFILE/%LCFILE.sfdat').lines.find('MAP_SIGMA').split(' ')[2]";
  • LCFILE is file.toLowerCase(); LC13 is file.substring(1,3).toLowerCase()
  • bug fix: state should not be saving loadFormat, edsLoadFormat, or edsLoadCutoff
  • bug fix: isosurface LATTICE option not generating copies for export
  • code: all exporters may write files directly(was just POVRAY)

New in Jmol 12.0 RC9 (Apr 30, 2010)

  • bug fix: mo parameters not restored properly from state
  • application: File menu "Output Console" changed to just "Console"
  • code: support for Java 1.0, 1.1, 1.2, 1.4 dropped (MouseManagers and JmolPopup, Graphics3D)
  • bug fix: parallel:
  • ScriptEvaluator: Given function object holds state, it can not be
  • called from two threads at the same time. So, runFunction is wrapped in synchronized(function).
  • ParallelProcessor: Is modified to use lock object vs this as this is used in ScriptEvaluator.
  • Viewer: Change to Executor factory to use different thread executor,
  • thus avoiding deadlock if parallel functions call parallel functions and
  • allows parallel processes to be eligible to run.
  • new feature: script level iteration max increased to 20 (still just an arbitrary number)
  • new feature: "boundingBox" alias for "boundBox", also "boundingBoxColor" and "showBoundingBox"
  • new feature: reading mol file stereochemistry bond types 1 and 6
  • bug fix: fix for write POVRAY "xxx" not writing file for signed applet
  • new feature: wait cursor for file loading and isosurface creation
  • bug fix: CSF reader upgrade
  • bug fix: stereochemistry addtion for JME skipping some wedges
  • bug fix: writing MOL files with aromatic bonds fails
  • bug fix: It is possible for PDB files (1tmv) to include non-crystallographic
  • symmetry operations. These operations do not fit the standard model of
  • Jones-Faithful operator syntax. (The symmetry in this case is a spiral)
  • In that case, the list of symmetry operations may be truncated, and though
  • all the atoms are in the correct positions, "select symop=49" might not work.
  • bug fix: PDB biomolecule reading misses a set if the first is not "x,y,z"
  • code: Java 1.5 required. (this has been the actual case for some time)
  • code: UFF Calcution tweak: // added b.type == "C_2+" for cations 12.0.RC9
  • bug fix: UFF calculation fails to recognize C+ and C-
  • bug fix: POV-Ray exporter should not store file path in .ini file
  • code: unitcell cleanup
  • bug fix: boundbox {1/2 1/2 1/2} {1/2 1/2 1/2} not working
  • new feature: CRYSTAL reader orients unit cell
  • code: general capability to orient unit cell
  • new feature: isosurface lattice {a b c}
  • can be applied AFTER the fact it is just a rendering method
  • best carried out with PACKED unit cells
  • bug fix: major upgrade for state preservation of isosurface
  • no longer ;xxxxx
  • command in state reflects variable insertion
  • sign colors not having desired effect

New in Jmol 12.0 RC8 (Apr 26, 2010)

  • code: preliminary PARALLEL {.... PROCESS {....} ....}
  • code: Normix3D refactoring
  • bug fix: set measureAllModels not working properly
  • bug fix: isosurface renderer subtle improvement for alm

New in Jmol 12.0 RC7 (Apr 23, 2010)

  • bug fix: unicode characters in filenames
  • bug fix: isosurface broken in 12.0.RC6
  • new feature: drag-and-drop defaults for map files and PDB files
  • bug fix: VRML exporter fails to remove duplicate spheres if not same color
  • bug fix: states not saving correct path to isosurface files
  • new feature: spacefill, halos, stars -x.y is "ONLY" as for other shapes
  • bug fix: _atomPicked not updated for centering or other non-identify actions
  • new feature: model numbers can be given as "2.1" in quotes
  • bug fix for parallel processing and isosurface

New in Jmol 12.0 RC6 (Apr 19, 2010)

  • ode: ShapeManager created; all shape[] references out of ModelSet
  • code: preliminary PARALLEL {.... PROCESS {....} ....}
  • code: Normix3D refactoring
  • bug fix: set measureAllModels not working properly
  • bug fix: isosurface renderer subtle improvement for almost-degenerate-vertex triangles
  • new feature: set monitorEnergy -- preliminary idea only
  • bug fix: UFF carbonyl out-of-plane calculation coding error does not minimize carbonyl groups correctly

New in Jmol 12.0 RC5 (Apr 15, 2010)

  • new feature: multiple file drag and drop into application and signed applet
  • new feature: minimize SILENT
  • new feature: JME file loading uses minimize silent addhydrogens
  • new feature: drag and drop into signed applet
  • new feature: drag and drop from link, state-image for MSIE and Mozilla
  • new feature: load INLINE "......jme data...."
  • really only for JME data, since there is no option for multiple lines
  • same as
  • x = ".....jme data...."; load "@x" (which does allow for multiple lines)
  • code: removed unused, undocumented load DATA option
  • new feature: mol file FILTER "2D" option
  • new feature: within("smiles",{atomSet}[,{requiredAtoms}[,{notAtoms}]])
  • new feature: x = {} as "empty set" (for {requiredAtoms}, above)
  • code: jme 2D to 3D enhancement
  • bug fix: resolver could consider some CUBE files to be MOL files
  • bug fix: deleting atoms or bonds does not reset molecules
  • bug fix: GOTO command broken within IF construct
  • bug fix: restrict ... with dots ON causes NPE
  • new feature: select CYSTINE
  • new feature: set minimizationSilent
  • code: org.jmol.api.smilesMatcherInterface
  • public abstract BitSet[] getSubstructureSetArray(String smiles)
  • new feature x = within("smiles",smilesString)
  • returns ARRAY of bitsets -- all matching sets
  • $ x = within("smiles", "[C]1[C][C][C][C][C]1") get all cyclohexane rings
  • $ print x
  • ({0 1 3 5 6})
  • ({0 2 4:6})
  • TODO: add this to read JME cyclohexane rings better?
  • new feature: JME reader reads stereochemistry and automatically adds hydrogens and does minimization
  • this can be prevented using FILTER "nominimize"
  • bug fix: JME reader broken
  • new feature: show within(nResidues, GROUP, {atoms})
  • new feature: show basepairs
  • new feature: within(sequence, "GCAUGGC")
  • new feature: within(basepair)
  • new feature: within(basepair, "GCAU") canonical RNA
  • bug fix: within("GC") not working

New in Jmol 12.0 RC4 (Apr 10, 2010)

  • new feature: repaintWaitMs (1000)
  • bug fix: hiding of HBONDS does not work properly with set HBONDS BACKBONE
  • bug fix: hiding of RNA backbone does not work properly
  • bug fix: drag selected (App icon) does not work properly)
  • code: better molecule calculation
  • new feature: negative sizes for cartoons, rockets, trace, backbone, wireframe, etc. implies ONLY
  • new feature: set rangeSelected now applies to any property, not just temperature
  • new feature: much improved nucleic hydrogen bonding -- see 2qnh.pdb
  • bug fix: x = {atomno < 10}; select x fails
  • bug fix: subtle cartoonRenderer error involving --i > 0;
  • bug fix: rockets miscalculation of sheet parameters since forever (load 1ag6.pdb;rockets on)
  • bug fix: atomSite incorrectly assigned in AtomSetCollection for BIOMOLECULE generation
  • code: hermite renderer did not need global integer -- causing exception when rendering threads clash
  • bug fix: write PNG does not properly indicate that it is going to the clipboard
  • code: better handling of VAR local variables
  • new feature: VAR variables are now local to FOR and WHILE loops, as in Java
  • new feature: { } will group contexts for VAR variables:

New in Jmol 12.0 RC3 (Apr 6, 2010)

  • code: smarter atomName save/lookup using PDB atomID
  • bug fix: with unremediated PDB files, searching for *.C1' returns nothing
  • code: dispensing with specialAtomID array
  • bug fix: Jmol pseudo-hydrogen bonds were sometimes between two carbonyl groups
  • bug fix: structures with 400000+ atoms may be loaded
  • bug fix: calculated hbonds not retaining energy or type when saved to state
  • bug fix: color hbonds ENERGY causes NPE when non-calculated HBonds are created
  • code: smarter SmarterJmolAdapter deletes atoms as it goes to conserve resources
  • allows loading of much larger models
  • code: ModelLoader distinguishes between small molecules and large molecules
  • bug fix: simple model appended to model having unit cell does not show axes
  • new feature: set smallMoleculeMaxAtoms [default 40000]
  • This parameter sets the maximum number of atoms for default rendering of the model.
  • Models with this number or fewer atoms will be rendered with the default spacefill
  • rendering and the default bond diameter; models with more than this number of atoms will be displayed by default with spacefill 0; wireframe 1 for chains that contain bonds and backbone for those that do not in order to conserve resources.
  • new feature: calculate hbonds {....} {....} for models with H atoms
  • H atoms must be in first set; atoms to consider must be in second set.
  • no restriction in second set as to atom type other than that H atom in that set will be ignored.

New in Jmol 11.9.36 Dev (Mar 26, 2010)

  • bug fix: Spartan and WebMO orbitals are already normalized!
  • new feature: GenNBO file reader for xx.31-.41 files and .nbo output if in that directory
  • new feature: can append gennbo data to Gamess, Gaussian, Jaguar, NWChem, Psi, or Qchem calculation
  • bug fix: Gaussian04 reader unexpected lower case reading end of MO data
  • bug fix: LCAOcartoon saving in state causes bug.
  • bug fix: show symop by itself AFTER show symop n does not show full list
  • bug fix: GAMESS reader misreading vibrations since 11.9.32
  • bug fix: load "xxx" AS "yyy" fix
  • bug fix: set dragSelected; set pickingStyle drag doesn't refresh properly

New in Jmol 11.9.35 Dev (Mar 24, 2010)

  • new feature: quaterion(array1,array2,"relative")
  • bug fix: translateSelected X .. broken
  • new feature: property SELECTED float settable:
  • {atomno

New in Jmol 11.9.34 Dev (Mar 19, 2010)

  • new feature: SPINE predefined set
  • includes *.CA, *.N, *.C and *.P, *.O3', *.O5', *.C3', *.C4', *.C5'
  • does NOT include phosphate oxygens OP1 and OP2 (should it?)
  • new feature: COMPARE command (was ALIGN; was default "orientation")
  • see Berthold K. P. Horn,
  • "Closed-form solution of absolute orientation using unit quaternions" J.
  • Opt. Soc. Amer. A, 1987, Vol. 4, pp. 629-642
  • http://www.opticsinfobase.org/viewmedia.cfm?uri=josaa-4-4-629&seq=0
  • and Lydia E. Kavraki, "Molecular Distance Measures"
  • http://cnx.org/content/m11608/latest/
  • compare {model1} {model2} {bsAtoms1} {bsAtoms2}
  • compare {model1} {model2} {bsAtoms1} {bsAtoms2} {bsAtoms1'} {bsAtoms2'} ...
  • compare {model1} {model2} orientations
  • compare {model1} {model2} orientations {bsAtoms1} {bsAtoms2}
  • compare {model1} {model2} orientations quaternionList1 quaternionList2
  • additional options for above: ROTATE and/or TRANSLATE
  • new feature: set QuaternionFrame "C" for nucleic redefined
  • code: better treatment of RESTORE COORD when going back to the file default
  • new feature: set QuaternionFrame "P" for nucleic (phosphorus)
  • based on center P[i], O[i-1], O[i]
  • (note that this changes the default, since "P" is
  • the default quaternionFrame, and that was being ignored
  • bug fix: deleted atoms included in isosurface calculation

New in Jmol 11.9.33 Dev (Mar 15, 2010)

  • bug fix: black shades lost in writing (antialiased) images
  • new feature: ALIGN command:
  • align {modelFrom} {modelTo} {atomsFrom} {atomsTo}
  • aligns modelFrom with modelTo based on orientations and
  • center of mass of atomsFrom and atomsTo
  • uses quaternion mean to minimize ORIENTATIONAL difference between
  • atomsFrom and atomsTo. Quaternions are created based on the setting
  • of quaternionFrame; non-PDB files are not yet supported.
  • new feature: widgets in WebExport (background colorpicker, spin on/off, stereo mode).
  • internal documentation for this is not complete.
  • bug fix: isosurface cavity not working when some atoms are hidden.
  • new feature: quaternion(quaternionArray1) # quaternion mean
  • new feature: quaternion(quaternionArray1, quaternionarray2) # difference array
  • new feature: x**y for Math.pow(x,y)
  • new feature: quaterion array .average .stddev using SphereMean
  • bug fix: using --i instead of i-- with for causes infinite loop
  • new feature: .x, .y, .z all work as well as .atomx, .atomy, .atomz
  • bug fix: fx, fy, fz, ux, uy, uz all fail to work
  • bug fix: some problems with set picking labels and conflicting mouse actions, no refresh
  • bug fix: spin $line1 when $line1 is a set of lines in different frames fails
  • bug fix: spin $line1 followed by spin $line2 causes spin to stop rather than switch axes.
  • bug fix: draw FIXED arc, curve, arrow

New in Jmol 11.9.32 Dev (Mar 8, 2010)

  • bug fix: isosurface colorscheme not always being saved properly in state
  • bug fix: isosurface ;# command extension not being truncated upon state save
  • bug fix: isosurface boundbox option not saved properly in state
  • bug fix: hbonds after wireframe will be thin
  • new feature: translateSelected X|Y|Z ....
  • new feature: con nect 80% 120% ......
  • uses percentages of bonding/ionic radii instead of static values.
  • icaocartoon "s" is not being saved in state
  • new feature: lcaocartoon scale 1.0 "cpk" // creates isosurface at current spacefill radius;
  • can be used with slab and cap
  • new feature: lcaocartoon slab/cap unitcell/boundbox
  • new feature: isosurface slab/cap UNITCELL
  • new feature: isosurface slab/cap BOUNDBOX
  • bug fix: ADF reader not reading degenerate orbital energies properly
  • code: major reader overhaul.
  • new feature: GROMACS reader allows {i j k} notation and unit cell
  • new feature: readers can now assign atomic data for atoms of the "property_" type
  • implemented for property_spin and property_magneticMoment in CrystalReader
  • for example:
  • load "crystal::full_PBE40.out"
  • select property_spin = 1; label "\u2191" # up arrow
  • select property_spin = -1; label "\u2193" # down arrow
  • select *; font labels 35
  • buf fix: All water should be included in the 'solvent' set

New in Jmol 11.9.31 Dev (Mar 1, 2010)

  • bug fix: select IONS broken
  • bug fix: calculate hydrogens skipping atoms that already have H attached.
  • bug fix: isosurface CCP4/MRC reader insideout problem
  • new feature: isosurface map DSN6/O reader
  • bug fix: load models {(.....)} not preserved in state
  • code: simpler adapter class -- atomSetNames and atomSetProperties into atomSetAuxiliaryInfo
  • new feature: frame TITLE alone sets title to "@{_modelName}"
  • new feature: vector scale range now -100 to 100
  • bug fix: structure HELIX {3-4} will cause 5-... to lose structure type
  • bug fix: select 1:3.*
  • new feature: Crystal output reader http://www.crystal.unito.it/
  • new feature: unit cells for SLAB (2D) and POLYMER (1D) periodicity
  • new feature: frame title "@{_modelName}" similar to echo "@{_....}"
  • modified upon rendering to reflect new model during animation
  • new feature: frame all;frame title ... sets frame title for all visible frames

New in Jmol 11.9.30 Dev (Feb 23, 2010)

  • bug fix: Mac opening file dialog does not read files from local drive
  • bug fix: DGRID reader bug for symmetries with long descriptions: T1.g_1
  • new feature: isosurface SIGMA 1.0 "filename.ccp4" -- uses "rms" value in file assda "sigma" not applicable to other file types.
  • bug fix: MRC/CCP4 reader defaults set to SIGMA 1.0 (was SIGMA 2.0)
  • bug fix: isosurface fragments broken by bitset upgrade
  • bug fix: WebExport changing instance dimensions no longer causes wrong static image assignments
  • new feature: load "filename" 0 -- loads LAST model only (usually the optimized geometry)
  • bug fix: quaternion and ramachandran frames broken by bitset upgrade
  • new feature: app "open Url" allows "=1crn" or just "1crn"
  • code: preliminary set useArcBall -- Ken Shoemake's idea for better mouse drag action
  • code: very prelminary http://www.cse.clrc.ac.uk/cmg/CRYSTAL/ output reader
  • bug fix: some VASP files not readable because they contain ">vasp vasp

New in Jmol 11.9.29 Dev (Feb 13, 2010)

  • bug fix: some problems with deleted atoms not properly deleting bonds
  • bug fix: minimization not reset after changes of atom position, element, bonds
  • new feature: set picking deleteAtom
  • new feature: set isKiosk TRUE -- forces focus at all
  • times and presumes no underlying applets.
  • This allows multi-touch to activate immediately
  • and not wait for a second click

New in Jmol 11.9.28 Dev (Feb 12, 2010)

  • bug fix: memory leak in shape.setProperty() XML business
  • bug fix: nodisplay mode could crash
  • new feature: frank may be turned off by local signed applet
  • new feature: _multiTouchServer and _multiTouchClient flags
  • bug fix: isosurface cavity broken
  • code: FastBitSet implemented for isosurface and dots
  • bug fix: exit command exits Jmol instead of just the script or previous scripts
  • bug fix: load sometimes not properly accounting for unique axis information
  • bug fix: web export- dimension spinners now show dimensions of chosen instance
  • bug fix: web export- syncLists function now works for more than two lists.
  • new feature: web export- changing dimension spinners after an instance is added
  • now updates the dimensions of the selected instance.

New in Jmol 11.9.26 Dev (Feb 9, 2010)

  • bug fix: Rasmol radii broken.

New in Jmol 11.9.25 Dev (Feb 8, 2010)

  • bug fix: 11.9.24 IS BROKEN - DO NOT USE --- set of models from atoms totally incorrect
  • bug fix: application entry of multiple-line commands without final CR causes array pointer exception

New in Jmol 11.9.24 Dev (Feb 6, 2010)

  • new feature: {xxxx}.ionicRadius = x.y
  • new feature: set mouseWheelFactor 1.02 (Jmol 11.8: 1.15)
  • new feature: set mouseDragFactor 1.0 (*180 degrees gives rotation across full screen)
  • code: implicit script command: xxxxx.xxx -- "set" structure, but without equals and of length 3
  • code: added 1000 ms timeout for the wait() in RepaintManager.requestRepaintAndWait()
  • to try to avoid lock-up. Fingers crossed.
  • new feature: set logCommands --- logs commands to file if set logFile "somename" has been given
  • new feature: set logGestures --- logs gestures (swipe, pinch, zoom, rotate)
  • new feature: set waitForMoveTo --- allows asynchronous moveTo commands
  • new feature: mouse binding: double-click left bound to "_stopMotion" action
  • new feature: moveto STOP -- stops asynchronous moveTo motion
  • code: much clearer StateManager.GlobalSettings details; some parameter cleanup
  • bug fix: drawHover status not reported properly after zap/new model loaded
  • code: abstraction of FastBitSet (SlowBitSet implemented using set testflag3 TRUE)
  • code: moving of Dots to shapespecial package
  • timeout command
  • new feature: set allowMultiTouch [default TRUE] can be used to disallow multi-touch gestures
  • code: build.xml going to source 1.4 target 1.4 instead of source 1.3 target 1.1
  • code: smarter handling of bitsets --> about 10% faster math processing
  • bug fix: bfactor min/max was ignoring first atom
  • bug fix: mouse/thread issues when moveTo is running
  • code: ScriptEvaluator.set()/.show() clean up; all set parameters as tokens; deprecatedparam tok
  • bug fix: some show parameters lost in 11.9.22
  • bug fix: within molecule was using undocumented "visible"
  • new feature: set picking select structure
  • new feature: set picking select polymer
  • new feature: print {*}.polymer
  • new feature: select within(polymer, ...)
  • new feature: set pickingstyle drag makes the LEFT button a click-and-drag button
  • when associated also with:
  • set pickingsyle drag
  • set picking select polymer # or whatever
  • set dragSeleted TRUE

New in Jmol 11.9.13 (Dec 29, 2009)

  • bug fix: PDB cryst1 record for NMR files not ignored
  • new feature: set phongExponent like set specularExponent, but se = 2^pe
  • code: refactoring lighting
  • code: refactoring mesh objects
  • bug fix: symop in biomolecule context not recsognized by label "%[symmetry]"
  • bug fix: "label %" can cause Java exception
  • new feature: optional set saveProteinStructureState usually TRUE
  • but can be set to FALSE to not write helix/sheet/turn data to state
  • bug fix: long scripts in setEcho being chopped when saved in state
  • bug fix: %{...} not recognized by script compiler
  • new feature: color fractions as points: {0.5, 0.5, 1} or [0.5 0.5 1]
  • new feature: anisotropy {scaleX scaleY scaleZ} and center now implemented
  • for all file-based and function-based isosurfaces.
  • scales are factors data coordinates are to be multiplied
  • by for display in the Jmol coordinate system. So, for example,
  • pmesh ANISOTROPY {0.1 1 1} center {-4 0 0} "pmesh.bin"
  • compresses the surface along x and causes data {0 0 0} to appear
  • at Jmol coordinate {-4 0 0}
  • bug fix: "color background xxxx" clears background image as well
  • bug fix: labels given text after containing an image have incorrect y-displacement
  • bug fix: transparent pixels in images not respected
  • bug fix: file name completion fix (tab key after double- or single-quote)
  • bug fix: Warren Delano's idea for front-only translucency on isosurfaces (in memory of Warren Delano 1972-2009)

New in Jmol 11.8 RC 5 (Aug 8, 2009)

  • New feature: Jmol embedded in applications can use WRITE command to create all types of images and exports.
  • New feature: VERY COMPACT IDTF export (for U3D conversion; all except background color).
  • Bug fix: (application) delaying saveChooser load makes startup MUCH faster when loading a file.
  • Bug fix: gaussian reader may fail to read MOs from Gaussian 03: AM64L-G03RevC.01 3-Apr-2004.

New in Jmol 11.8 RC 4 (Aug 1, 2009)

  • Bug fix: DRAW point size 6 pixels (an even number) sets it just one pixel off center -- 7 is better.
  • New feature (TODO): 4D extension (that's right -- FOUR dimensions).
  • Bug fix: (application) delaying saveChooser load makes startup MUCH faster when loading a file.
  • New feature: set picking Label now allows label offset by holding SHIFT down while dragging atom.
  • New feature: lone pairs and radicals -- extension of lcaoCartoon.
  • Select oxygen; lcaocartoon lonePair "sp2a".
  • Select oxygen; lcaocartoon radical "sp3".
  • New feature: print getProperty("FileInfo","REMARK300") //was PdbInfo.
  • New feature: print getProperty("FileInfo","models",1,"_citation_year").
  • Bug fix: zap x.y when have measures to draw objects causes exception.
  • Bug fix: isosurface mapping with property where property can be NaN does not render some regions.
  • Bug fix: lcaoCartoon wildcard problems.
  • Bug fix: undocumented rotate[selected] {pt1} {pt2} ... has pt1/pt2 backward.
  • New feature: set quaternionFrame "a" -- alpha-carbon-ONLY straightness. see 1JGQ.
  • Bug fix: compiler error when integer typed instead of command.
  • Bug fix: state for lcaocartoon broken.
  • Bug fix: set picking spin for draw objects broken in 11.8.RC1.
  • New feature: set helixStep 0 -- relates a quaternion to the standard reference frame.
  • Bug fix: DRAW CIRCLE size may not be correct when restored from state.
  • New feature: write "xxx.X3D".
  • New feature: [x,y,z].sum2 or {xx}.someProperty.sum2 -- sum of squares.
  • New feature: VRML export nearly full support.
  • Includes draw, ellipsoids, dots, isosurface, cartoons, stars, halos, polyhedra, vectors, dipoles, etc.
  • No background labels.
  • Labels are not exactly the right size.
  • No background image.
  • No ellipsoid quadrant cutouts.
  • Slightly irregular trace when very small diameter.
  • Code: simplified export interfaces.

New in Jmol 11.6.27 (Jul 18, 2009)

  • Bug fix: color isosurface red translucent prior to isosurface command causes null pointer exception
  • Bug fix: save/restore state fails when isosurface UNITCELL option is given
  • Bug fix: spacegroup reading when center of molecule is not in unit cell can cause bonding errors.
  • Bug fix: draw OFF in state script is not selective.

New in Jmol 11.8 RC 3 (Jul 18, 2009)

  • Code: more efficient VRML export.
  • New feature: set helixStep 1,2,3,... sets step for quaternion-based analysis of structure -- see 1C4D.
  • Bug fix: 1C4D has [FOR] -- not accepted.
  • Bug fix: color isosurface red translucent prior to isosurface command causes null pointer exception.
  • New feature: isosurface select(....) SET n where n is an integer 1,2,3... that selects which set is to be displayed and counted for area or volume.
  • Bug fix: spacegroup reading when center of molecule is not in unit cell can cause bonding errors.
  • New feature: isosurface area for subsets -- use isosurface area select(oxygen) sasurface colorscheme sets.
  • Bug fix: draw OFF in state script is not selective.

New in Jmol 11.8 RC 2 (Jul 16, 2009)

  • Bug fix: mouse-picked measurements broken in 11.8.RC1

New in Jmol 11.8 RC 1 (Jul 15, 2009)

  • bug fix: measurements defined using points not restricting to models
  • new feature: set quaternionFrame "RC" or "RP" -- ramachandran-derived straightness
  • new feature: array1.add("sep", array2) adds a new column of values separated by sep, for example:
  • set quaternionFrame "P";ap = {*.ca}.straightness;
  • set quaternionFrame "C";ac = {*.ca}.straightness;
  • print {*.ca}.label("%n %R").add(" ",ap).add(" ",ac);
  • bug fix: VRML balls missing; VRML/POVRAY error on partial surfaces
  • new feature: NAVIGATION STOP -- sets navX, navY, navZ to 0
  • new feature: navX, navY, navZ, navFPS all settable
  • new feature: NAVIGATION ON/OFF now does continuous motion with arrow keys
  • SPACE to stop
  • LEFT/RIGHT to pan left or right
  • UP/DN to move forward/back
  • ALT UP/DN to pitch up/down
  • CNTL UP/DN to increase/decrease speed in larger amounts

New in Jmol 11.7.46 (Jul 3, 2009)

  • bug fix: select model=1 does not work (since 11.6.RC17!)
  • new application: JmolData.jar
  • This application completely disallows any display -- it is totally formless
  • There are no Java Swing JFrames involved, no dialogs, no popup menus,
  • no display, no shapes, no labels, no echos -- just the model data.
  • bug fix: command-line jmol scripts not exiting jmol upon an error condition
  • argh. FOR broken in 11.7.45
  • new feature: helix(resno or {atomExpression},type)
  • given x = C-alpha, C-carbonyl, or N (depending upon set quaternionFrame)
  • where type =
  • "point" -- nearest point to x on local helix axis
  • "axis" -- quaternion derivative vector normal indicating local helix axis
  • "angle" -- rotation around local heix axis for resno i --> i+1
  • "radius" -- vector normal from local helix point to x
  • "draw" -- draw command for the local helix vector
  • note that the axis length is the rise, radius length is the radius,
  • and 360 / angle is the pitch of the helix
  • bugfix: gamess readers crashing if keywords missing from basis options or control options
  • code: findNearestAtomPicked added to JmolViewer
  • new feature: VRML exporter displays ribbons and cartoons by automatically setting
  • hermiteLevel 1 if necessary.
  • new feature: VRML exporter recognizes color and normals for isosurface

New in Jmol 11.7.45 Pre (Jun 30, 2009)

  • bug fix: load trajectory XXX.cif not applying fractional coordinates.
  • bug fix: load trajectory {0 -1 1} not loading any models if first model has
  • 0 atoms (as in certain cif files)
  • bug fix: dipole offsetside not working for molecular dipole (EVER!)
  • code: refactored scriptEvaluator and Jmol.java. Now it is much simpler
  • to create a truly "headless" Jmol application, where Jmol is being
  • used for the investigation of the structure instead of visualization.
  • new application: JmolFrameless.jar
  • This application completely disallows any display -- it is totally formless
  • There are no Java Swing JFrames involved, no dialogs, no popup menus,
  • no display of any kind.
  • script editor behaving properly except for a nasty SWING bug that will
  • require recasting this in AWT instead of SWING.
  • See http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4353673
  • new feature: gamessUS reader now reads dipoles and partial charges.
  • TODO script editor -- search? argh... I knew this would be a can of worms...
  • script editor -- undo/redo works (CTRL-Z, then SHIFT-CTRL-Z or CTRL-Y)
  • new feature: drag/drop and file menu-open scripts directly into editor, from where they can be checked or tested.
  • code: refactored readers, allowing for more obvious initialization/finalization methods
  • new feature: App and applet consoles now have "editor" buttons
  • that load scripts into a "script editor" and allow stepping through
  • scripts (and changing values during the pauses) - preliminary only
  • opens a rough draft ScriptEditor
  • new feature: Gamess file reader now translates internal basis set and calculation
  • methods representations into roughly literature standard for Pople & Dunning basis
  • sets as well as perturbation, CI and CC calculation methods. This is dumped to
  • calculationType
  • new feature: application console buttons: PAUSE, ?, STEP
  • new feature: SHOW TRACE -- reports stack trace
  • bug fix: functions with names starting with _ were local instead of global
  • bug fix: 2 pixels off in y for labels. Don't know why I thought that was necessary in Text.java::setBoxXY.
  • new feature: SHOW VARIABLES now gives variable trace through function stack
  • new feature: [Oh, VERY COOL!] You can now pause the app anywhere in a
  • script, do anything you want -- even within functions -- change variables,
  • set parameters, anything -- and then resume with RESUME. Some of us
  • have dreamt of having this with JavaScript. Very very useful!
  • bug fix: problems with PAUSE/RESUME within App
  • bug fix: "set ?" nonfunctional
  • bug fix: unmatched { in quotes in @{ } not properly treated: echo @{" testing}"}
  • new feature: strings may start with ' or ", like JavaScript:
  • x = 'testing'
  • print 'there are ' + all.length + ' atoms'
  • cd, echo, gotocmd, help, hover, javascript, label, message, and pause
  • all are implicitly strings. You CAN use "..." but you don't have to,
  • and you cannot use '...'. This way the introduction of single quotes
  • as an equivalent of double quotes cannot break existing scripts. -- BH 06/2009
  • new feature: print getProperty("PDBInfo","REMARK300")

New in Jmol 11.7.43 Pre (Jun 22, 2009)

  • bug fix: /** comment ending line can cause odd error
  • bug fix: set xxxx n where n is an integer fails.
  • bug fix: GAMESS reader not properly assigning MOs
  • code: better .stddev calculation
  • new feature: a = [] note that a+=2 then produces [2] -- "a+=" similar to JavaScript a.push(2)
  • bug fix: a="test";a[1] = "b" not working
  • bug fix: {atomExpression}.min, .max
  • new feature: merging of label() and format() functions -- same in all respects.

New in Jmol 11.7.42 Pre (Jun 20, 2009)

  • New feature: function parameter arrays passed by reference,
  • New feature: general commands no longer restricted to single lines.
  • New feature: set or x = command no longer restricted to single lines.
  • New feature: -p Jmol application command line option --printOnly silent operation with only print command output or warnings going to the console.
  • Bug fix: pickMeasureScriptTip not found.
  • New feature: support for extended inline if: x = (a ? this : b ? that : theother).
  • Default change: load trajectory "myfile.top" COORD {first,last,stride} "mdcrd::myfile.trj" defaults to last = -1 ("load all trajectories") not "load one trajectory".
  • Bug fix: gzipped gzip file not read properly. (Jmol-FAH files).
  • New feature: {*}.modelindex.
  • Bug fix: y = q improperly defining q if q does not exist.
  • New feature: print {xxx}.label.all("xxxx") -- forces array even if only one atom (like "{xxx}.label.all").
  • Bug fix: color.all not working properly.
  • Bug fix: xxx.all was not forcing array when only one value.
  • Bug fix: load @filename.
  • New feature: format("sprintf format", a, b, c, ...).
  • New feature: {xxxx}.label("") shows current label.
  • New feature: [array].sort
  • New feature: [array].reverse
  • New feature: [array].min
  • New feature: [array].max
  • New feature: [array].average
  • New feature: [array].stddev
  • New feature: (value).label("C++ printf format")
  • Bug fix: quarternion().q not working.
  • Bug fix: Crystallographic Information File not recognized.

New in Jmol 11.6.24 (Jun 9, 2009)

  • bug fix: Application setAppletContext null pointer
  • bug fix: point + integer wrong result
  • bug fix: biomolecules for new PDB format
  • bug fix: isosurface cavity colorscheme not applied
  • bug fix: isosurface cavity colorscheme "sets" error
  • bug fix: selected connected(hbond) not working.

New in Jmol 11.7.38 Pre (May 24, 2009)

  • new feature: load OCCUPANCY ... int [0 to 255]
  • new feature: load PARTIALCHARGE ... float ~[-3.4 x 10^38 to 3.4 x 10^38]
  • new feature: load TEMPERATURE ... float [-327.68 to 327.67], with 0.01 precision (stored as short)
  • new feature: loadAtomDataTolerance, with default 0.01 Angstroms
  • spartan smol reader broken in 11.7.37

New in Jmol 11.6.23 (May 23, 2009)

  • Bug fix: {atomExpression}.fxyz does not return factional value, just 0.0.
  • Bug fix: Hall lattice operation (SHELX only) could place atoms in unexpected unit cell.
  • Bug fix: unitCell normalization error could miss some atoms in multi-unit cell visualizations.
  • Bug fix: calculate hbonds can fail when group does not have O or OXT atoms.
  • Bug fix: data "append" does not set model the way load "append" does.
  • Bug fix: application frame arrows do not work after loading multiple models.
  • Bug fix: isosurface incorrectly setting number of grid points for MEP surface map.

New in Jmol 11.7.37 Pre (May 23, 2009)

  • new feature: load VIBRATION "filename" n .......
  • all features of the load command, but only loads the vibrational information
  • applies {within(loadAtomDataTolerance,xyzcoord)}.vxyz = vibcoord, so to all unit cells
  • optional n is just as for any load -- optional nth model
  • operates on previously selected atoms only
  • allows embedded jmolscript, just as for any load
  • sets _vibrationName from file's atom set collection name
  • new feature: loadAtomDataTolerance (see above)
  • bug fix: load {n n n} not saved in state
  • new feature: load {a b -c} packs a x b x c cells
  • new feature: select within(-0.1, {1/2 1/2 1/2}) -- negative distance within selects atoms based on unitcell coordinates
  • new feature: select within(-0.1, atomno=3) -- negative distance within selects atoms based on unitcell coordinates of all atoms involved
  • new feature: select within(-0.1, true, atomno=3) -- negative distance within model selects atoms based on unitcell coordinates
  • new feature: select ux|uy|uz < x.x -- selection based on unit coordinates
  • new feature: {x y z}.fxyz -- returns fractional from cartesian
  • new feature: {x y z}.uxyz -- returns unitcell from cartesian
  • new feature: {x y z}.ux, .uy, .uz similar to .fx, .fy, .fz
  • new feature: {x y z}.xyz -- returns cartesian from fractional
  • note that .x .y .z does NOT do this conversion. If that is
  • intended, you need to use {x y z}.xyz.x
  • if multiple models are visible, then all these just return as through there were no unit cell.
  • new feature: {atomExpression}.uxyz, .ux, .uy, .uz -- unit cell coordinate
  • The value depends upon the setting of unitcell offset. For example, if we have
  • unitcell 444
  • then {x}.uxyz will be in the range {-1,-1,-1/1} (inclusive) to {0,0,0/1} (exclusive)
  • Note that uxyz is not settable, but fxyz is, so one could, for example,
  • pack a unit cell using:
  • unitcell 555
  • n = {*}.size
  • for (var a = 1; a < n; a = a + 1)
  • {atomno=a}.fxyz = {atomno=a}.uxyz
  • end for
  • bug fix: {atomExpression}.fxyz does not return factional value, just 0.0

New in Jmol 11.7.36 Pre (May 17, 2009)

  • bug fix: Hall lattice operation (SHELX only) could place atoms in unexpected unit cell
  • bug fix: unitCell normalization error could miss some atoms in multi-unit cell visualizations
  • new feature: Wien2k reader
  • bug fix: possible exception when writing large image with translucency due to caught memory overflow leaving plotting buffer null

New in Jmol 11.7.35 Pre (May 14, 2009)

  • bug fix: calculate hbonds can fail when group does not have O or OXT atoms
  • bug fix: (applet) jmolGetPropertyAsString("image") not functional
  • new feature: label %G -- group index, like atom index, 0-based for entire collection
  • new feature: ramachandran DRAW -- draws dihedral planes and angles
  • bug fix: draw/isosurface *name*
  • bug fix: data "append" does not set model the way load "append" does
  • bug fix: application frame arrows do not work after loading multiple models

New in Jmol 11.7.33 Pre (Apr 21, 2009)

  • bug fix: minimization callback does not report dE
  • bug fix: minimization does not interrupt or stop in applet
  • bug fix: rotate quaternion with NaN values not ignored
  • bug fix: applet console not closed when web page destroyed
  • bug fix: load file:///xxx.xxx (file:/// with file in root path) causes unrecoverable exception
  • bug fix: signed applet JmolAppletSigned0.jar does not include minimizer in internal jar index
  • bug fix: rotate -x n rotates wrong direction
  • new feature: load xxxx FILTER "NBOcharges" loads NBO charges instead of Mulliken
  • note: for NBOs you still need FILTER "NBO" so with charges that would be FILTER "NBO;NBOcharges"
  • bug fix: Jaguar reader vibrations not correct
  • bug fix: autoBond option in Preference menu was not writing to properties file in $HOME/.jmol
  • new feature: preliminary NBO support for Gaussian and QChem needs checking
  • code: subclassing Gaussian, QChem, NWChem, Gamess, Jaguar, Psi readers all into MOReader class

New in Jmol 11.7.30 Pre (Mar 23, 2009)

  • bug fix: signed applet does not use CD to set dialog default directory
  • bug fix: errorCallback not functional
  • new feature: set autoLoadOrientation (default: FALSE) automatically sets "reset" orientation to that in file, if present
  • new feature: set orientation DEFAULT -- resets orientation to file's default orientation or stanadard "reset" if not present
  • code: generalized setTransform() in JmolAdapter readers CSF and SpartanSmol (.spardir)
  • bug fix: Spartan .spardir /input files not being read
  • bug fix: draw arrow/vector slightly overshoots end point

New in Jmol 11.7.29 Pre (Mar 18, 2009)

  • Bug fix: isosurface/mo FRONTONLY not operative
  • New feature: draw ID xxx FRAME {center} {quaternion}
  • Draws x,y,z coordinates for the frame defined by the specified quaternion at the specified center.
  • Bug fix: MO calculations skips d2+ orbital due to integer division.

New in Jmol 11.6.19 (Mar 18, 2009)

  • Bug fix: isosurface/mo FRONTONLY not operative.
  • Bug fix: MO calculations skips d2+ orbital due to integer division.
  • Bug fix: (application) measurement tool bar icon not toggling.
  • Bug fix: "color MO" if executed twice can crash Jmol.

New in Jmol 11.7.28 Pre (Mar 9, 2009)

  • Bug fix: 11.7.27 does not display color for MOs; "color MO" can crash Jmol

New in Jmol 11.7.27 Pre (Mar 4, 2009)

  • bug fix: line raster not completing lines
  • code: JmolCallbackListener implemented, extended by JmolStatusListener
  • code: JmolViewer now includes setJmolCallbackListener
  • bug fix: measure n1 n2 n3 n4 with just numbers selecting atoms in frame 1 rather than current frame.
  • bug fix: toolbar icon for pickMeasure tied to tools "measurements..." item
  • bug fix: (Application) meaurement table not updating properly
  • bug fix: (Application) measurements toolbar icon does not stay shaded
  • bug fix: very subtle code error on lines and cylinders rasterization not completing line end pixel in most cases
  • bug fix: (Application) measurement icon measures angles, not distances.
  • new feature: JVXL format supports polygonColixes[]
  • code: polygonColixes[] to define polygon colors rather than vertex-based colors (as in OBJ file)
  • new feature: isosurface points can be retrieved using $id[n] where n=0,1,2,3... similar to $draw[n]
  • debugging: setTestflag2() turns on vertex labeling in isosurfaces
  • new feature: isosurface OBJ file reader using isosurface OBJ "myfilename" n where n is an optional pointer to a specific group (starting with 1)
  • bug fix: subtle MarchingSquares calculation error produces incorrect contours for mapped plane
  • new feature: hover displays isosurface values for contour plots and planar plots
  • new feature: isosurface .... map contour [n] [mep|MO homo|etc]
  • new feature: isosurface CONTOURLINES|NOCONTOURLINES displays contour lines; for planes, same as MESH|NOMESH
  • new feature: default rendering for isosurfaces involving the CONTOUR keyword is CONTOURLINES NOFILL
  • new feature: hovering over isosurface contourlines displays value
  • bug fix: isosurface TRIANGLES not turning off when isosurface cleared
  • bug fix: remapping colors of translucent isosurface can have incorrect colors
  • bug fix: isosurface sphere 1.0 map molecular not working
  • bug fix: MO calculation with selected atoms can fail
  • bug fix: picked atoms automatically selected -- bug in 11.7.24
  • new feature: very preliminary isosurface ED (RHF only) //and isosurface ESD
  • bug fix: JVXL writing after reading JVXL file may not write properly
  • bug fix: Jmol in other applications not initialized the same way can cause null pointer exception loading file with symmetry

New in Jmol 11.6.18 (Mar 4, 2009)

  • bug fix: line raster not completing lines
  • bug fix: (Application) meaurement table not updating properly
  • bug fix: subtle MarchingSquares calculation error produces incorrect contours for mapped plane
  • bug fix: isosurface TRIANGLES not turning off when isosurface cleared
  • bug fix: remapping colors of translucent isosurface can have incorrect colors
  • bug fix: isosurface sphere 1.0 map molecular not working
  • bug fix: MO calculation with selected atoms can fail
  • bug fix: Jmol in other applications not initialized the same way can cause null pointer exception loading file with symmetry

New in Jmol 11.6.17 (Feb 16, 2009)

  • bug fix: Spartan reader reads MOs improperly when only a partials set of MOs is included in the file
  • bug fix: Some Spartan files not reading: Compound Document not properly finding root directory block

New in Jmol 11.7.26 Prerelease (Feb 16, 2009)

  • new feature: isosurface VOLUME reports the volume of an isosurface and stores the number in variable isosurfaceVolume
  • new feature: ASimpleJvxlWriter can calculate the volume of the surface
  • new feature: isosurface AREA reports the area of an isosurface and stores the number in variable isosurfaceArea
  • new feature: ASimpleJvxlWriter can calculate the area of the surface
  • bug fix: Spartan reader reads MOs improperly when only a partials set of MOs is included in the file
  • bug fix: Some Spartan files not reading: Compound Document not properly finding root directory block
  • code: rewritten code for Marching Cubes no longer requires 2D array of cube data

New in Jmol 11.6.16 (Feb 9, 2009)

  • bug fix: PDB load filter broken for ANISOU
  • bug fix: isosurface plane improperly coloring nonmapped planes
  • bug fix: Mopac graphf UHF files not read properly for beta orbitals, or can't read file

New in Jmol 11.7.25 Prerelease (Feb 9, 2009)

  • code: rewritten code for ASimpleJvxlWriter allows streaming data
  • code: rewritten code for Marching Cubes no longer requires 3D array of data
  • new feature: CTRL-K toggles keystrokes with display; ALT-K or CTRL_ALT_K same without display color of frank displays condition -- blue (unsigned) or orange (signed) indicates keystrokes enabled
  • bug fix: PDB load filter broken for ANISOU
  • bug fix: isosurface plane improperly coloring nonmapped planes
  • code: rewritten code for JvxlReader saves nx*ny*nz*8 bytes of memory on loading JVXL files because there is no need for voxelData = float[nx][ny][nz].
  • new application: org.openscience.app.jvxl.simplewriter.ASimpleJvxlWriter.java
  • streamlined methods for converting CUBE data to JVXL files

New in Jmol 11.7.24 Prerelease (Feb 6, 2009)

  • bug fix: Mopac graphf UHF files not read properly for beta orbitals, or can't read file
  • new feature: character at the start of an echo does screen echo only, not to callback or console
  • new feature: typing into applet executed as script commands
  • new feature: set showKeyStrokes
  • sets the echo to bottom left and shows the key strokes as they appear
  • new feature: set dragSelected (was "set picking dragSelected")
  • bug fix: set picking draw can lose focus during drag operation

New in Jmol 11.6.15 (Feb 4, 2009)

  • bug fix: set picking draw can lose focus during drag operation
  • bug fix: {*}.formalCharge = 1 after {*}.formalCharge = -1 sets formal charge to -7 and exception
  • bug fix: write command does not report full path to file written
  • bug fix: Menu File|Open does not honor "start in" directory

New in Jmol 11.7.23 Prerelease (Feb 2, 2009)

  • new feature: load "myfile.cif" {ijk i'j'k' -1} loads crystal structure and packs unit cell
  • new feature: load "myfile.cif" PACKED same as {555 555 -1}
  • bug fix: {*}.formalCharge = 1 after {*}.formalCharge = -1 sets formal charge to -7 and exception
  • bug fix: Menu File|Open does not honor "start in" directory

New in Jmol 11.6.14 (Jan 26, 2009)

  • bug fix: @~xxx({xxxx}) compiler bug
  • bug fix: structure helix ({xx:yy}) compiler bug
  • bug fix: user menu write povray/vrml/maya missing quotation marks in command

New in Jmol 11.7.22 Prerelease (Jan 24, 2009)

  • new feature: translate x|y|z x.x nm|angstroms|%
  • bug fix: structure helix ({xx:yy}) compiler bug
  • new feature: additional VRML support (Angel Herraez)
  • new feature: u3d exporter template only -- no actual output

New in Jmol 11.6.13 (Jan 12, 2009)

  • bug fix: user menu ...Text menus not translated

New in Jmol 11.7.21 (Jan 12, 2009)

  • bug fix: user menu ...Text menus not translated
  • bug fix: minimization broken
  • bug fix: menu save ?.spt
  • bug fix: write PovRay "?.pov"

New in Jmol 11.6.12 (Jan 8, 2009)

  • bug fix: protein-protein hydrogen bonds not calculated across biopolymer boundaries
  • bug fix: quaternion straightness update

New in Jmol 11.7.20 (Jan 8, 2009)

  • bug fix: protein-protein hydrogen bonds not calculated across biopolymer boundaries

New in Jmol 11.6.11 (Dec 28, 2008)

  • forgot to upload file for 11.6.10

New in Jmol 11.7.19 (Dec 28, 2008)

  • vibrationperiod set to 0 if vibration off when state saved
  • Compilation problem with "new IOException(e)"
  • application -i option still gives message from "set xxxx"
  • recent application changes do not work with -w option

New in Jmol 11.6.10 (Dec 25, 2008)

  • Bug fix: vibration period set to 0 if vibration off when state saved

New in Jmol 11.6.9 (Dec 17, 2008)

  • bug fix: application -i option still gives message from "set xxxx"
  • bug fix: some quaternions cannot be created from a 3x3
  • bug fix: ignoreError -- need not get error string
  • bug fix: write image does not set mustRender
  • bug fix: set debugscript and set loglevel do not act in script immediately
  • bug fix: translations of Console not implemented correctly
  • bug fix: translation not disabled when messageCallback is present
  • bug fix: script error messages not updating when language changed
  • bug fix: MO scale
  • bug fix: measure allConnected broken

New in Jmol 11.7.18 (Dec 16, 2008)

  • bug fix: 11.7.15 does not run script after loadInline applet parameter
  • new feature: Alchemy/3DNA reader
  • new feature: new command "exitJmol" does just that -- application only; can be overridden in a script by user defining the function "exitJmol"
  • new feature: application -d --debug sets loglevel to 5
  • new feature: application -J --jmolscript1 Jmol script BEFORE -s
  • new feature: application -j --jmolscript2 Jmol script AFTER -s not accepting values
  • new feature: (embedded application method of JmolViewer)

New in Jmol 11.6.8 (Nov 30, 2008)

  • bug fix: write .... @{...} fails
  • bug fix: write .... @{...} can fail
  • bug fix: write image CLIPBOARD broken
  • bug fix: select {*.ca} (phi < select(y; {*.ca}; y.resno = _x.resno + 1).phi) fails when atomExpression is ({})
  • bug fix: applet compilation error not sent in termination message
  • bug fix: build javax package does not include Matrix4d.class, AxisAngle4d.class
  • bug fix: compilation of myfunc({1 2 3}) fails
  • bug fix: hover watcher occasional uncaught exception

New in Jmol 11.6.7 (Nov 27, 2008)

  • Bug fix: quaternion straightness update
  • Bug fix: applet improperly reporting status of "quiet" commands
  • Bug fix: stereo not in state
  • Bug fix: stereoDegrees parameter not reported correctly

New in Jmol 11.6.6 (Nov 21, 2008)

  • bug fix: negative number in range involving ^ still fails
  • bug fix: translucency of mapped isosurfaces not saved in state
  • bug fix: Dialog look and feel for Mac

New in Jmol 11.7.12 (Nov 21, 2008)

  • new feature: isosurface PMESH; pmesh command deprecated
  • code: pmesh now a subclass of isosurface, with org.jmol.jvxl.PmeshReader doing the work.
  • new feature: all options of isosurface now option for pmesh.
  • all pmesh command does is guarantee that if the pmesh data is standard pmesh ASCII data,
  • then it will be read correctly. Binary pmesh files may be read with isosurface command.
  • new feature: pmesh files and inline scripts now can be colored and saved as JVXL files
  • new feature: isosurface INLINE "--pmesh data--"
  • bug fix: .xxx broken for Jmol 11.7.11
  • JVXL 2.0 format enhancements
  • new feature: #xxx comments act as targets for goto as well as MESSAGE commands
  • bug fix: goto xxx with trailing white space fails to find xxx
  • bug fix: goto with a comment in the script prior to the target line fails
  • bug fix: two //xxx comments in a row breaks script
  • new feature: fully remappable JVXL files
  • new feature: JVXL file format version 2.0 writing and reading for general vertex/triangle file source.
  • code: superfast JVXL compression/decompression
  • bug fix: straightness absolute value -- values 0 (not straight) to 1 (straight) load =1crn;calculate straightness;color "bwr" range 0 1;color straightness
  • new feature: efvet file reader (http://ef-site.hgc.jp/eF-site) isosurface color "rwb" "myfile.efvet"
  • bug fix: isosurface APBS dx file reader broken (since 4/2007)
  • menu: "Minimize" GT

New in Jmol 11.6.5 (Nov 20, 2008)

  • bug fix: negative number in range involving ^ fails: select 10^P -17^P.
  • bug fix: goto xxx with trailing white space fails to find xxx.
  • bug fix: goto with a # comment in the script prior to the target line fails.
  • bug fix: two //xxx comments in a row breaks script.
  • code: superfast JVXL compression/decompression.
  • bug fix: straightness absolute value -- values 0 (not straight) to 1 (straight).
  • load =1crn;calculate straightness;color "bwr" range 0 1;color straightness.
  • bug fix: isosurface APBS dx file reader broken (since 4/2007).
  • menu: "Minimize" GT.

New in Jmol 11.7.11 (Nov 11, 2008)

  • bug fix: UFF.txt not included in build
  • new feature: user-definable atom selector for extended select: select {*.ca} (myfunc < 3.0)
  • new feature: user-definable atom selector functions.
  • _x is used for the selected atom (not _atom) as for select {atomExpression} (property expression)
  • parenthetical parameters are allowed provided .min, .max, .all are not used

New in Jmol 11.6.4 (Nov 11, 2008)

  • bug fix: UFF.txt not included in build
  • bug fix: function definitions occurring before prior script commands are executed.
  • bug fix: message @{xxxx} in function not picking up function context variables
  • bug fix: Some browsers do NOT strip
  • from tags, necessitating changes in loadInLine()
  • bug fix: "valence" not "valency" in data property_valence
  • bug fix: initializeBspf(); missing in setTrajectory()

New in Jmol 11.7.9 (Nov 6, 2008)

  • bug fix: initializeBspf(); missing in setTrajectory()
  • new feature: hbonds delete
  • new feature: calculate hbonds {*} {*} between {O or N} and {O or N} only
  • new feature: set hbondsAngleMinimum if hbondsAngleMinimum is set > 0 (default 90 ?), then that angle is checked for any atoms A--X- - -Y where A is attached to X, and X and Y are the two heteroatoms involved.
  • new feature: set hbondsDistanceMaximum maximum distance for X---Y. (default 3.25 ?)
  • bug fix: AMBER atom type IM and IP not recognized
  • bug fix: AMBER topology file reading of IFBOX=2 files
  • bug fix: antialiased fontscaling labels can appear incorrectly
  • bug fix: font maximum reduced
  • code: major scaled memory font savings
  • bug fix: more lenient MopacGraphF format resolving
  • bug fix: "valence" not "valency" in data property_valence

New in Jmol 11.6.3 (Nov 4, 2008)

  • Bug fix: set antialiastranslucent false not functional.
  • Bug fix: text color near black with antialiasdisplay becomes white.
  • Bug fix: text antialiasing of near-black text looks very bad when antialiased.

New in Jmol 11.7.8 (Nov 3, 2008)

  • bug fix: set antialiastranslucent false not functional
  • bug fix: text color near black with antialiasdisplay becomes white
  • bug fix: text antialiasing of near-black text looks very bad when antialiased
  • new feature: settable atom elements, atomType, and atomName
  • {atomno=3}.element = 6 set atom 3 to carbon
  • {atomno=3}.element = "C"
  • note -- this will reset the atom color to its standard CPK value.
  • {atomno=3}.atomType = "xxx"
  • {atomno=3}.atomName = "xxx"
  • new feature: select within("atomName", "xxx,yyy")
  • new feature: select within("atomType", "xxx,yyy")

New in Jmol 11.7.6 (Oct 31, 2008)

  • bug fix: draw point translucent only draws ring
  • new feature: mol2 format reads force field atom types for AMBER, CFF91, GAFF, ESFF, CHARMM, COMPASS, CVFF, CVFF_aug, PCFF force fields (rev2)
  • bug fix: load string inline with multiple models fails
  • code: FindBugs fixes for Eval, DrawRenderer, Isosurface, ForceFieldUFF,PdbReader
  • code: ScriptWindow public: sendConsoleEcho,sendConsoleMessage,notifyScriptStart,notifyScriptTermination

New in Jmol 11.6.1 (Oct 23, 2008)

  • bug fix: set labelToggle malfunctioning
  • bug fix: missing default background for toggled labels
  • bug fix: color {oxygen} translucent blue
  • bug fix: color translucent 1 blue 1-8 integer settings off by one
  • bug fix: background color +/-1 adjustment removed
  • bug fix: spardir within /M... directory
  • bug fix: (minor) "set echo xxx display" equivalent to "set echo xxx displayed" missing
  • bug fix: (minor) "set echo xxx hide" equivalent to "set echo xxx hidden" missing

New in Jmol 11.6 (Oct 9, 2008)

  • Bug fix: GIF encoder color / class not found issues.
  • Bug fix: very thin cylinder does not appear at all viewing angles.
  • Bug fix: load "/xxx" with unsigned remote applet loads local file instead of remote root directory.
  • Bug fix: sulfur/sulphur always spelt as in IUPAC Red Book.
  • Bug fix: display of aromaticSingle bond for NEW bond results in dotted bond.
  • Translation: English language variants no longer ignored.

New in Jmol 11.4.6 (Aug 14, 2008)

  • Bug fix: vibration thread not closing down for applet destroy when applet is off-screen
  • Bug fix: was reading server path for local path from history in Webexport
  • Bug fix: Removed stray semicolons from header script comments in webexport templates. They were causing WYSIWYG web editors to corrupt the scripts.
  • Bug fix: Popin.png in WebExport replaced, was too large, causing dialog box to Default to too big on small screens.
  • Bug fix: PDB site definition does not ignore empty site definitions.
  • Bug fix: DEFINE can cause compiling error, e.g. "[2MO]" in 1tmo.

New in Jmol 11.4 RC1 (Jan 18, 2008)

  • bug fix: quaternion for nucleic acids
  • code: inefficiencies in Quaternion code
  • bug fix: wing vectors for biopolymers not containing O improperly drawn for sheets and, in the case of set traceAlpha TRUE (the default), helixes
  • bug fix: translateSelected/rotateSelected does not move cartoons
  • bug fix: tainted occupancy not saved in state
  • bug fix: biopolymers have wrong wing vectors (from 11.3.62)
  • bug fix: restore of state does not reset user-defined atom properties
  • code: refactoring Atom and AtomCollection