by Brian | 1st July 2009
Created a visualizer for MSMS data. My next step is to pair that with a visualization of where fragment lines *should* appear given the known amino acid sequence. Here’s the output for CheZ_MS_1_Combo.pkl UPDATE: I added code to include demarcation of amino acid boundaries of the correct amino acid sequence (as determined by GFS and [...] Read More
by Brian | 1st July 2009
Amino Acid Three-Letter Abbreviation One-Letter Symbol Molecular Weight Alanine Ala A 89Da Arginine Arg R 174Da Asparagine Asn N 132Da Aspartic Acid Asp D 133Da Asparagine or aspartic acid Asx B 133Da Cysteine Cys C 121Da Glutamine Gln Q 146Da Glutamic acid Glu E 147Da Glutamine or glutamic acid Glx Z 147Da Glycine Gly G [...] Read More
by Brian | 30th June 2009
The above is, generally, what a run of GFS looks like. The tail end is typically longer as Shark often stops before program execution terminates naturally. The tail corresponds to HMM_Score, unless -seqtagscore is enabled, in which case it’s a lot of findLongestCommonSubstring. Zoom in a bit: Read More
by Brian | 30th June 2009
The basic process of GFS includes 4 major steps: Digest the genome into trypsin cleaved peptides Create sequence tags from our MS/MS data Reduce the list of genome peptides based on masses Analyze the peptide list and sequence tags with HMM_Score For next week: have some performance data to show where the program is taking [...] Read More
by Brian | 30th June 2009
Going to compare the Shark outputs for the different code forks. Though they are performing similarly, I’m curious to see where the new performance draws exist. Read More
by Brian | 29th June 2009
compareInternalFrags has been refactored to store a matrix of internal fragment weights rather than recomputing them multiple times for a given comparison mass. Unfortunately (and disapointingly) it looks like there are not a lot of (if any) performance gains (2m17s vs 2m22s). It still doesn’t touch when -seqtagscore is enabled (2m17s vs 1m46s). Possible future [...] Read More
by Brian | 29th June 2009
The memory leaks I had introduced have been resolved. I also have resolved some that had existed before in -(float) maximumScore:(NSString *)acidSequence forSpectrum:(Spectrum *)currSpectrum see the end of that method. Read More
by Brian | 29th June 2009
This site is beneficial. Read More
by Brian | 29th June 2009
Would love to be able to compare two different xcode projects…. UPDATE: You have to access it from the command line, but you’ll be using OpenDiff. COMMENT: Why, for Pete’s sake, is this a command line tool? It’s a program with a GUI. Were they too lazy to program a GUI interface for the start [...] Read More
by Brian | 29th June 2009
Last night it seemed like the code I was working on had developed a memory leak…. checking onto that. Read More
by Brian | 28th June 2009
It’s just such a nice, round number (and that’s not including the 88 warnings!). Read More
by Brian | 26th June 2009
compareInternalFrags calculates the masses of all possible internal fragments given a sequence. This should not happen inside of compareInternalFrags but rather outside and be passed to compareInternalFrags so that this calculation is not done over and over unnecessarily. This is in HMMScoreClass. compareInternalFrags is called by getIonTypes. getIonTypes is called once in the two different [...] Read More
by Brian | 26th June 2009
In matchTagsFiltered I noticed this comment “if the tag did not match then check for the Bion tag”. Thing is, there was no if clause governing this. It was going ahead and checking for the B ion all the time. I don’t know if this is desired or not, but I added code to make [...] Read More
by Brian | 26th June 2009
Regarding Wednesday’s post, I am finding it difficult to believe that an int array is outperforming a char array in some cases. Especially when the code for the int array requires a few extra lines. Am beginning today with a quick sanity check–am cleaning the target with the char array code and running the test [...] Read More
by Brian | 25th June 2009
Google’s syntaxhilighter. I’m using a WordPress plugin. //Match to forward string char queryAcid; for (i=0; i<queryLen; i++) { queryAcid = acidArrayAsInts[i]; //if the maxLen is already bigger than/equal to from i to the end of the querry string, then we can //safely exit and save a lot of processor time. if (maxLen >= queryLen - [...] Read More
by Brian | 25th June 2009
A common trick in image matching (e.g. face recognition, character recognition, etc.) is when comparing two images to first scale them to the same dimensions in pixels. My thought is that this technique could be used to estimate similarity between two sequences of amino acids. Yesterday I put up a post about a possible ordering [...] Read More
by Brian | 24th June 2009
If we *had* to order the amino acids by similarity along one dimension, how would we do it? I’ve come up with a starting point that looks… at least like a good starting point. Using the RNA codon table I used the second nucleotide as most significant, the first nucleotide after that and the least [...] Read More
by Brian | 24th June 2009
some fails on overall conversion to char… am trying a more scaled back approach where just charToIntRepresentation returns a char array. With 4 tandem spectra on E. coli (Escherichia_coli_K-12_MG1655.fasta) the improvement was 3.7% (1m51s to 1m47s). Not much. With 68 tandem spectra on E. Coli there was, surprisingly, negative improvement ( 19m41s (1181s) to 19m55s [...] Read More
by Brian | 23rd June 2009
am getting runtime errors… am probably using free() where I should not be so am commenting the free(acidSequence) that I find. Bug: GFS(1946,0xb0196000) malloc: *** error for object 0xb01959da: Non-aligned pointer being freed *** set a breakpoint in malloc_error_break to debug Read More
by Brian | 23rd June 2009
converting translateTransExonFragmentStruct to return a char array UPDATE: done. Read More