Koen van der Drift
kvddrift at earthlink.net
Tue Aug 24 20:05:34 EDT 2004
On Aug 23, 2004, at 5:51 PM, John Timmer wrote:
> Okay, I'm about to commit a major update to BCSequence that eliminates
> sequence string and reworks some of the related methods and
> initializers. I
> also took the time to reorganize the methods a bit to make navigating
> file a bit easier.
A few comments.
You put this in the header for the molecularWeight method:
@method - (float) molecularWeight
@abstract returns the predicted molecular weight of the sequence
@discussion calculates the predicted molecular mass of the
sequence, based on
* average isotope use. Subclasses calculate based on the loss of
atoms (ie -
* H20 in peptide bond formation) and use averages for symbols that
* than 1 individual symbol.
It's better if we make the method as follows:
- (float) molecularWeight (int) mode
where in mode we pass a enumerated constant monoisotopic or average.
You cannot predict in advance if a client needs the monoisotopic or
Also we should always add water for any sequence (only one
watermolecule is necessary for a whole sequence), so we might as well
put it in the same method instead of delegating it to the subclasses.
The masses in the plist are actually residue masses, so without H2O. I
will make these changes tonight.
You added the method length, but there is alreasy a method
numberOfSymbols. However, because the naming of the first one is more
logical, I will remove the numberOfSymbols method as well.
I'll wait for some input before I commit my changes.
Otherwise, a great improvement! I started with a BCSequenceProtein
class, but see that most of the sequence manipulation is already in
BCSequence. Not sure right now what else should go in that class. As
Alex already suggested, additional functionality (pI calculations,
digests, etc) should be in helper classes, such as BCProteinTools.
More information about the Biococoa-dev