Ejemplo n.º 1
0
        private static double GetDeltaMass(Modification2 mod, string sequence, bool isNterm, bool isCterm)
        {
            ModificationPosition pos = mod.Position;
            double deltaMass         = 0;

            for (int i = 0; i < mod.AaCount; i++)
            {
                for (int j = 0; j < sequence.Length; j++)
                {
                    if ((pos == ModificationPosition.notNterm || pos == ModificationPosition.notTerm) && j == 0)
                    {
                        continue;
                    }
                    if ((pos == ModificationPosition.notCterm || pos == ModificationPosition.notTerm) && j == sequence.Length - 1)
                    {
                        continue;
                    }
                    if (sequence[j] == mod.GetAaAt(i))
                    {
                        deltaMass += mod.DeltaMass;
                    }
                }
            }
            if (pos == ModificationPosition.anyNterm)
            {
                deltaMass += mod.DeltaMass;
            }
            if (pos == ModificationPosition.anyCterm)
            {
                deltaMass += mod.DeltaMass;
            }
            if (pos == ModificationPosition.proteinNterm && isNterm)
            {
                deltaMass += mod.DeltaMass;
            }
            if (pos == ModificationPosition.proteinCterm && isCterm)
            {
                deltaMass += mod.DeltaMass;
            }
            return(deltaMass);
        }
Ejemplo n.º 2
0
 public void SetPosition(ModificationPosition pos)
 {
     position = pos;
 }
Ejemplo n.º 3
0
 private void Fill(Modification m)
 {
     DeltaMass = m.DeltaMass;
     Position = m.Position;
     IsProteinTerminal = m.IsProteinTerminal;
     IsInternal = m.IsInternal;
     IsNterminal = m.IsNterminal;
     IsCterminal = m.IsCterminal;
     IsIsotopicLabel = m.IsIsotopicLabel;
     IsIsotopicMod = m.IsIsotopicMod;
     ModificationType = m.ModificationType;
     HasNeutralLoss = m.HasNeutralLoss;
     aas = new char[m.AaCount];
     for (int i = 0; i < aas.Length; i++){
         aas[i] = m.GetAaAt(i);
     }
     Index = m.Index;
     Name = m.Name;
 }