-
Notifications
You must be signed in to change notification settings - Fork 9
Running PIA via the command line
This description assumes you are used to call Java application via the command line and have knowledge about the classpath of your Java VM.
To run PIA, some dependencies are needed. Please make sure, you have these in your classpath. If you downloaded a binary package of PIA, the dependencies are included as JARs.
For the following methods to call PIA, make sure to allow a big enough amount of memory with the Java argument -Xmx, e.g.
java -Xmx6G -jar pia.jar ...
The basic operations via the command line are the compilation of search engine results into PIA-XML files and the analysis of a compilation using a prior defined analysis pipeline.
The compilation is used to speed-up all following analyses by structuring and sorting the data. This step is needed only once per set of search engine results.
To run a compilation, call the PIACompiler with the mandatory parameters for infile and outfile.
java -cp pia.jar de.mpc.pia.intermediate.compiler.PIACompiler -infile /path/to/searchengine/result [-infile /path/to/searchengine/result2...] -name "name of compilation" -outfile /path/to/compilation.pia.xml
path to the created PIA XML file
name of the PIA compilation, used internally only
Path to the input file. This can be called multiple times to compile more than one file into the PIA-XML.
To tell PIA explicitly to parse a given file in a specific format, you can give the format after the path seperated by a semicolon (";"). Possible parsing formats are idxml (OpenMS idXML), mascot (Mascot DAT file), mzid (MzIdentML), tandem (X!Tandem result XML) and thermo (Thermo's MSF file, i.e. ProteomeDiscoverer result file).
The command line allows you to execute almost every supported analysis via prior defined pipeline. These pipelines are saved in a parameterfile XML and allows a fast, scripted way to run the same operations on different files. Additionally to the infile (the PIA XML), the parameter file must be given. To see any results, these must be exported on one or more of either the PSM, peptide or protein level. The following example exports on the PSM level into mzTab-format.
java -jar pia.jar -infile /path/to/compilation.pia.xml -paramFile /path/to/pia_pipeline.xml -psmExport /path/to/export-psms.mzTab mzTab
Calling the pia.jar automatically uses the class "de.mpc.pia.modeller.PIAModeller", which could additionally be stated by Java's cp argument.
Have a look here to see a list of all available command line parameters.