Structure Checker

Structure checker is a tool for filtering drawing mistakes or special structural elements. Registering a compound in a company's database might limit the user in for example the introduction of non-natural isotopes, query bonds, species with charge etc. Structure checker runs a check on the molecule(s) features and lists them in a separate window, with the option to refresh when you make changes to your drawing. The Structure checker works with predefined checking elements and you can choose which ones should be considered when you run a check.

Structure checker's command line interface and API for batch usage requires a Structure Checker licence. This guide refers to the checker available free in MarvinSketch as an add-on.

abbreviated group alias aromaticity error atom map atom value attached data bond angle bond length chiral flag error coordination system error covalent counterion crossed double bond empty structure explicit hydrogen explicit lone pairs isotope metallocene missing atom map molecule charge multicenter multicomponent OCR error overlapping atoms overlapping bonds pseudo atom query atom query bond radical rare element reaction map error ring strain error solvent star atom substructure 3 dimension valence error wedge error wiggly double bond

Setting Structure Checker configuration

Before you start using the Stucture Checker, consult the list of available checkers in the Preferences dialog (Edit -> Preferences -> Checkers tab).

pref_checkers

The default list contains checkers in alphabetical order. Click on the name of the checker to see additional options and select the needed options by clicking the tick box.

Two types of checkers are listed: error detecting and feature detecting checkers. Error checkers are looking for chemically wrong molecule parts (e.g. valence errors, overlapping atoms), while the feature checkers searches the selected molecule characteristics which in the specific structures are not considered as an error (e.g. query properties). The two types are distincted by the addtional 'error' tag and different icons.

Checking order

Some molecule properties might change after fixing an isssue. You can define a checking sequence by moving up or down the list elements. The order of the checkers may be important in case you run a Fix all action.
To change the order of the checker items, select the checker from the list and click the up up or down down icon on the right side of the dialog.

Add and remove checker items

To discard items from the checking sequence, select the checker and click the remove button on the right. To revert this modification or add new elements to the list, click the add button on the right and select the checker needed.

Save and load checker lists

Different checking lists might be needed for different compound families. To make checking simpler, you can save your checking list to your computer and open it again if you are editing the same molecule type. Click the Save button save to save your settings and click the Load button open to open a saved list.

Usage

Start Structure Checker

You can open Structure Checker at any stage of your work. As you click the Check structure icon defaultcheck in the toolbar or in the Structure menu or left-click the Checker button in the statusbar, a window will appear next to the sketching window. The molecule regions are highlighted on the canvas with a light red color. If you click on any checker message, the effected area changes color to darker red. If you move the cursor over one of the affected atoms or bonds, the appropriate checker message is highlighted in the checker list.

Recheck the structure

After you have changed the structure (including accepting a fix), the checker will offer re-checking. Click on the recheck icon in the Checker window.

check

At any point you can allow the Structure checker to fix the issues one by one or every of them by a single click. Another option is to turn on automatic rechecking: click the Enable automatic checking in the bottom of the text.

Automatic structure checking

Turn on Automatic checking to follow every drawing step you make by a quick check. This option is switched on in the Structure menu or right-clicking the Checker button on the status bar which then becomes colored. In case of an error a red exclamation mark appears. Left-clicking on this icon opens the Structure Checker window, where all the warnings are listed.

While the molecules are scanned for checker issues, a yellow question mark appears on the status bar.

If the molecule is correct, a green check mark appears in the Checker icon on the status bar.

List of available checkers and fixers

abbreviated group alias aromaticity error atom map atom value attached data bond angle bond length chiral flag error coordination system error covalent counter ion crossed double bond empty structure explicit hydrogen explicit lone pairs isotope metallocene missing atom map molecule charge multicenter multicomponent OCR error overlapping atoms overlapping bonds pseudo atom query atom query bond radical rare element reaction map error ring strain error solvent star atom substructure 3 dimension valence error wedge error wiggly double bond

Abbreviated Group

Example: ungroup a contracted and an expanded phenyl group.
Warning: ex_abbrev_ch
Fix: ex_abbrev_f
Notes: If attachment point is not connected to any atom, ungrouping removes attachment points of the abbreviated group and adds an implicit hydrogen.

Alias

Example: convert a methoxy group defined as an alias to an abbreviated group.
Warning: ex_alias_ch
Fix: ex_alias_f
Note: The abbreviated group is linked correctly to the chain after the fix, i.e. bond through the oxygen atom.

Example: remove the NH2 alias from the carbon atom.
Warning: ex_alias2_ch
Fix: ex_alias2_f
Note: alias only covers the atom, and fixer removes this alias from the original atom.

Aromaticity Error

Example: the 2-pyridone aromatized in general mode is corrected after a checking of aromatization in basic mode.
Warning: ex_arom_ch
Fix: ex_arom_f
Notes: In this case, both rearomatization and dearomatization fix yields the same structure.
Details on aromaticity detection.

Atom Map

Example: remove atom map from a partially mapped ethyl methylether molecule.
Warning: ex_atommap_ch
Fix: ex_atommap_f

Atom Value

Example: delete the atom with value 'isotope'.
Warning: ex_atomvalue_ch
Fix: ex_atomvalue_f

Attached Data

Example: removing attached data (reactant=12) from the oxygen atom.
Warning: ex_attached_ch
Fix: ex_attached_f

Bond Angle

Example: cleaning the molecule.
Warning: ex_bondangle_ch
Fix: ex_bondangle_f
Notes: The current version of bond angle checker examines chain bonds of 2D molecules. Envelope-shaped cyclic compounds are considered as error.

Bond Length

Example: cleaning the molecule to adjust bond length.
Warning: ex_bondlength_ch
Fix: ex_bondlength_f
Notes: The current version of bond length checker examines chain bonds of 2D molecules.

Chiral Flag error

Example: adding chiral flag to a chiral compound not flagged.
Warning: ex_chiralflag_ch
Fix: ex_chiralflag_f

Coordination System error

Example: deleting a coordination bond between two multicenters.
Warning: ex_coord_ch
Fix: ex_coord_f

Covalent Counterion

Example: converting a covalent sodium alkoxide formula to the ionic form.
Warning: ex_covcounter_ch
Fix: ex_covcounter_f

Crossed double bond

Example: changing a crossed double bond to a wiggly double bond.
Warning: ex_crossed_ch
Fix: ex_crossed_f
Notes: reverse action of wiggly double bond fixing.

Empty structure

Explicit Hydrogen

Example: removing explicit hydrogen and isotopic hydrogen atoms.
Warning: ex_explh_ch
Fix: ex_explh_f

Explicit Lone Pairs

Example: removing explicit lone pair.
Warning: ex_expllp_ch
Fix: ex_expllp_f

Isotope

Example: removing isotope information.
Warning: ex_isotope_ch
Fix: ex_isotope_f
Notes: deuterium and tritium are recognized as symbols D and T, respectively as well.

Metallocene

Example: fixing ferrocene structures.
Warning: ex_metallocene_ch
Fix: ex_metallocene_f

Missing Atom Map

Example: mapping atoms in unmapped molecules.
Warning: ex_missingatommap_ch
Fix: ex_missingatommap_f

Molecule Charge

Example: removing charge along with removing a proton.
Warning: ex_molcharge_ch
Fix: ex_molcharge_f
Notes: charge is not checked in reactions. Charged molecules where no hydrogens can be removed, are to be corrected manually.

Multicenter

Example: removing multicenter.
Warning: ex_multicenter_ch
Fix: ex_multicenter_f

Multicomponent

OCR error

Example: detecting OCR errors.
Warning: ex_ocr_ch

Overlapping Atoms

Example: adding chiral flag to a chiral compound.
Warning: ex_overlappingatoms_ch
Fix: ex_overlappingatoms_f

Overlapping Bonds

Example: cleaning the molecule.
Warning: ex_overlappingbonds_ch
Fix: ex_overlappingbonds_f
Notes: bridged polycycles are cleaned as far as their structure allows it, and the overlapping bonds warning will remain.

Pseudo Atom

Example: converting a pseudo atom to a carbon atom.
Warning: ex_pseudo_ch
Fix: ex_pseudo_f

Query Atom

Example: finding query atoms.
Warning: ex_queryatom_ch

Query Bond

Example: finding query bonds.
Warning: ex_querybond_ch

Radical

Example: removing wrong radical from acetate.
Warning: ex_radical_ch
Fix: ex_radical_f

Rare element

Example: filtering the praseodymium as a substitution for a propyl group.
Warning: ex_rareelement_ch

Reaction Map error

Example: mapping a partially mapped reaction.
Warning: ex_reactionmap_ch
Fix: ex_reactionmap_f

Ring strain error

Example: cleaning the molecule.
Warning: ex_doublebondstereo_ch
Fix: ex_doublebondstereo_f
Solvent

Example: removing water molecules.
Warning: ex_solvent_ch
Fix: ex_solvent_f

The default solvents are: water, methanol, ethanol, propan-1-ol propan-2-ol, butan-1-ol, formic acid, acetic acid, pentane, hexane, benzene, methylbenzene, ethoxyethane, trichloromathane, ethyl acetate, dichloromethane, propan-2-one, acetonitrile, N-methylacetamide, methanesulfonylmethane, oxolane, heptane, 2-mezhylpropan-2-ol, butan-2-one, cyclohexane, cycloheptane, 1,2-dichloroethane, 2-(propan-2-yloxy)propane, 1,2-dimethoxyethane, N,N-dimethylacetamide, pyridine, 1,2-dimethylbenzene, 2-methyoxy-2-methylpropane


Star Atom

Example: deleting the star atom.
Warning: ex_staratom_ch
Fix: ex_staratom_f

Substructure

Example: Finding nitro groups as substructure.
Warning: substructure_nitro
Note: This checker is available only in JChem. The checker can also be accessed from MarvinSketch if MarvinSketch is run from the JChem\bin folder (e.g, c:\Program Files\ChemAxon\Jchem\bin\msketch.bat).

Three Dimension

Example: cleaning the cyclohexane in 2D.
Warning: ex_3d_ch
Fix: ex_3d_f

Valence error

Example: setting the charge on a quaternary ammonium ion; removing a hydrogen from the secondary ammonium ion with no charge set.
Warning: ex_valence_ch
Fix: ex_valence_f
Notes: valence errors with no removable hydrogens have to be corrected manually.

Wedge error

Example:
Warning: ex_wedge_ch
Fix: ex_wedge_f
Notes: some symmetric structures are not recognized by the checker.

Wiggly Double Bond

Example: changing a wiggly double bond to a crossed double bond.
Warning: ex_wiggly_ch
Fix: ex_wiggly_f
Notes: reverse action of crossed double bond fixing.


abbreviated group alias aromaticity error atom map atom value attached data bond angle bond length chiral flag error coordination system error covalent counter ion crossed double bond empty structure explicit hydrogen explicit lone pairs isotope metallocene missing atom map molecule charge multicenter multicomponent OCR error overlapping atoms overlapping bonds pseudo atom query atom query bond radical rare element reaction map error ring strain error solvent star atom substructure 3 dimension valence error wedge error wiggly double bond