Chemistry External Tool

This node allows users to run a user-specified external program that inputs up to 3 columns and outputs 3 columns.

The allowed input types are: Maestro, Sequence, Alignment, Smiles, Mol2, Sd, Pdb, String, Integer, Double, Text, FingerPrint, CanvasMatrix, CanvasPLS, CanvasBayes, GlideGrid, Hypothesis, CMS or Trajectory.

The allowed output types are: Maestro, Sequence, Alignment, Smiles, Mol2, Sd, Pdb, String, Integer, Double, Text, FingerPrint, CanvasMatrix, CanvasPLS, CanvasBayes, GlideGrid, Hypothesis, Surface, CMS, Trajectory or QSARModel.

Return code for the external process needs to be zero or else the node will fail.

Note: For the Hypothesis, Glide Grid and Trajectory types, since each cell represents a group of files, the input and output variables (i.e., %input_1%, %output_1%) represent text files that have a file prefix on each line. Therefore, the underlying script will parse these files to access the inputs and generate a text file with a list of prefixes on each line to send the output back into Knime.
For GlideGrid, apart from mentioning the Grid prefix, user can also specify whether to save grid or not by appending "|save_grid" to the grid prefix in each line.

Options

Input columns
Choose the input column (for each port) for the external program
Run command line for each input row
If this is checked, the command line is run for each input row, and for each row, there is one output row. This option is enabled only if all the input tables has same number of rows. Note: for Smiles, String, Double, and Integer output types, the Include Input option cannot be set. This is because there is no clear way to group the output of these types if there is more than one of output rows for each input.
Output Column Structure
Choose the output column structure for each port:
Input plus Output - The input columns are included in the output.
Output replaces Input - The output columns are the same as the input, with the output structures replacing the input column selected.
Output only - Only output columns are included.

Choose the output column type for each port:
Choose the output column type for each port from the available output types. Note: The output file generated by the external program and the output type chosen for a particular port should match.

Specify the output column name:
If the checkbox is ON, user will be allowed to enter the output column name in the textbox otherwise a default column name based on the output column type will be applied.
Command line(s)
The command line(s) specified for the external tool. Note: 'n' in the below variables is the output port numbers: 1, 2 and 3

Environment variables can be specified by prefixing a dollar sign ('$'). Ex: $SCHRODINGER

To specify the input files, use '%input_n%'.
Ex: %input_1% will be replaced by input file for the first input port.

To specify the output files, use '%output_n%'.
Ex: %output_1% will be replaced by output file for the first output port.

To specify the basename of input files, use '%basename_n%'.
Ex: %basename_1% will be replaced by basename of first inport file.

To specify the flow variables, use %flowvar_name% in the command line.
Ex: If command line has "echo %myvar1%" and if there exists a flow variable "myvar1" or "CET|myvar1", then its value will get substituted in cmdLine. All flow variables starting with 'CET|' will be reset after the node gets executed, so that they wont be passed to the subsequent nodes.

To add additional columns, use %output_port|type|colname%
where,
'port' is 1, 2 or 3
'type' is any supported output type for this node
'colname' is the name of the column to be created
Ex: cp someoutfile.mae %output_1|Maestro|MyMaeColumn%, will create a column "MyMaeColumn" at Port-1 with the contents read from someoutfile.mae

Tips
1. For most applications run under job control, the "-WAIT" option should be used to ensure that the node pauses until the command has finished running.
2. Environment variables pointing to paths with spaces should be quoted when accessed in the Command line section, eg "$SCHRODINGER" on Windows, as it is set to "C:\Program Files" by the default

Input Ports

Icon
One column from this input data is used as an argument for the external process
Icon
One column from this input data is used as an argument for the external process
Icon
One column from this input data is used as an argument for the external process

Output Ports

Icon
Output0 data from the external process (can also include the input, if specified)
Icon
Output1 data from the external process (can also include the input, if specified)
Icon
Output2 data from the external process (can also include the input, if specified)

Views

Std output/error of External Tool
Std output/error of External Tool

Workflows

Links

Developers

You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.