From: Matthew C. <mat...@va...> - 2008-08-27 19:16:53
|
OK, that's a great solution. We can add a comment in the code referencing the text file (like there is in cv.hpp). Darren, how hard would it be to add support for isotope labelling? We'll also need direct access to atomic particle masses (proton/neutron/electron) because that's more accurate than using the mass of hydrogen (e.g. for converting from m/z to charged/neutral mass and vice versa). That doesn't seem to present in isotopes.txt, but those values at least are widely standardized. :D I think I'll abandon AminoAcidMassMap in favor of adding and optimizing mass mapping functionality (including support for PTMs) in the existing Peptide code. I thought more about Jimmy's comment about using additional unique symbols to represent modified amino acids (e.g. 0-9), and I realized that approach doesn't scale for multiple mods on a single residue. I can conceive of a workaround for that (by appending the unique mod chars after the modified residue instead of replacing the modified residue), but that would require custom parsing and I don't think it's likely to be any faster than passing around a Peptide class with enumerated metadata (e.g. a map<int, vector<Modification> > to map one or modifications to sequence indexes). Also, the chemical formula code makes it easy to specify mods as chemical formulas (adduct and deduct, or if we add the capability of Formula to support negative values, just a single difference formula) instead of masses. -Matt Darren Kessner wrote: > Regarding #2 -- I took another look at the code base and I had > actually checked in the original NIST data file as isotopes.txt, with > a URL at the top of the file. There is also code to parse the file > and generate the ChemistryData code in parse_isotopes.cpp. > > Darren > > > On Aug 26, 2008, at 10:11 AM, Darren Kessner wrote: > > >> 1) The amino acid formulas are what you typically see in reference >> material, and they include the full amine and carboxyl groups. When >> the peptide bond is formed, a single water molecule is lost. I don't >> like the idea of storing redundant information, and it seemed more >> natural to store the full formula rather than the residue formula. >> You could add a function to return the residue formula -- if you do >> this, just make sure to add back one water molecule when you are >> summing to get peptide molecular weights. >> >> 2) This should absolutely be cited -- I believe I got it from a NIST >> publication. I will track it down and check it in. >> >> 3) I'd like to know more about why there are differences in the >> calculators before we decide on this... >> >> >> Darren >> >> >> >> On Aug 26, 2008, at 7:44 AM, Matthew Chambers wrote: >> >> >>> Hi Darren, >>> >>> I'm implementing AminoAcidMassMap to allow client code easy and >>> optimized access to amino acid masses. It will also support >>> representations for peptide termini, AA modifications (static and >>> dynamic), and terminal modifications. I'm planning to use the >>> existing AminoAcid and Chemistry code but I have a few questions: >>> >>> 1) Why is water added to the amino acids by themselves? It seems >>> awkward to subtract all the waters after adding up the masses to get >>> the mass of a sequence of residues. >>> 2) Where do the values for the atomic weights and isotope abundances >>> come from? That should be cited in the code. >>> 3) I'm having trouble unit testing this because of slight >>> differences in the peptide calculators I'm using to cross-validate >>> with. Over a whole peptide, the differences are significant, >>> especially for average mass calculations. Any ideas how we should >>> handle this? >>> >>> -Matt >>> >> IMPORTANT WARNING: This message is intended for the use of the >> person or entity to which it is addressed and may contain >> information that is privileged and confidential, the disclosure of >> which is governed by >> applicable law. If the reader of this message is not the intended >> recipient, or the employee or agent responsible for delivering it to >> the intended recipient, you are hereby notified that any >> dissemination, distribution or copying of this information is >> STRICTLY PROHIBITED. >> >> If you have received this message in error, please notify us >> immediately >> by calling (310) 423-6428 and destroy the related message. Thank >> You for your cooperation. >> >> ------------------------------------------------------------------------- >> This SF.Net email is sponsored by the Moblin Your Move Developer's >> challenge >> Build the coolest Linux based applications with Moblin SDK & win >> great prizes >> Grand prize is a trip for two to an Open Source event anywhere in >> the world >> http://moblin-contest.org/redirect.php?banner_id=100&url=/ >> _______________________________________________ >> proteowizard-developer mailing list >> pro...@li... >> https://lists.sourceforge.net/lists/listinfo/proteowizard-developer >> > > IMPORTANT WARNING: This message is intended for the use of the person or entity to which it is addressed and may contain information that is privileged and confidential, the disclosure of which is governed by > applicable law. If the reader of this message is not the intended recipient, or the employee or agent responsible for delivering it to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this information is STRICTLY PROHIBITED. > > If you have received this message in error, please notify us immediately > by calling (310) 423-6428 and destroy the related message. Thank You for your cooperation. > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > proteowizard-developer mailing list > pro...@li... > https://lists.sourceforge.net/lists/listinfo/proteowizard-developer > |