smi_list

Creates a global list of distinct SMILES.

Syntax

void    smi_list(list-name,SMILES-field,structure-id-field)
list    list-name
expr    SMILES-field,structure-id-field

Description

list-name

identifies the name of the list to navigate.

SMILES-field

specifies the sequence numbers for SMILES fields.

structure-id-field

specifies the sequence numbers for structure numbers.

These parameters are used to create a global list called G.smi_list with the following features:

  • G.smi_list has 3 fields with the following lengths:

    Field

    Length

    Structure ID

    6

    SMILES

    2000

    Color

    5

  • Duplicate SMILES are deleted.
  • Rows with dot disconnected SMILES are followed with rows containing the individual SMILES of each moiety. This feature was developed with a view towards the generation of 3d coordinates. The DAYcgi program ruby cannot interpret dot disconnected SMILES, but it does generate 3d coordinates for each of the moieties.
  • smi_list() includes code to offer the user a choice of colors for structures and backgrounds. This code has been commented out in response to complaints that black backgrounds consume unnecessary amounts of print toner. The default color scheme is currently set as black structure on white paper. Removing the comments gives users these choices:

    Code

    Color

    1

    black on white

    2

    black on paper

    10

    white on black

    20

    color on black

    21

    color on white

    22

    color on paper

Finally, smi_list() sets a flag (G.key=25) to signal the window trigger that G.smi_list has been created.

Example

ChemBio applications must display lists of structures, a task that has two steps. The first step is to generate a list with distinct SMILES and which includes dot disconnected SMILES and their separate moieties. The second step is to use this distinct SMILES list to generate an HTML document to display the structures. The following trigger is the first step and it is executed when an 'Action Button' called 'Structure' is pushed.

 {
 smi_list(p.wl, @p.smile, @p.wrno);/* create G.smiles_list */
 escape(input);
 }

The second step takes place in the window trigger where G.smi_list is used by smi2gif() to format an HTML document with a table of structures and display it in the browser.


Updated 19 May 1999. Copyright DataAspects Corp. 1998-1999