For the most part, the only limitations of Name>Struct are ones that are mandated by common sense.
Name>Struct is most commonly available as a component of ChemDraw Ultra. The system requirements for the latest version of ChemDraw are available on the CambridgeSoft web site.
The batch version of Name>Struct is a standalone command-line application. It requires:
These requirements should be trivial compared with the standard hardware configurations sold at any time in the past several years.
The Name>Struct algorithm itself is implemented in standards-compliant C++, and should be readily convertible to other systems; we simply haven't bothered to do so. Please contact your CambridgeSoft sales representative if you think you need Name>Struct provided for some other operating system or in some other configuration.
Maximum number of atoms: Unlimited.
Although there is no actual limit to the number of atoms, Name>Struct is still designed to produce a graphical structure. Beyond a certain point, a structure diagram would simply get too large for a chemist to want to look at. In our opinion, that point would probably be in the order of a few thousand atoms. Still, if you ask for something larger, Name>Struct should be able to provide it for you.
The batch version of Name>Struct, which can produce output in SDfile format, is necessarily restricted to the 999-atom and 999-bond heavy-atom limits imposed by that format. A heavy atom is, for the most part, an atom other than hydrogen.
We have never seen a non-contrived name that generated a structure with greater than about 500 heavy atoms.
Maximum length of name: Unlimited
We have never seen a non-contrived name with greater than about 500 characters. If you have one, it should definitely work (and we'd be interested in seeing the name, just out of curiosity).
Number of elements supported: 103
Elements with atomic numbers greater than that of plutonium have half-lives that are so short that they rarely form compounds of any sort. Nomenclature involving them is, accordingly, "quite uncommon". However, if you want to see a diagram of Lawrencium(III) acetate, for example, Name>Struct will oblige.
There are similar practical issues with a few other elements. Helium doesn't show up in many chemical names -- but there is no programmatic restriction to using any of the first 103 elements, including helium, if you have a reason to do so.
Some "chemical names" actually describe a generic substance rather than a specific molecule. It is physically impossible to draw "the chemical structure of mineral oil", for example. A name like "xylenes" makes its ambiguity explicit, but others are less obvious. A name like "quinhydrone" sounds like it ought to have a structure, but it too represents a mixture of several forms.
Macromolecules are inappropriate candidates for depiction by a chemical structure. Proteins and enzymes have extremely large structures (tens of thousands to hundreds of thousands of atoms) that are defined principally by their biological activity and occasionally by their 3D coordinates. A 2D depiction of agarose would be neither recognizable nor useful, and so Name>Struct generally will not attempt to generate structures for substances of this sort.
Highly bridged ring systems, including cubane, fullerenes, and polyboranes, are extremely difficult to depict in an aesthetic fashion. The Name>Struct algorithm could interpret them without much difficulty, but support for these compounds has been disabled pending advances in the technology used to produce good-looking diagrams.
Polymers are not supported by Name>Struct. Interpretation of polymers has also been disabled pending advances in the technology used to produce good-looking diagrams.
Fully asystematic names such as Brilliant Green, Bis-Tris, C.I. 75660, Viagra™, "compound #3", and "brown sludge from Thursday's reaction" convey no chemical meaning and can only be interpreted by direct database lookup. Name>Struct will recognize many of the most-common trivial and trade names, but its strength is not in that area and it is not intended to be a comprehensive interpreter of all trivial and trade names. CambridgeSoft can provide a number of other databases that are more appropriate for interpreting names of this type, but even the best database will have problems with a name like "compound #3".
Property-based descriptors cannot be interpreted by Name>Struct. A prefix like "(+)-" refers to the sign of the optical rotation of the molecule, which describes a physical property that must be measured in the laboratory. In the best of circumstances physical properties can only be estimated, not predicted with absolute accuracy. Descriptors of this type are ignored by Name>Struct. If the remainder of the name can be interpreted successfully, the resulting structure will be accompanied by a warning that some descriptors were ignored.
Ambiguity is a constant concern in the interpretation of chemical names. A name like "2-chloroethylbenzene" can readily be interpreted in at least two ways (parentheses added to clarify how each structure was generated):
In developing Name>Struct, we have spent considerable time investigating how ambiguous names are actually being used by real chemists. As a result, Name>Struct will produce the single structure that is most commonly intended by an ambiguous name -- the right-hand structure in the specific example above. This will almost always generate the expected result, but we recognize that ambiguous names are ambiguous, and occasionally will be intended to represent one of the other possibilities. Accordingly, Name>Struct will also provide a warning message when it encounters an ambiguous name.