ZNova Command Line Options Reference

Command line arguments can control many of the ZNova Parameters.  The command line arguments are used in the ZNova Params field of the Xcalibur Sequence Setup view to specify deconvolution options.  Command line arguments override the settings specified in the ZNova parameter file.   ZNova-ize Sequence will add parameter strings to an Xcalibur Sequence for you automatically. Therefore, there is really no need to know these options for everyday use. However, you may find the command line arguments to be helpful if you want to save time and enter them directly in Xcalibur sample list.  Please note that the command line options are case sensitive. Examples given below are shown in the context of running the ZNova deconvolution from the Xcalibur sample list.

 Specifying a parameter file

Syntax: -P "parameterFile"

Example:  -P “c:\promassxcali\znova\znova.params”

 Specifying an explicit results directory .

Syntax: -D "resultsDirectory"

Example:  -D “c:\Xcalibur\data\my_results”

 Adduct Ion Mass (sets the numeric value of the mass of the adduct ion)

Syntax: -a mass

Example:   -a -1.0079

 Comprehensive Deconvolution Mode, ON  (turns ON comprehensive decon mode)

Syntax: -x

Example:   -x

 Comprehensive Deconvolution Mode, OFF  (turns OFF comprehensive decon mode)

Syntax: -y

Example:   -y

 Peak Width (sets the numeric value for input peak width)

Syntax: -p pw

Example:   -p 5

 Merge Width (sets the numeric value for merge width)

Syntax: -m merge

Example:  -m 0.3 

 Normalize Scores (sets the numeric value for the charge state where score normalization begins, -n 0 turns off score normalization)

Syntax: -n charge

Example: -n 3 

 Minimum Score (sets the numeric value of the minimum score)

Syntax: -s score

Example: -s 3

 First m/z (sets the numeric value for the first m/z in the input data set)

Syntax: -f mz

Example: -f 700

 Last m/z (sets the numeric value for the last m/z in the input data set)

Syntax: -l mz

Example: -l 1500 

 Minimum Mass (sets the numeric value for the minimum deconvoluted mass)

Syntax to explicitly set the minimum deconvoluted mass: -F mass

Example, set min decon mass to 5000: -F 5000

Syntax to set the minimum deconvoluted mass to mass units below the lowest target mass: -F -mass

Example, set min decon mass to 2000 lower than lowest target mass: -F -2000

 Maximum Mass (sets the numeric value for the maximum deconvoluted mass)

Syntax to explicitly set the maximum deconvoluted mass: -L mass

Example, set max decon mass to 30000: -L 30000 

Syntax to set the maximum deconvoluted mass to mass units above the highest target mass: -L +mass   

Example, set max decon mass to 5000 higher than highest target mass: -L +5000

 Smooth Width (sets the numeric value for the smooth width)

Syntax: -w sw

Example: -w 5

 Noise threshold % (sets the numeric value for the %relative intensity noise threshold, setting this option to 0 sets noise thresholding to auto mode)

Syntax: -t thresh

Example: -t 10

 Signal-to-noise threshold (sets the numeric value for automatic S/N thresholding, default = 2)

Syntax: -S thresh

Example: -S 3

 Baseline Factor (sets the numeric value of the baseline removal factor)

Syntax: -b base

Example: -b 1.2 

 Code Block  (allows the user to pass a block of Perl code to the deconvolution program)

Syntax: -c "insert your Perl code here 

Example: -c "$maxMass = 10000 if ( $rt > 9.1 )"

This ability to enter a Code Block is an experimental feature at this point, but it does offer a number of intriguing possibilities.  If you enter a block of code using Perl programming syntax inside a double-quoted string, it will get passed to the ProMass program.  The block of code will be evaluated just after reading in the parameter file and setting of the other command line options.  You can change any parameter which exists in the parameter file, even those that are not represented with command line arguments.  If you open a parameter file in notepad, you can view all of the parameters that you have access to modifying.  These parameters are normally edited with the Build Params graphical user interface.  However, by passing a block of code, you can also do cool things like data-dependency.  Here are a few examples:

(1) Set the graphic sizes to 600 x 400 pixels in the X and Y directions, respectively.  These options are configurable in the parameter file, but this represents another way to do the same thing.  Note how the 2 statements are separated by a semicolon and the how the whole string is enclosed in double quotes.

-c "$xPixels = 600; $yPixels = 400"

(2) This code block will set the maximum deconvolution mass to 10000 if the retention time is greater than 9.1 minutes.  Note the use of $rt, which is the retention time of the spectrum being deconvoluted.  $rt is not a parameter that you can set, but it is exported as a global variable that you can query. 

-c "$maxMass = 10000 if ( $rt > 9.1 )"

(3) There are few parameters that are still experimental that you can set.  For example, what if you were analyzing peptides and you knew that you would never see a charge state greater than 3?  ProMass normally calculates the maximum possible charge based on the input and output mass ranges  Here's a way to set maximum charge, regardless of the mass ranges:

-c "$maxCharge = 3"

(4) Here's another useful example illustrating data dependency.  Let's say you wanted to increase the baseline removal to "1" when the last deconvoluted mass exceeded mass 50000.  Here's how you would do that:

-c "$removeBaseline = 1 if ( $maxMass > 50000 )"

(5) Building on example 3, if you know that all of the components eluting in the early part of a chromatogram are going to be singly-charged, then you could do this:

-c "$maxCharge = 1 if ( $rt < 3 )"

or explicitly, at a certain retention time, note the use of == on the if statement:

-c "$maxCharge = 1 if ( $rt ==  2.15 )"


A list of all parameters as they relate to their corresponding variables in Perl is shown below:

Adduct Ion Mass, Da (-1.0079 or 1.0079): $adduct
Output mass step size, Da (0.1 or 1): $deconStep
Comprehensive deconvolution mode (1 or 0): $exhaustive
Peak Width, m/z units (0 - 99): $peakWidth
Merge Width, m/z units (0 - 99): $merge
Score normlization charge state (0 - 99): $normalizeScores
First m/z, input m/z range (1 - 6000): $firstmz
Last m/z, input m/z range (1 - 6000): $lastmz
First mass, output mass range, Da (1 - 500000): $minMass
Last mass, output mass range, Da (1 - 500000): $maxMass
Smoothing width, data points (5 -99): $smoothWidth
Number of successive smooths (0 - 9): $numSmooths
%relative intensity noise threshold (0 -99): $threshold
Minimum score (0 - 99): $minScore
m/z exlusion list (mz1, mz2, etc): $excludemz
Output centroid decon (1/0): $outputCentroid
Image format for graphics (gif, png, or jpeg): $imageFormat
X-axis graph size in pixels (100 - 2400): $xPixels
Y-axis graph size in pixels (100 - 2400): $yPixels
Output zoom range, Da: $zoomWindow
Directory format (raw, file, date, or explicit): $directoryFormat
Results directory: $resultsDirectory
Allow filtering of input data (1 or 0): $filterData
Delete non-essential files (1 or 0): $deleteFiles
Logo file name: $logo
Baseline removal factor (0 -5): $removeBaseline
Auto S/N threshold (0.5 - 99): $noiseMult
Spectral quality low score indicator (1 - 10): $peakStatus{LowScore}
Spectral quality low intensity indicator (1 - 10000000): $peakStatus{LowIntensity}
Target Mass Type (Avg or Mono): $targetInfo{MassType}
Target Mass Tolerance in % (0 - 1):$targetInfo{MassTolerance}
Minimum Mass Tolerance, Da (0-50):$targetInfo{MinimumTolerance}
Minimum Intensity for Target Masses (0-1e+9):$targetInfo{MinimumIntensity}
% Impurity Threshold (1-99):$targetInfo{ImpurityFlag}
Cumulative Impurities (Yes or No):$targetInfo{TotalPurity}
Show BioSequence (Yes or No):$targetInfo{ShowSequence}
Use Excel Summary (Yes or No):$targetInfo{UseExcelSummary} 
Report When Target Mass Not Found (None, Base Peak, or Closest Mass):$targetInfo{RedStatusMass}
UV Delay, min: (-2 to 2):$detector{UVDelay}
Analog Detector Delay, min (-2 to 2):$detector{ADDelay}
UV Detector Trace Label:$detector{UVLabel}
Analog Detector Trace Label:$detector{ADLabel}
Display Entire Chromatogram (All or Proc):$detector{ChromDisplay}
Auto Processing Intensity Threshold (0-1e+9):$detector{ProcThreshold}
Auto Processing Area% Threshold (0-100):$detector{APThreshold}
Background Subtract Region 1 from RT:$detector{BGRT1}
Background Subtract Region 1 to RT: $detector{BGRT2}
Background Subtract Region 2 from RT: $detector{BGRT3}
Background Subtract Region 2 to RT:$detector{BGRT4}
Show Sample Plate (Yes or No):$samplePlate{Show}
Sample Plate Rows (1-48):$samplePlate{Rows}
Sample Plate Columns (1-48):$samplePlate{Columns}
Sample Plate Direction (Across or Down):$samplePlate{Direction}
Deconvoluted Spectrum Label Mode (Data Points or Components):$peakLabel{Type}
Deconvoluted Spectrum Label Threshold (0-99): $peakLabel{Threshold}
Manual Processing Report Template:$templateFile{Manual}
Auto Processing Report Template:$templateFile{Auto}
Auto Processing Summary Report Template:$templateFile{Summary}
Maximum Charge: $maxCharge

Other command line options not used during Xcalibur sample list processing:

 Specifying a plain text file for input

Syntax: -d "datafile"

  Specifying an ProMass text file for input

Syntax: -X "datafile" 

 Specifying a clipboard spectrum for input

Syntax: -C