コード例 #1
0
        public void MassTest()
        {
            // Using simple 100% abundances
            var provider = new MockElementProvider();

            provider.OverwriteElement(new Element(1, "H", new[]
            {
                new Isotope(1, 0, 1.0)
            }));
            provider.OverwriteElement(new Element(8, "O", new[]
            {
                new Isotope(16, 8, 1.0)
            }));

            var formula  = ChemicalFormula.Water(provider);
            var elements = formula.GetElements();

            Assert.AreEqual(18, formula.GetMass(MassType.Monoisotopic));
            Assert.AreEqual(18, formula.GetMass(MassType.Average));

            // Switch to 75/25
            provider.OverwriteElement(new Element(8, "O", new[]
            {
                new Isotope(16, 8, 0.75),
                new Isotope(17, 9, 0.25)
            }));

            formula  = ChemicalFormula.Water(provider);
            elements = formula.GetElements();

            Assert.AreEqual(18, formula.GetMass(MassType.Monoisotopic));
            Assert.AreEqual(18.25, formula.GetMass(MassType.Average));
        }