-
Notifications
You must be signed in to change notification settings - Fork 152
Added support for library search with Kovats retention index for GC-MS #2412
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Thanks for your pull request. I will take a look at it and try to provide feedback. Are you already using this module / custom mzmine version in your work? |
mzmine-community/src/main/java/io/github/mzmine/datamodel/features/types/numbers/RIType.java
Outdated
Show resolved
Hide resolved
...ne-community/src/main/java/io/github/mzmine/datamodel/features/types/numbers/RIDiffType.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/datamodel/features/types/annotations/RIScaleType.java
Show resolved
Hide resolved
mzmine-community/src/main/java/io/github/mzmine/util/spectraldb/entry/DBEntryField.java
Outdated
Show resolved
Hide resolved
mzmine-community/src/main/java/io/github/mzmine/util/spectraldb/entry/DBEntryField.java
Outdated
Show resolved
Hide resolved
I don't think I can provide you with the scans of the breath samples since that's medical information, but here's the batch file & reference files used to construct the retention index scales. |
...odules/dataprocessing/id_spectral_library_match/AdvancedSpectralLibrarySearchParameters.java
Outdated
Show resolved
Hide resolved
...odules/dataprocessing/id_spectral_library_match/AdvancedSpectralLibrarySearchParameters.java
Outdated
Show resolved
Hide resolved
...io/github/mzmine/modules/dataprocessing/id_spectral_library_match/RowsSpectralMatchTask.java
Outdated
Show resolved
Hide resolved
mzmine-community/src/main/java/io/github/mzmine/util/RIRecord.java
Outdated
Show resolved
Hide resolved
|
|
||
|
|
||
| // This holds information from the RI field in spectral libraries for gas chromatography | ||
| // The RI field is of form "s=RI/CI/n_samples n=RI/CI/n_samples p=RI/CI/n_samples" (CI denotes confidence interval) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this imported from the NIST RI library?
Which file is this specifically?
I know they provide much more information about each individual method so maybe we can load more info and turn this into something like an RILibrary that can help any other compound annotation module to also match RI
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh yeah, this is custom-made. When I export MSP files from NIST, this is all I can get. In MSSearch this is under the field "Experimental RI median (plus-minus) deviation"
| */ | ||
| public class RICalculationParameters extends SimpleParameterSet { | ||
|
|
||
| public static final FeatureListsParameter featureLists = new FeatureListsParameter("Feature lists", 1, Integer.MAX_VALUE); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you can just use the default constructor new FeatureListParameter and get the same behavior
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
...mmunity/src/main/java/io/github/mzmine/modules/dataprocessing/norm_ri/RICalculationTask.java
Outdated
Show resolved
Hide resolved
| * tolerance given in constructor) are in minutes in methods such as getToleranceRange or | ||
| * checkWithinTolerance | ||
| */ | ||
| public class RITolerance { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix the javadoc I changed the text
|
Hi @wchu207 sorry for the delay. We had some big features in the pipeline. I think the PR can be merged after these two items:
You can find examples in the documentation: |
Simplify RIRecord and style, header, type adjustments
|
I've accepted the pull request. Somehow this has broken RIMaxType, RIMinType, RIDiffType. I suspect that the way GCAlignerModule evaluates row bindings is involved somehow, so I'll look into that. I'll work on the documentation after I fix that, hopefully tomorrow. |
|
I've identified the bug. RICalculationModule was modified to add the summary row types via I don't have an elegant fix for this. Using the summary types as feature types would be redundant and clutter things. Modifying GCAlignerModule to add the bindings would lead to the same bindings being added once per pre-existing list. We can't check if the bindings are already present since they're objects unique to each pre-existing list. One compromise would be to check if the type has been added, and if not, always add the listeners for that type, but that would mean always adding listeners and presumably there's a reason we don't do that in |
|
Oh you are right. My fault. For now you can just add them as feature types again and this will resolve it. They are only added if the user requests that so no big issue |
|
Oh I just checked in and saw you requested changes wrt a javadoc. Fixed. Also, I noticed you changed the method for selecting the scale in RICalculationTask to a search for the nearest one. The previous method's purpose wasn't obvious -- it would sort the list to newest-first, then find the first scale that was made before the sample was taken; i.e. find the nearest scale in the past. We designed it this way because sometimes the column would degrade to the point of needing to be replaced, after which we would take new measurements for the straight-chain alkanes. This creates scales that are only applicable for runs that occur after the column was changed. Do you mind if I revert that change? Or maybe include an option to switch between these modes? The latter option would also let me put in a description of this, which should help with clarity |
|
We just pushed a new release and I am about to merge your PR into mzmine and this will generate a dev release. But you are right it makes sense to always use the previous and only in this special case just use the closest ladder. |
3 main parts to this: