Daylight v4.9
Release Date: 1 February 2008


dt_arbsmiles - retrieve a SMILES string with arbitrarily ordered atoms

Generic Prototype

dt_arbsmiles(dt_Handle, dt_Boolean) => dt_String

C Prototype

#include "dt_smiles.h"

dt_String dt_arbsmiles(dt_Integer *len, dt_Handle object, dt_Boolean iso)

FORTRAN Prototype

include ''

integer*4 dt_f_arbsmiles(object, iso, string)

integer*4 object
logical iso
character*() string


Calculates the arbitrary SMILES for the given object, which may be a molecule or reaction. The 'iso' parameter tells whether the SMILES string should contain isomeric labelings (isotopic and chiral information). The object must be in the modify-off state.

The arbitrary SMILES is derived using the same algorithm as a canonical SMILES, except that a different set of atom labels is used, allowing the generation of a SMILES in an arbitrary order. The labelings are controlled by the user through the dt_setarborder(3) function.

Note that the string is part of the object and may change or be discarded if the object is modified or deallocated. In general, the string should be copied by the application.

Return Value

Returns the arbitrary SMILES string. For objects other than molecules or reactions, the arbsmiles is defined as the 'invalid string'.

Related Topics

dt_alloc_mol(3) dt_arborder(3) dt_arbstream(3) dt_cansmiles(3) dt_setarborder(3) dt_smilin(3)