Re: [Jmol-users] Write 2 PDB models?

2016-07-22 Thread Angel Herráez
Hi Eric

I agree it's a bug. I wuld xpect

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] Write 2 PDB models?

2016-07-22 Thread Angel Herráez
Hi Eric
I agree it's a bug. I would expect both models to be saved, and the doc says
"Only the currently selected atoms are saved."
If you save to SDF it works as expected.

The fact that the file has MODEL ENDMDL means that Jmol is indeed 
intending to save both.

So for proteins, you could instead use
  write test.jmol
which works fine. Of course, that's a binary file (may be an issue if you want 
to work with local webpages).


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


[Jmol-users] Write 2 PDB models?

2016-07-22 Thread Eric Martz
If I load 2 models, then "frame all; select all;", I expect that "write 
PDB" will write both models. Instead, the PDB file has MODEL/ENDMDL 
records for 2 models, but the first model contains no coordinates. Is 
this a bug or a feature?

load =3hyd
load append =4qxx
frame all

select all

write "test.pdb"


Thanks, Eric


--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] JSME and SMILES

2016-07-22 Thread Jennifer L. Muzyka
Bob,
I realize that Jmol uses Ajax.  So I’ve been using Ajax all along.  This was my 
first time I wrote the Ajax HTML and JavaScript myself to communicate with 
server-side PHP code I also wrote myself.  So it felt different to me.
Jennifer







Jennifer Muzyka
H.W. Stodghill Jr. and Adele H. Stodghill Professor of Chemistry
Centre College
600 West Walnut Street
Danville, KY  40422

jennifer.muz...@centre.edu
http://web.centre.edu/muzyka
http://organicers.org

859-238-5413
fax 859-236-7925






On Jul 22, 2016, at 10:10 AM, Robert Hanson 
mailto:hans...@stolaf.edu>> wrote:



On Fri, Jul 22, 2016 at 8:42 AM, Jennifer L. Muzyka 
mailto:jennifer.muz...@centre.edu>> wrote:
InChI is very messy because there’s more than one version of the program that 
generates it.  So depending on what version you use, you get a different InChI. 
 That information about which version of the InChI rules you are using is an 
early part of the string.  The other problem with InChI is that the strings can 
be REALLY LONG, as in so long that it’s not possible to use them when you 
search Google.  That was another take-away from the course.

You do have to define the rules so that you get the sections right. Beyond 
that, I suppose it may be true, but not for simple molecules. Any changes by 
version would be for esoteric species (I am guessing.) What you are saying 
violates the whole premise of InChI. Do you have examples, Jennifer?

2. Quick Facts
2.1. What is an InChI?

InChI is an acronym for IUPAC International Chemical Identifier. It is a string 
of characters capable of uniquely representing a chemical substance and serving 
as its unique digital ‘signature’. It is derived solely from a structural 
representation of that substance in a way designed to be independent of the way 
that the structure was drawn. A single compound will always produce the same 
identifier.

[http://www.inchi-trust.org/technical-faq/]


You are using AJAX every time you use JSmol. All files are transmitted using 
AJAX, and within JSmol you can do AJAX as simply as


x = load("http://..";)


I don't see why you would need any server-side piece these days. It is 
certainly not "elegant" in my opinion. Elegant is

if ("my SMILES string".find("your SMILES string", "SMILES")) prompt "You're 
good to go!"


without any concern for where the strings come from. That's what JSmol does. No 
server required. Just make sure you are using  the right  options in JSME. See 
http://chemapps.stolaf.edu/jmol/jsmol/jsmetest2.htm


}

var JMEInfo = {
use: "HTML5"
  ,visible: true
  ,divId: "jmediv"
  ,options : "autoez;nocanonize"


}


Here's a note I have on that from an earlier jmol-users post:

JSME and 2D/3D -  It turns out that JSME has two modes of delivery of SMILES -- 
"canonize" and "nocanonize"...The problem is that "canonize" delivers aromatic 
symbols for rings that  are not huekel-aromatic -- all six carbons, for 
example, in benzoquinone. Jmol does this, too, but Jmol adds double bond 
indications as well, so ...c=cc=c The difference is significant -- Jmol's 
SMILES representations are interpretable by the NCI Resolver; JSME's "canonize" 
versions are not. So I  have to have JSME in nocanonize mode in order to 
convert 2D to 3D using the NCI Resolver.

Bob





--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] JSME and SMILES

2016-07-22 Thread Jennifer L. Muzyka
Here’s the documentation that served as the reading for the fall 2015 OLCC 
course on cheminformatics, from 
http://olcc.ccce.divched.org/2015OLCCModule5P1#3.2
Because the layered structure of InChI allows one to represent a chemical 
structure with a desired level of details, InChI software may generate 
different InChI strings for the same molecule.  This flexibility may be 
regarded as an obstacle to standardization and interoperability.  In response 
to this concern, the standard InChI was introduced which contains the same 
level of structural details and the same conventions for drawing perception, by 
using standard option settings in InChI software.  The standard InChI 
representations begin with “InChI=1S/”, while the non-standard InChI begins 
with “InChI=1/”.  The digit “1” following “InChI=” is the current InChI version 
number.

InChIKey

The length of an InChI string increases with the size of the corresponding 
chemical structure, and it is very common that molecules with more than 100 
atoms result in very long InChI strings, which are not appropriate to use in 
internet search engines (such as Google, Yahoo, Bing, and so on).  In addition, 
these search engines do not care about case sensitivity nor special characters 
used in InChI.  To address this issue, the InChIKey was introduced for Internet 
and database searching/indexing.  It is a 27-character string derived from 
InChI, using a hashing algorithm.  Hashing is a one-way mathematical 
transformation typically used to calculate a compact fixed length digital 
representation of a much longer string of arbitrary length.

I guess I paid more attention to the phrase about “obstacle to standardization 
and interoperability” than I did to the part about it being “molecules with 
more than 100 atoms” having long InChI strings.
Jennifer






Jennifer Muzyka
H.W. Stodghill Jr. and Adele H. Stodghill Professor of Chemistry
Centre College
600 West Walnut Street
Danville, KY  40422

jennifer.muz...@centre.edu
http://web.centre.edu/muzyka
http://organicers.org

859-238-5413
fax 859-236-7925






On Jul 22, 2016, at 10:10 AM, Robert Hanson 
mailto:hans...@stolaf.edu>> wrote:



On Fri, Jul 22, 2016 at 8:42 AM, Jennifer L. Muzyka 
mailto:jennifer.muz...@centre.edu>> wrote:
InChI is very messy because there’s more than one version of the program that 
generates it.  So depending on what version you use, you get a different InChI. 
 That information about which version of the InChI rules you are using is an 
early part of the string.  The other problem with InChI is that the strings can 
be REALLY LONG, as in so long that it’s not possible to use them when you 
search Google.  That was another take-away from the course.

You do have to define the rules so that you get the sections right. Beyond 
that, I suppose it may be true, but not for simple molecules. Any changes by 
version would be for esoteric species (I am guessing.) What you are saying 
violates the whole premise of InChI. Do you have examples, Jennifer?

2. Quick Facts
2.1. What is an InChI?

InChI is an acronym for IUPAC International Chemical Identifier. It is a string 
of characters capable of uniquely representing a chemical substance and serving 
as its unique digital ‘signature’. It is derived solely from a structural 
representation of that substance in a way designed to be independent of the way 
that the structure was drawn. A single compound will always produce the same 
identifier.

[http://www.inchi-trust.org/technical-faq/]


You are using AJAX every time you use JSmol. All files are transmitted using 
AJAX, and within JSmol you can do AJAX as simply as


x = load("http://..";)


I don't see why you would need any server-side piece these days. It is 
certainly not "elegant" in my opinion. Elegant is

if ("my SMILES string".find("your SMILES string", "SMILES")) prompt "You're 
good to go!"


without any concern for where the strings come from. That's what JSmol does. No 
server required. Just make sure you are using  the right  options in JSME. See 
http://chemapps.stolaf.edu/jmol/jsmol/jsmetest2.htm


}

var JMEInfo = {
use: "HTML5"
  ,visible: true
  ,divId: "jmediv"
  ,options : "autoez;nocanonize"


}


Here's a note I have on that from an earlier jmol-users post:

JSME and 2D/3D -  It turns out that JSME has two modes of delivery of SMILES -- 
"canonize" and "nocanonize"...The problem is that "canonize" delivers aromatic 
symbols for rings that  are not huekel-aromatic -- all six carbons, for 
example, in benzoquinone. Jmol does this, too, but Jmol adds double bond 
indications as well, so ...c=cc=c The difference is significant -- Jmol's 
SMILES representations are interpretable by the NCI Resolver; JSME's "canonize" 
versions are not. So I  have to have JSME in nocanonize mode in order to 
convert 2D to 3D using the NCI Resolver.

Bob





--
W

Re: [Jmol-users] JSME and SMILES

2016-07-22 Thread Robert Hanson
On Fri, Jul 22, 2016 at 8:42 AM, Jennifer L. Muzyka <
jennifer.muz...@centre.edu> wrote:

> InChI is very messy because there’s more than one version of the program
> that generates it.  So depending on what version you use, you get a
> different InChI.  That information about which version of the InChI rules
> you are using is an early part of the string.  The other problem with InChI
> is that the strings can be REALLY LONG, as in so long that it’s not
> possible to use them when you search Google.  That was another take-away
> from the course.
>

You do have to define the rules so that you get the sections right. Beyond
that, I suppose it may be true, but not for simple molecules. Any changes
by version would be for esoteric species (I am guessing.) What you are
saying violates the whole premise of InChI. Do you have examples, Jennifer?

2. Quick Facts 2.1. What is an InChI?

InChI is an acronym for IUPAC International Chemical Identifier. It is a
string of characters capable of uniquely representing a chemical substance
and serving as its unique digital ‘signature’. It is derived solely from a
structural representation of that substance in a way designed to be
independent of the way that the structure was drawn. A single compound will
always produce the same identifier.

[http://www.inchi-trust.org/technical-faq/]


You are using AJAX every time you use JSmol. All files are transmitted
using AJAX, and within JSmol you can do AJAX as simply as


x = load("http://..";)


I don't see why you would need any server-side piece these days. It is
certainly not "elegant" in my opinion. Elegant is

if ("my SMILES string".find("your SMILES string", "SMILES")) prompt "You're
good to go!"


without any concern for where the strings come from. That's what JSmol
does. No server required. Just make sure you are using  the right  options
in JSME. See http://chemapps.stolaf.edu/jmol/jsmol/jsmetest2.htm


}var JMEInfo = {use: "HTML5"  ,visible: true  ,divId: "jmediv"
,options : "autoez;nocanonize"

}


Here's a note I have on that from an earlier jmol-users post:

JSME and 2D/3D -  It turns out that JSME has two modes of delivery of
SMILES -- "canonize" and "nocanonize"...The problem is that "canonize"
delivers aromatic symbols for rings that  are not huekel-aromatic -- all
six carbons, for example, in benzoquinone. Jmol does this, too, but Jmol
adds double bond indications as well, so ...c=cc=c The difference is
significant -- Jmol's SMILES representations are interpretable by the NCI
Resolver; JSME's "canonize" versions are not. So I  have to have JSME in
nocanonize mode in order to convert 2D to 3D using the NCI Resolver.

Bob
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] JSME and SMILES

2016-07-22 Thread Jennifer L. Muzyka
InChI is very messy because there’s more than one version of the program that 
generates it.  So depending on what version you use, you get a different InChI. 
 That information about which version of the InChI rules you are using is an 
early part of the string.  The other problem with InChI is that the strings can 
be REALLY LONG, as in so long that it’s not possible to use them when you 
search Google.  That was another take-away from the course.

The reason I have been using server side lookup for the current page I’m 
developing is that I’m having students draw the starting material for a given 
reagent/product combination.  There are often numerous starting materials that 
are possible.  Going back to the server seemed much more elegant than trying to 
manage regular expressions on the variety of different SMILES or adding a 
second query to generate a complete list of other possible starting materials 
that would also work.  And it was cool to me because it forced me to finally 
learn how to do Ajax.
Jennifer






Jennifer Muzyka
H.W. Stodghill Jr. and Adele H. Stodghill Professor of Chemistry
Centre College
600 West Walnut Street
Danville, KY  40422

jennifer.muz...@centre.edu
http://web.centre.edu/muzyka
http://organicers.org

859-238-5413
fax 859-236-7925






On Jul 22, 2016, at 9:28 AM, Robert Hanson 
mailto:hans...@stolaf.edu>> wrote:

It's a very odd use of the word "canonical." I'm surprised you came away with 
that understanding, because the fact that it is the way I describe is well 
documented and very important.

InChI is truly canonical, mostly because there is exactly one program/algorithm 
in the world that can create it. Now that that is available in JavaScript (and 
is in the JSmol distribution -- see 
http://chemapps.stolaf.edu/jmol/jsmol/inchi.htm or in your jsmol folder of the 
distribution) there is no need for any server-side business for many 
applications.

InChI keys are just hashes of InChIs. I guess there is some possibility that 
they are not unique (two molecules can have the same hash code, just as any two 
ASCII strings can). For your purposes those would work as well.

I have not experimented with making hashes from inchi.js, but I am sure it is 
possible. It's a very simple process once you have the InChI key.

Bob

​
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] Rapamycin

2016-07-22 Thread Robert Hanson
Also, this is a good use of

=RAP?

at http://chemapps.stolaf.edu/jmol/jsmol/jsmol.htm

[image: Inline image 1]



On Fri, Jul 22, 2016 at 8:05 AM, Robert Hanson  wrote:

> Great idea, Angel.
>
> load ==RAP
>
> ​
>



-- 
Robert M. Hanson
Larson-Anderson Professor of Chemistry
St. Olaf College
Northfield, MN
http://www.stolaf.edu/people/hansonr


If nature does not answer first what we want,
it is better to take what answer we get.

-- Josiah Willard Gibbs, Lecture XXX, Monday, February 5, 1900
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] JSME and SMILES

2016-07-22 Thread Robert Hanson
It's a very odd use of the word "canonical." I'm surprised you came away
with that understanding, because the fact that it is the way I describe is
well documented and very important.

InChI is truly canonical, mostly because there is exactly one
program/algorithm in the world that can create it. Now that that is
available in JavaScript (and is in the JSmol distribution -- see
http://chemapps.stolaf.edu/jmol/jsmol/inchi.htm or in your jsmol folder of
the distribution) there is no need for any server-side business for many
applications.

InChI keys are just hashes of InChIs. I guess there is some possibility
that they are not unique (two molecules can have the same hash code, just
as any two ASCII strings can). For your purposes those would work as well.

I have not experimented with making hashes from inchi.js, but I am sure it
is possible. It's a very simple process once you have the InChI key.

Bob

​
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] JSME and SMILES

2016-07-22 Thread Jennifer L. Muzyka
Bob,
I was under the impression that canonical SMILES would be the same from one 
program to another, not just from the same program.  I participated in the Fall 
2015 OLCC on cheminformatics, and that’s what I remember us teaching the 
students.  So the distinction you are making is reasonable to me but a new idea.

It’s wonderful to hear that Jmol could convert the SMILES to InChI with such an 
easy process.  Can it also do InChIKey?  The cheminformatics guys made a big 
deal over that being better than InChI in the OLCC course.
Jennifer






Jennifer Muzyka
H.W. Stodghill Jr. and Adele H. Stodghill Professor of Chemistry
Centre College
600 West Walnut Street
Danville, KY  40422

jennifer.muz...@centre.edu
http://web.centre.edu/muzyka
http://organicers.org

859-238-5413
fax 859-236-7925






On Jul 22, 2016, at 9:01 AM, Robert Hanson 
mailto:hans...@stolaf.edu>> wrote:

Hi, Jennifer.

"Canonical" SMILES just means that a given version of a given program will 
always report out the same string for a compound. Key words there are "same 
program" and "same version". So if you used an earlier version of a program to 
create a database of strings to compare, then you probably need to run through 
that set with any newer version of JSME and require users use that version.

In developing the SMILES capabilities of Jmol I decided not to even attempt 
canonicalization. It has not been important for any application I have seen, 
short of what you are doing -- database lookup. But for that you can use InChI 
keys. Jmol can deliver those either from the browser using inchi.js or by 
remote calls to the NCI Resolver.

If you have only 3000 compounds, you could set up a little 5-line script that 
will run in Jmol.jar that will probably take 10 minutes to convert all SMILES 
to InChI.

Bob

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] Rapamycin

2016-07-22 Thread Robert Hanson
Great idea, Angel.

load ==RAP

​
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users


Re: [Jmol-users] JSME and SMILES

2016-07-22 Thread Robert Hanson
Hi, Jennifer.

"Canonical" SMILES just means that a given version of a given program will
always report out the same string for a compound. Key words there are "same
program" and "same version". So if you used an earlier version of a program
to create a database of strings to compare, then you probably need to run
through that set with any newer version of JSME and require users use that
version.

In developing the SMILES capabilities of Jmol I decided not to even attempt
canonicalization. It has not been important for any application I have
seen, short of what you are doing -- database lookup. But for that you can
use InChI keys. Jmol can deliver those either from the browser using
inchi.js or by remote calls to the NCI Resolver.

If you have only 3000 compounds, you could set up a little 5-line script
that will run in Jmol.jar that will probably take 10 minutes to convert all
SMILES to InChI.

Bob
--
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev___
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users