compomics / coss Goto Github PK
View Code? Open in Web Editor NEWCOSS: CompOmics Spectral Searching
COSS: CompOmics Spectral Searching
When using mgf as input the TITLE tag should not be included when exporting the results.
In other words, mgf spectrum titles such as:
TITLE=qExactive01819.5779.5779.3 File:"qExactive01819.raw", NativeID:"controllerType=0 controllerNumber=1 scan=5779"
ought to show up in the Title column in the exports as:
qExactive01819.5779.5779.3 File:"qExactive01819.raw", NativeID:"controllerType=0 controllerNumber=1 scan=5779"
Hi, I downloaded the COSS-1.0.jar through the link included in README.md. It throws an error when running
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/path/to/COSS/COSS-1.0/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/path/to/COSS/COSS-1.0/lib/logback-classic-1.1.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
2020-05-11 10:12:04 INFO MainFrameController:119 - null java.util.NoSuchElementException: 'max.charge' doesn't map to an existing object
It seems to be related to the missing of max.charge in config.properties file.
Would it be possible to include more than just the best match when exporting the results? Preferably by adding an additional column with the rank of each match per spectrum?
It would also be nice to be able to include the decoy hits in the exports?
When generating decoy spectra the peptide sequence and modification locations are not updated. Thus the spectrum returned by com.compomics.coss.controller.decoyGeneration.GetDecoySpectrum will have the same peptide sequence and modifications as the target spectrum, which makes it impossible to separate the two in downstream post-processing.
Hi,
I am trying to run COSS with a pretty large library (3.5M Peptides, where 1/3 are decoys).
When using a .msp file with a very small set it runs just normal. However, the above large set throws an error when trying to initialize some index list. Below is the error:
Starting COSS-V2
Rescoring with Percolator is set on by default in this version
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Users/LeIssar/Desktop/Software/COSS-2.0/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Users/LeIssar/Desktop/Software/COSS-2.0/lib/logback-classic-1.1.6.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
2022-06-19 19:56:25 INFO MainConsoleController:213 - Configuring Spectrum Reader ....
Jun 19, 2022 7:57:13 PM com.compomics.coss.controller.ConfigSpecReaders dispatcher
SEVERE: null
java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Requested array size exceeds VM limit
at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
at com.compomics.coss.controller.ConfigSpecReaders.dispatcher(ConfigSpecReaders.java:171)
at com.compomics.coss.controller.ConfigSpecReaders.startConfig(ConfigSpecReaders.java:78)
at com.compomics.coss.controller.MainConsoleController.configReader(MainConsoleController.java:215)
at com.compomics.coss.controller.MainConsoleController.startRunning(MainConsoleController.java:108)
at com.compomics.main.ProjectMain.launch(ProjectMain.java:91)
at com.compomics.main.ProjectMain.access$000(ProjectMain.java:16)
at com.compomics.main.ProjectMain$1.run(ProjectMain.java:71)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.OutOfMemoryError: Requested array size exceeds VM limit
at java.base/java.util.Arrays.copyOf(Arrays.java:3537)
at java.base/java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:229)
at java.base/java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:789)
at java.base/java.lang.StringBuilder.append(StringBuilder.java:246)
at com.compomics.ms2io.controller.BufferedRAF.getNextLine(BufferedRAF.java:141)
at com.compomics.ms2io.controller.BufferedRAF.getNextLine(BufferedRAF.java:98)
at com.compomics.ms2io.controller.Indexer.mspIndexer(Indexer.java:174)
at com.compomics.ms2io.controller.Indexer.generate(Indexer.java:71)
at com.compomics.coss.controller.ConfigSpecReaders$GetIndexList.call(ConfigSpecReaders.java:330)
at com.compomics.coss.controller.ConfigSpecReaders$GetIndexList.call(ConfigSpecReaders.java:309)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
I tried to increase the heap size of the JVM but it doesn't seem to solve the problem.
Any suggestions?
Some env context:
I am running the search on a VM running Windows 10 with 64Gb of RAM. That is 3 times the size of your VM reported on the original paper. Also, I am running the software using the following command: java -jar COSS-2.0.jar
Your input is much appreciated.
Regards,
AI
Hi, We are in the process of annotating tools in e.g. bio.tools. Do you have a license which we could add to COSS?
Hi,
Are you planning to allow the use of mzID/MGF combination or Bibliospec libraries from skyline?
Hi, I'm running COSS-2.0.jar the GUI version.
I run by following process:
When I run with small library spectrum data it works just fine, however it is too slow that the status on the process bar doesn't even move with larger libraries during the searching process. I'm hoping to use a spectral library that contains about 380,000 spectrum. Is this possible?
Hi again,
using macOS no output file can be written using either the GUI or CLI. With Windows 10 everything works fine.
In the CLI error output I have noticed that '' instead of '/' was used for the output file path, which is probably the problem.
Cheers and thanks,
Johannes
When I run COSS 2.0 downloaded from here like so:
java -jar COSS-2.0.jar target.mgf library.msp 1 10.0 0.05 -nP
I get:
Starting COSS-V2
Rescoring with Percolator is set on by default in this version
At least two prameters has to be provided: Target spectrum and Library file
max. number of argument is five
This suggests commit c76b3ee isn't included in the jar.
In all of the exports the Mods tags from msp files are often changed compared to the original lines in the msp file.
For example, in the human msp file from PRIDE one can find the following:
Name: ILCEQCMTSNQK/2
MW: 1611.6440341796874
Comment: Spec=Consensus Mods=3/2,C,89.011293/5,C,89.011293/6,M,37.006603 [...]
However, in the results export from COSS the information in this specific Mods tag is changed into:
3/2,C,/5,C,/6,M,
In other words, skipping the mass shift of the modification. Which makes it impossible to figure out what the original modifications were.
Hi there,
I have been trying out COSS using a self written .mgf as a library input file. Since the 'Sequence' column in the output file is always empty is was wondering from which parameter in the .mgf the Sequence is actually extracted. So far I have tested the 'SEQ' and 'TITLE' parameter. Thanks a lot in advance.
Cheers,
Johannes
Would it be possible to add an additional column to the exports that contains the name of the spectrum file used as input? This would make it easier to link back to the spectrum file when parsing the output.
A delimiter is missing in the text export, resulting in the output containing output such as:
ILCEQCMTSNQK806.834444901547.
Should be fixed by changing fileOut.write(mSpec.get(s).getSequence());
into fileOut.write(mSpec.get(s).getSequence() + delim);
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.