コード例 #1
0
        public void TestNewPDBAtom_IElement()
        {
            IChemObjectBuilder builder = RootObject.Builder;
            IPDBAtom           atom    = builder.NewPDBAtom(ChemicalElement.R);

            Assert.IsNotNull(atom);
        }
コード例 #2
0
ファイル: PDBPolymerTest.tt.cs プロジェクト: roddickchen/NCDK
        public void TestGetMonomerNamesInSequentialOrder()
        {
            PDBPolymer pdbPolymer = new PDBPolymer();

            Assert.AreEqual(0, pdbPolymer.GetMonomerNames().Count());

            IStrand oStrand1 = pdbPolymer.Builder.NewStrand();

            oStrand1.StrandName = "A";
            IMonomer oMono1 = pdbPolymer.Builder.NewMonomer();

            oMono1.MonomerName = "TRP279";
            IMonomer oMono2 = pdbPolymer.Builder.NewMonomer();

            oMono2.MonomerName = "CYS280";
            IPDBAtom oPDBAtom2 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom3 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.AddAtom(oPDBAtom2, oMono1, oStrand1);
            pdbPolymer.AddAtom(oPDBAtom3, oMono2, oStrand1);
            Assert.IsNotNull(pdbPolymer.Atoms[0]);
            Assert.IsNotNull(pdbPolymer.Atoms[1]);
            Assert.AreEqual(oPDBAtom2, pdbPolymer.Atoms[0]);
            Assert.AreEqual(oPDBAtom3, pdbPolymer.Atoms[1]);

            var monomers = pdbPolymer.GetMonomerNamesInSequentialOrder().GetEnumerator();

            monomers.MoveNext();
            Assert.AreEqual("TRP279", monomers.Current);
            monomers.MoveNext();
            Assert.AreEqual("CYS280", monomers.Current);
        }
コード例 #3
0
        public override void TestGetMonomerCount()
        {
            IPDBPolymer pdbPolymer = (IPDBPolymer)NewChemObject();

            Assert.AreEqual(0, pdbPolymer.GetMonomerMap().Count());

            IStrand oStrand1 = pdbPolymer.Builder.NewStrand();

            oStrand1.StrandName = "A";
            IStrand oStrand2 = pdbPolymer.Builder.NewStrand();

            oStrand2.StrandName = "B";
            IMonomer oMono1 = pdbPolymer.Builder.NewMonomer();

            oMono1.MonomerName = "TRP279";
            IMonomer oMono2 = pdbPolymer.Builder.NewMonomer();

            oMono2.MonomerName = "HOH";
            IPDBAtom oPDBAtom1 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom2 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom3 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.Add(oPDBAtom1);
            pdbPolymer.AddAtom(oPDBAtom2, oMono1, oStrand1);
            pdbPolymer.AddAtom(oPDBAtom3, oMono2, oStrand2);
            Assert.IsNotNull(pdbPolymer.Atoms[0]);
            Assert.IsNotNull(pdbPolymer.Atoms[1]);
            Assert.IsNotNull(pdbPolymer.Atoms[2]);
            Assert.AreEqual(oPDBAtom1, pdbPolymer.Atoms[0]);
            Assert.AreEqual(oPDBAtom2, pdbPolymer.Atoms[1]);
            Assert.AreEqual(oPDBAtom3, pdbPolymer.Atoms[2]);

            Assert.AreEqual(2, pdbPolymer.GetMonomerMap().Count());
        }
コード例 #4
0
        public override void TestGetStrands()
        {
            IPDBPolymer pdbPolymer = (IPDBPolymer)NewChemObject();
            IStrand     oStrand1   = pdbPolymer.Builder.NewStrand();
            IStrand     oStrand2   = pdbPolymer.Builder.NewStrand();

            oStrand1.StrandName = "A";
            oStrand2.StrandName = "B";
            IMonomer oMono1 = pdbPolymer.Builder.NewMonomer();

            oMono1.MonomerName = "TRP279";
            IMonomer oMono2 = pdbPolymer.Builder.NewMonomer();

            oMono2.MonomerName = "GLY123";
            IPDBAtom oPDBAtom1 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom2 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.AddAtom(oPDBAtom1, oMono1, oStrand1);
            pdbPolymer.AddAtom(oPDBAtom2, oMono2, oStrand2);
            IDictionary <string, IStrand> strands = new Dictionary <string, IStrand>
            {
                { "A", oStrand1 },
                { "B", oStrand2 }
            };

            Assert.IsTrue(Compares.AreDeepEqual(strands, pdbPolymer.GetStrandMap()));
        }
コード例 #5
0
        public void TestNewPDBAtom_String_Point3d()
        {
            IChemObjectBuilder builder = RootObject.Builder;
            IPDBAtom           atom    = builder.NewPDBAtom("C", new Vector3(1, 2, 3));

            Assert.IsNotNull(atom);
        }
コード例 #6
0
        public override void TestDefaultChargeValue()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            Assert.AreEqual(0.00, atom.Charge.Value, 0.00000001);
        }
コード例 #7
0
        public void TestNewPDBAtom_String()
        {
            IChemObjectBuilder builder = RootObject.Builder;
            IPDBAtom           atom    = builder.NewPDBAtom("O");

            Assert.IsNotNull(atom);
        }
コード例 #8
0
        public override void TestGetMonomer_String_String()
        {
            IPDBPolymer pdbPolymer = (IPDBPolymer)NewChemObject();

            IStrand oStrand1 = pdbPolymer.Builder.NewStrand();

            oStrand1.StrandName = "A";
            IStrand oStrand2 = pdbPolymer.Builder.NewStrand();

            oStrand2.StrandName = "B";
            IMonomer oMono1 = pdbPolymer.Builder.NewMonomer();

            oMono1.MonomerName = "TRP279";
            IMonomer oMono2 = pdbPolymer.Builder.NewMonomer();

            oMono2.MonomerName = "HOH";
            IPDBAtom oPDBAtom1 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom2 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom3 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.AddAtom(oPDBAtom1, oMono1, oStrand1);
            pdbPolymer.AddAtom(oPDBAtom2, oMono1, oStrand1);
            pdbPolymer.AddAtom(oPDBAtom3, oMono2, oStrand2);

            Assert.AreEqual(oMono1, pdbPolymer.GetMonomer("TRP279", "A"));
            Assert.AreEqual(oMono2, pdbPolymer.GetMonomer("HOH", "B"));
        }
コード例 #9
0
ファイル: PDBPolymerTest.tt.cs プロジェクト: roddickchen/NCDK
        public void TestPDBPolymer()
        {
            IPDBPolymer pdbPolymer = new PDBPolymer();

            Assert.IsNotNull(pdbPolymer);
            Assert.AreEqual(pdbPolymer.GetMonomerMap().Count(), 0);

            IStrand oStrand1 = pdbPolymer.Builder.NewStrand();

            oStrand1.StrandName = "A";
            IStrand oStrand2 = pdbPolymer.Builder.NewStrand();

            oStrand2.StrandName = "B";
            IMonomer oMono1 = pdbPolymer.Builder.NewMonomer();

            oMono1.MonomerName = "TRP279";
            IMonomer oMono2 = pdbPolymer.Builder.NewMonomer();

            oMono2.MonomerName = "HOH";
            IMonomer oMono3 = pdbPolymer.Builder.NewMonomer();

            oMono3.MonomerName = "GLYA16";
            IPDBAtom oPDBAtom1 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom2 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom3 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom4 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom5 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.Atoms.Add(oPDBAtom1);
            pdbPolymer.AddAtom(oPDBAtom2, oStrand1);
            pdbPolymer.AddAtom(oPDBAtom3, oMono1, oStrand1);
            pdbPolymer.AddAtom(oPDBAtom4, oMono2, oStrand2);
            pdbPolymer.AddAtom(oPDBAtom5, oMono3, oStrand2);
            Assert.IsNotNull(pdbPolymer.Atoms[0]);
            Assert.IsNotNull(pdbPolymer.Atoms[1]);
            Assert.IsNotNull(pdbPolymer.Atoms[2]);
            Assert.IsNotNull(pdbPolymer.Atoms[3]);
            Assert.IsNotNull(pdbPolymer.Atoms[4]);
            Assert.AreEqual(oPDBAtom1, pdbPolymer.Atoms[0]);
            Assert.AreEqual(oPDBAtom2, pdbPolymer.Atoms[1]);
            Assert.AreEqual(oPDBAtom3, pdbPolymer.Atoms[2]);
            Assert.AreEqual(oPDBAtom4, pdbPolymer.Atoms[3]);
            Assert.AreEqual(oPDBAtom5, pdbPolymer.Atoms[4]);

            Assert.IsNull(pdbPolymer.GetMonomer("0815", "A"));
            Assert.IsNull(pdbPolymer.GetMonomer("0815", "B"));
            Assert.IsNull(pdbPolymer.GetMonomer("0815", ""));
            Assert.IsNull(pdbPolymer.GetStrand(""));
            Assert.IsNotNull(pdbPolymer.GetMonomer("TRP279", "A"));
            Assert.AreEqual(oMono1, pdbPolymer.GetMonomer("TRP279", "A"));
            Assert.AreEqual(pdbPolymer.GetMonomer("TRP279", "A").Atoms.Count, 1);
            Assert.IsNotNull(pdbPolymer.GetMonomer("HOH", "B"));
            Assert.AreEqual(oMono2, pdbPolymer.GetMonomer("HOH", "B"));
            Assert.AreEqual(pdbPolymer.GetMonomer("HOH", "B").Atoms.Count, 1);
            Assert.AreEqual(pdbPolymer.GetStrand("B").Atoms.Count, 2);
            Assert.AreEqual(pdbPolymer.GetStrand("B").GetMonomerMap().Count(), 2);
            Assert.IsNull(pdbPolymer.GetStrand("C"));
            Assert.IsNotNull(pdbPolymer.GetStrand("B"));
        }
コード例 #10
0
 /// <summary>
 /// Adds the atom oAtom to a specified Monomer. Additionally, it keeps
 /// record of the iCode.
 /// </summary>
 /// <param name="oAtom">The IPDBAtom to add</param>
 /// <param name="oMonomer">The monomer the atom belongs to</param>
 public void AddAtom(IPDBAtom oAtom, IMonomer oMonomer)
 {
     base.AddAtom(oAtom, oMonomer);
     if (!sequentialListOfMonomers.Contains(oMonomer.MonomerName))
     {
         sequentialListOfMonomers.Add(oMonomer.MonomerName);
     }
 }
コード例 #11
0
        public virtual void TestGetTempFactor()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol     = "C";
            atom.TempFactor = 0.0;
            Assert.AreEqual(atom.TempFactor.Value, 0.0, 001);
        }
コード例 #12
0
        public virtual void TestGetOccupancy()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol    = "C";
            atom.Occupancy = 1.0;
            Assert.AreEqual(atom.Occupancy.Value, 1.0, 0.01);
        }
コード例 #13
0
        public virtual void TestGetOxt()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            atom.Oxt    = true;
            Assert.IsTrue(atom.Oxt);
        }
コード例 #14
0
        public virtual void TestGetAltLoc()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            atom.AltLoc = "123";
            Assert.AreEqual("123", atom.AltLoc);
        }
コード例 #15
0
        public virtual void TestGetSerial()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            atom.Serial = 123;
            Assert.AreEqual(123, atom.Serial.Value);
        }
コード例 #16
0
        public virtual void TestGetResName()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol  = "C";
            atom.ResName = "PHE";
            Assert.AreEqual("PHE", atom.ResName);
        }
コード例 #17
0
        public virtual void TestGetChainID()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol  = "C";
            atom.ChainID = "123";
            Assert.AreEqual("123", atom.ChainID);
        }
コード例 #18
0
        public virtual void TestGetName()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            atom.Name   = "123";
            Assert.AreEqual("123", atom.Name);
        }
コード例 #19
0
        public virtual void TestGetRecord()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            atom.Record = "ATOM 1635 N PHE 105 -3.504 9.019 -14.276 1.00 0.00 N";
            Assert.AreEqual("ATOM 1635 N PHE 105 -3.504 9.019 -14.276 1.00 0.00 N", atom.Record);
        }
コード例 #20
0
        public virtual void TestGetHetAtom()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol  = "C";
            atom.HetAtom = true;
            Assert.IsTrue(atom.HetAtom.Value);
        }
コード例 #21
0
        public virtual void TestGetResSeq()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            atom.ResSeq = "123";
            Assert.AreEqual("123", atom.ResSeq);
        }
コード例 #22
0
        public override void TestClone()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            object clone = atom.Clone();

            Assert.IsTrue(clone is IAtom);
        }
コード例 #23
0
        public override void TestClonePoint3d()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol  = "C";
            atom.Point3D = new Vector3(2, 3, 4);
            IAtom clone = (IAtom)atom.Clone();

            Assert.AreEqual(clone.Point3D.Value.X, 2.0, 0.001);
        }
コード例 #24
0
        public override void TestSetPoint3dPoint3d()
        {
            Vector3 point3d = new Vector3(1, 2, 3);

            IPDBAtom a = (IPDBAtom)NewChemObject();

            a.Symbol  = "C";
            a.Point3D = point3d;
            Assert.AreEqual(point3d, a.Point3D);
        }
コード例 #25
0
        public override void TestGetPoint3d()
        {
            Vector3 point3d = new Vector3(1, 2, 3);

            IPDBAtom a = (IPDBAtom)NewChemObject();

            a.Point3D = point3d;
            Assert.IsNotNull(a.Point3D);
            AssertAreEqual(point3d, a.Point3D.Value, 0.001);
        }
コード例 #26
0
        public virtual void TestAddAtom_IPDBAtom()
        {
            IPDBPolymer pdbPolymer = (IPDBPolymer)NewChemObject();

            IPDBAtom oPDBAtom1 = pdbPolymer.Builder.NewPDBAtom("C");
            IPDBAtom oPDBAtom2 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.Add(oPDBAtom1);
            pdbPolymer.Add(oPDBAtom2);

            Assert.AreEqual(2, pdbPolymer.Atoms.Count);
        }
コード例 #27
0
        public override void TestSetFractionalPoint3dPoint3d()
        {
            IPDBAtom a = (IPDBAtom)NewChemObject();

            a.Symbol            = "C";
            a.FractionalPoint3D = new Vector3(0.5, 0.5, 0.5);
            Vector3 fract = a.FractionalPoint3D.Value;

            Assert.IsNotNull(fract);
            Assert.AreEqual(0.5, fract.X, 0.001);
            Assert.AreEqual(0.5, fract.Y, 0.001);
            Assert.AreEqual(0.5, fract.Z, 0.001);
        }
コード例 #28
0
        public override void TestToString()
        {
            IPDBAtom atom = (IPDBAtom)NewChemObject();

            atom.Symbol = "C";
            string description = atom.ToString();

            for (int i = 0; i < description.Length; i++)
            {
                Assert.IsTrue('\n' != description[i]);
                Assert.IsTrue('\r' != description[i]);
            }
        }
コード例 #29
0
        public override void TestGetStrand_String()
        {
            IPDBPolymer pdbPolymer = (IPDBPolymer)NewChemObject();
            IStrand     oStrand1   = pdbPolymer.Builder.NewStrand();

            oStrand1.StrandName = "A";
            IMonomer oMono1 = pdbPolymer.Builder.NewMonomer();

            oMono1.MonomerName = "TRP279";
            IPDBAtom oPDBAtom1 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.AddAtom(oPDBAtom1, oMono1, oStrand1);

            Assert.AreEqual(oStrand1, pdbPolymer.GetStrand("A"));
        }
コード例 #30
0
        public virtual void TestAddAtom_IPDBAtom_IMonomer()
        {
            IPDBPolymer pdbPolymer = (IPDBPolymer)NewChemObject();
            IPDBMonomer oMono1     = pdbPolymer.Builder.NewPDBMonomer();

            oMono1.MonomerName = "TRP279";
            IStrand oStrand1 = pdbPolymer.Builder.NewStrand();

            oStrand1.StrandName = "A";
            IPDBAtom oPDBAtom1 = pdbPolymer.Builder.NewPDBAtom("C");

            pdbPolymer.AddAtom(oPDBAtom1, oMono1, oStrand1);

            Assert.AreEqual(1, pdbPolymer.GetMonomer("TRP279", "A").Atoms.Count);
        }