Structurecheck - The Command-line Tool of Structure Checker
Version 5.9.4
Contents
Structurecheck command-line
Structure Checker is a chemical validation tool detecting and fixing common structural errors or special features that can be potential sources of problems. Structurecheck is the command-line tool of Structure Checker.
Options
General options of structurecheck
-h, --help this help page
-hc, --help-checker-action help page of valid checker actions
-hf, --help-fixer-action help page of valid fixer actions
-m, --mode <operationmode> [check|fix]
mode of the operation (default: check)
check only check is executed,
does not modify molecules
fix fix molecules containing structure errors
whenever possible
-x fix mode (deprecated, use --mode fix)
Input options:
-c, --config <filepath|string> action string configuration
actions separated by "..",
Output options:
-t, --output-type <output type> [single|separated|accepted|discarded]
set output type(default: single)
single both accepted and discarded structures are
written to the <output path>
separated accepted structures are written to the
<output path>, discarded structures are
written to the <discarded path>
accepted only accepted structures are
written to the <output path>
discarded only discarded structures are
written to the <discarded path>
-o, --output <output path> output file (default: standard output)
-d, --discarded <discarded path> write molecules with structure error to
a separate file (default:standard output)
-f, --format <format> output file format (default: smiles)
-rf, --report-file <filepath> write report to a file
-rp, --report-property <propname> write report to the property of the
output, with the specified property name
-rt, --report-pattern <pattern> generate pattern based report file
-re, --report-format <format> file format of the molecules in report
-l, --log <filepath> write software-error log messages to file
-ocr, --discard-scan-errors discard incorrectly scanned molecules
Go to top
Avaliable checker actions: structurecheck -hc
Valid checker actions (strings) are:
3d detect atoms with 3D coordinates
abbrevgroup detect all abbreviated groups
:expanded=true detect expanded abbreviated groups
:contracted=true detect contracted abbreviated groups
alias detect atoms with alias
aromaticity detect aromaticity errors with the given
aromatization type (default: general)
:basic basic aromaticity errors
:loose loose aromaticity errors
:general general aromaticity errors
atommap detect atoms with map number
atomqueryproperty detect all or specified atom query properties
:H=[true|false] hydrogen count
:X=[true|false] connection count
:D=[true|false] explicit connection count
:R=[true|false] ring count
:h=[true|false] implicit hydrogen count
:r=[true|false] smallest ring count
:a=[true|false] aromaticity
:s=[true|false] substitution count
:u=[true|false] unsaturation
:rb=[true|false] ring bond count
atomvalue detect atoms with atom value
attacheddata detect atoms with attached data
bondangle detect unpreferred bond angles in 2d
bondlength detect bonds that are too long or too short
chiralflag detect incorrectly set chiral flag
coordsystem detect invalid coordination systems
covalentcounterion detect covalent counterions
crosseddoublenond detect crossed double bonds
empty detect items without atoms
explicith detect all or specified explicit hydrogens
:lonely=[true|false] lonely explicit hydrogens
:mapped[true|false] mapped explicit hydrogens
:charged=[true|false] charged explicit hydrogens
:isotopic=[true|false] isotopic explicit hydrogens
:radical=[true|false] radical explicit hydrogens
:wedged=[true|false] wedged explicit hydrogens
explicitlp detect explicit lone pairs
isotope detect isotopes
metallocene detect incorrect metallocene representations
missingatommap detect atoms without map numbers
multicenter detect multicenters
multicomponent detect molecules containing disconnected parts
moleculecharge detect non-neutral molecules
ocr detect drawings that originates from
incorrect optical structure recognition
overlappingAtoms detect atoms that are too close to each other
overlappingBonds detect bonds that are too close to each other
pseudoatom detect pseudo atoms
queryatom detect query atoms
querybond detect query bonds
racemate detect asymmetric tetrahedral atoms without
specific stereo configuration
radical detect radical atoms
ratom detect specified type of R-atoms
:all=[true|false] all type of R-atoms
:disconnected=[true|false] disconnected type of R-atoms
:generic=[true|false] generic type of R-atoms
:linker=[true|false] linker type of R-atoms
:nested=[true|false] nested type of R-atoms
rare detect rare elements
reactionmap detect reactions with invalid atom mapping
rgroupattachmenterror detect all R-group attachment errors
rgroupreferenceerror detect errors in R-group definitions
:missingratom=[true|false] missing R-atom definition
:missingrgroup=[true|false] missing R-group definition
:selfreference=[true|false] self reference errors in R-group definitions
ringstrainerror detect small rings with trans or cumulative
double bonds, or triple bond
solvent detect common solvents appearing
by a main component
staratom detect star atoms
substructure:[smarts] detects the given SMARTS structure
as a substructure in the original molecule
unbalancedreaction detect reactions with orphan atoms
valence detect valence errors
valenceproperty detect atoms with all or specified
valence properties
:defaultvalence=true default valence properties
:nondefaultvalence=true non-default valence properties
wedge detect incorrect wedge bonds
wigglydoublebond detects non_stereo double bonds with wiggly
representation connected to a double bond
Go to top
Avaliable fixer actions: structurecheck -hf
Valid fixer actions (strings) are:
aliastoatom remove aliases from atoms
aliastogroup convert atoms with aliases to abbreviated groups
if the alias is recognized
aliastocarbon remove alias values from atoms and
convert the atom to a carbon
clearabsstereo remove the chiral flag
clean calculate 2D coordinates
contractgroup contract all abbreviated groups
converttoelementalform convert isotopes into elemental atoms
converttoionicform convert covalent counterions to ionic form
converttometalloceneform convert non-standard metallocene representations
into coordinated multicenter representation
crosseddoublebond convert non-stereo double bond represented by
wiggly bond to crossed double bond representation
crossedtowiggly convert non-stereo double bond represented by
crossed double bond to wiggly bond representation
dearomatize convert aromatic rings into Kekule form
expandgroup expand all abbreviated groups if it is possible
fixrgroupattachment add missing attachments points to members
with single location
fixvalence correct valence problem by removing hydrogens
or setting charges
mapmolecule add atom maps to each atom of the molecule
mapreaction add atom maps to the reaction
neutralize remove charges from the molecule
pseudotogroup convert pseudo atoms to abbreviated groups
if pseudo label is a known abbreviated group
removeexplicith remove explicit hydrogens
rearomatize dearomatize the molecule and aromatize it again
removealias remove alias values from atoms
removeatom remove the problematic atoms from the molecule
removeatommap remove atom map numbers
removeatomqueryproperty remove atom query properties
removeatomvalue remove atom values
removeattacheddata remove data attached to atoms
removebond remove problematic bonds from the molecule
removeradical convert radicals to non_radical atoms
removevalenceproperty remove valence properties from atoms
removezcoordinate set the z-coordinates of atoms to zero
ungroup ungroup all abbreviated groups
wedgeclean recalculate the orientation of the wedge bonds
Go to top
Usage
structurecheck -c <config file> -m [mode] [<options>] [input list]
The command line parameter -c or --config is mandatory. This parameter specifies the configuration file path or a simple action string.
structurecheck -c config.xml or
structurecheck -c "atomqueryproperty"
The optional parameter -m or --mode specifies the operation mode. The following operation modes are available:
- check (default): searches for errors;
structurecheck -c config.xml -m "check"
- fix: fixes automatically fixable errors.
structurecheck -c config.xml -m "fix"
Note: The syntax of commands can be different under various command line shells (bash, tcsh, zsh, etc.).
Input
Structurecheck accepts most molecular file formats as input (Marvin Documents (MRV), MDL molfile, Sdfile, RXNfile, Rdfile, SMILES, etc.). The input can be specified as:
- input file(s),
- input string(s), or
- SMILES (default).
structurecheck -c config.xml -m "check" input.mrv
structurecheck -c config.xml -m "check" "OCC(O)C1OC(=O)C(O)=C1O"Go to top
Output
Structurecheck's output contains the file(s) of the checked/fixed molecules and optionally a report of the
results. The molecules are written to the output file(s). The format of the output file(s) can be
specified by the -f or --format option (default format is: "smiles"). The
type of output is defined by the -t or --output-type parameter.
The possible values of the output type are the following:
- single (default): all molecules are written to the file defined by the
--outputparameter. If--outputparameter is omitted, the result is written in the standard output (console). (--discardedparameter is ignored in this case.) - separated: valid and invalid molecules are written to two different files. The
--outputparameter defines the output file of molecules with valid structures, and the--discardedparameter defines the output file of molecules with invalid structures (or in fix mode, those which can not be fixed automatically).- If
--discardedparameter is omitted, molecules with invalid structures are written to standard output; - If
--outputparameter is omitted, molecules with valid structures are written to standard output;Note: The indication of
--outputor--discardedparameter is mandatory. If none of these parameters are defined, the program stops.
- If
- accepted: only molecules with valid structures are written to file defined by the
--outputparameter. If--outputparameter is omitted, molecules with valid structures are written to the standard output. (--discardedparameter is ignored in this case) - discarded: only molecules with invalid structures are written to the file defined by the
--discardedparameter. If�-discardedparameter is omitted, molecules with valid structures are written to the standard output. (--outputparameter is ignored in this case.)
--report-file parameter, or to the output file(s) as additional molecule property. The name of the
property can be defined by the --report-property parameter.
Note: Not all molecules with structure errors are discarded. When fix mode is selected, molecules with automatically unfixable errors will be discarded only.
Go to topUsage examples
Below you can find the short descriptions of some examples.
structurecheck -c "metallocene"
Executes a check with configuration metallocene on the molecule(s) defined in the standard input, and writes the result to the standard output (console);structurecheck -c "bondLength" in.sdf
Executes a check with configuration bondLength on the molecule(s) defined in thein.sdffile, and writes the result to the standard output (console);structurecheck -c "isotope->converttoelementalform" in.sdf
Executes a check with configuration isotope->converttoelementalform on the molecule(s) defined in thein.sdffile, and writes the result to the standard output (console);structurecheck -c "aromaticity..valence" -m fix -f sdf -o out.sdf in.sdf
Executes a fix with configuration aromaticity and valence on the molecule(s) defined in thein.sdffile, and writes the molecules with valid structures (including automatically fixed molecules) insdfformat to theout.sdfoutput file;structurecheck -c config.xml -t separated -o out.sdf -d discarded.sdf
Executes a check with configuration contained by theconfig.xml, and writes the molecules with valid structures toout.sdf, and writes the molecules with invalid structures todiscarded.sdf.Note: The format of both outputs is SMILES(!) as
--format (-f)is not defined;structurecheck -c config.xml -m fix -t separated -d discarded.sdf
Executes a fix with configuration contained by theconfig.xml, and writes the molecules with invalid structures todiscarded.sdf, and writes molecules with valid structures to the standard output (console);structurecheck -c config.xml -m fix -t discarded in.sdf
Executes a fix with configuration contained by theconfig.xml, and writes the molecules with invalid structures todiscarded.sdf, and omits molecules with valid structures.
Links
List of available checkersStructure Checker GUI
Structure Checker in MarvinSketch
Structure Checker Developer Guide
Do you have a question? Would you like to learn more? Please browse among the related topics on our support forum or search the website. If you want to suggest modifications or improvements to our documentation email our support directly!
