Exemple #1
0
        public void TestGetCIPChiralityDoubleBondTogether()
        {
            var container = CDK.SmilesParser.ParseSmiles("CCC(C)=C(C)CC");

            CIPTool.CIPChirality label = CIPTool.GetCIPChirality(
                container,
                new DoubleBondStereochemistry(container.GetBond(container.Atoms[2], container.Atoms[4]),
                                              new IBond[] { container.GetBond(container.Atoms[2], container.Atoms[3]),
                                                            container.GetBond(container.Atoms[4], container.Atoms[5]) },
                                              DoubleBondConformation.Together));
            Assert.AreEqual(CIPTool.CIPChirality.Z, label);
        }
Exemple #2
0
        public void TestGetCIPChiralityAntiILigancyFourChirality()
        {
            var antiLigands = new ILigand[] { ligands[0], ligands[1], ligands[3], ligands[2] };
            var ligandAtoms = new List <IAtom>();

            foreach (var ligand in antiLigands)
            {
                ligandAtoms.Add(ligand.LigandAtom);
            }

            var chirality = new TetrahedralChirality(molecule.Atoms[1], ligandAtoms, TetrahedralStereo.AntiClockwise);

            CIPTool.CIPChirality rsChirality = CIPTool.GetCIPChirality(molecule, chirality);
            Assert.AreEqual(CIPTool.CIPChirality.S, rsChirality);
        }
Exemple #3
0
        public void TestOla28()
        {
            var filename = "NCDK.Data.CML.mol28.cml";

            IChemFile      file;
            IAtomContainer mol;

            using (var reader = new CMLReader(ResourceLoader.GetAsStream(filename)))
            {
                file = reader.Read(builder.NewChemFile());
                mol  = ChemFileManipulator.GetAllAtomContainers(file).First();
            }

            foreach (var atom in mol.Atoms)
            {
                var neighbors = mol.GetConnectedAtoms(atom).ToReadOnlyList();
                if (neighbors.Count == 4)
                {
                    var stereo = StereoTool.GetStereo(neighbors[0], neighbors[1], neighbors[2], neighbors[3]);
                    ITetrahedralChirality stereoCenter = new TetrahedralChirality(mol.Atoms[0], neighbors, stereo);
                    CIPTool.CIPChirality  chirality    = CIPTool.GetCIPChirality(mol, stereoCenter);
                }
            }
        }