⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 partialpichargedescriptortest.java

📁 化学图形处理软件
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	public void testPartialPiChargeDescriptoCharge_2() throws ClassNotFoundException, CDKException, java.lang.Exception {		double [] testResult={-0.0822,0.02,0.0,0.0423,0.0,0.02,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};/* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		double [] testResultMy={-0.1090,0.04283,-0.0139,0.05130,-0.01397,0.042839,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0};/* my */		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("n1ccccc1");		HydrogenAdder hAdder = new HydrogenAdder();		hAdder.addExplicitHydrogensToSatisfyValency(mol);				LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);				for (int i = 0 ; i < mol.getAtomCount(); i++){	        double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i),mol).getValue()).doubleValue();//	        logger.debug(mol.getAtom(i).getSymbol()+"-result: "+result);	        	        if(testResultMy[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResultMy[i]),getSign(result), 0.00001);			}			assertEquals(testResultMy[i],result, 0.03);		}	}	/**	 *  A unit test for JUnit. This molecule break. With PETRA as well.	 */	public void testPartialPiChargeDescriptoCharge_3() throws ClassNotFoundException, CDKException, java.lang.Exception {		double [] testResult={-0.0379,-0.0032,0.0,-0.0078,0.0,0.0488,0.0,0.0};/* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("O=C([H])[C+]([H])[C-]([H])[H]");				LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);				for (int i = 0 ; i < mol.getAtomCount(); i++){	        double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i),mol).getValue()).doubleValue();//	        logger.debug(mol.getAtom(i).getSymbol()+"-result: "+result);	        if(i == 0 || i == 1 || i == 3)/*not get same signus like Gasteiger*/	        	continue;	        	        if(testResult[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResult[i]),getSign(result), 0.00001);			}			assertEquals(testResult[i],result, 0.15);		}	}	/**	 *  A unit test for JUnit. This molecule break. With PETRA as well.	 */	public void testPartialPiChargeDescripto4() throws ClassNotFoundException, CDKException, java.lang.Exception {		double [] testResult={0.0};/* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("CCOCCCO");		HydrogenAdder hAdder = new HydrogenAdder();		hAdder.addExplicitHydrogensToSatisfyValency(mol);				LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);				for (int i = 0 ; i < mol.getAtomCount(); i++){	        double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i),mol).getValue()).doubleValue();//	        logger.debug(mol.getAtom(i).getSymbol()+"-result: "+result);			assertEquals(testResult[0],result, 0.0001);		}	}	/**	 *  A unit test for JUnit with 	 */	public void testArticle1() throws ClassNotFoundException, CDKException, java.lang.Exception {		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        double[] testResult = {0.0,0.0216,-0.1644,0.1428,0.0,0.0,0.0,0.0,0.0,0.0}; /* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("CC(=O)N");		HydrogenAdder hAdder = new HydrogenAdder();		hAdder.addExplicitHydrogensToSatisfyValency(mol);		Object[] object = {new Integer(6),new Boolean(true)};		descriptor.setParameters(object);		LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);		for (int i = 0 ; i < mol.getAtomCount() ; i++){			double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i), mol).getValue()).doubleValue();//			logger.debug(mol.getAtom(i).getSymbol()+",result: "+result);			if(testResult[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResult[i]),getSign(result), 0.00001);			}			assertEquals(testResult[i],result,0.1);		}	}	/**	 *  A unit test for JUnit with FC(=O)CCc1cccc(F)c1(C)	 */	public void testSousa() throws ClassNotFoundException, CDKException, java.lang.Exception {		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        double[] testResult = {0.0914,0.0193,-0.1107,0.0,0.0,0.0,-0.0063,0.0,-0.0101,0.0,0.0262,-0.0098,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0}; /* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("FC(=O)CCc1cccc(F)c1(C)");		HydrogenAdder hAdder = new HydrogenAdder();		hAdder.addExplicitHydrogensToSatisfyValency(mol);		Object[] object = {new Integer(6),new Boolean(true)};		descriptor.setParameters(object);		LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);		for (int i = 0 ; i < mol.getAtomCount() ; i++){			double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i), mol).getValue()).doubleValue();//			logger.debug(mol.getAtom(i).getSymbol()+",result: "+result);			if(testResult[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResult[i]),getSign(result), 0.00001);			}			assertEquals(testResult[i],result,0.07);		}	}	/**	 *  A unit test for JUnit with [H]C([H])=C([H])C([H])([H])C([H])=O	 */	public void testBondNotConjugated() throws ClassNotFoundException, CDKException, java.lang.Exception {		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        double[] testResult = {0.0,0.0004,0.0,-0.0004,0.0,0.0,0.0,0.0,0.0277,0.0,-0.0277}; /* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("[H]C([H])=C([H])C([H])([H])C([H])=O");		Object[] object = {new Integer(6),new Boolean(true)};		descriptor.setParameters(object);		LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);		for (int i = 0 ; i < mol.getAtomCount() ; i++){			double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i), mol).getValue()).doubleValue();//			logger.debug(mol.getAtom(i).getSymbol()+",result: "+result);				        if(i == 1 || i == 3)/*not get same signus like Gasteiger*/	        	continue;				        if(testResult[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResult[i]),getSign(result), 0.00001);			}			assertEquals(testResult[i],result,0.02);		}	}	/**	 *  A unit test for JUnit with [H]C([H])=C([H])C([H])([H])C([H])=O	 */	public void testBondNotConjugated1() throws ClassNotFoundException, CDKException, java.lang.Exception {		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        double[] testResult = {0.0,-0.0009,0.0,0.0009,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0}; /* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("[H]C([H])=C([H])C([H])([H])[H]");		Object[] object = {new Integer(6),new Boolean(true)};		descriptor.setParameters(object);		LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);		for (int i = 0 ; i < mol.getAtomCount() ; i++){			double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i), mol).getValue()).doubleValue();//			logger.debug(mol.getAtom(i).getSymbol()+",result: "+result);	        if(i == 8)/*not get same signus like Gasteiger*/	        	continue;						if(testResult[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResult[i]),getSign(result), 0.00001);			}			assertEquals(testResult[i],result,0.02);		}	}	/**	 *  A unit test for JUnit with [H]C([H])=C([H])[C+]([H])[H]	 */	public void testBondNotConjugated2() throws ClassNotFoundException, CDKException, java.lang.Exception {		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        double[] testResult = {0.0,0.25,0.0,0.0,0.0,0.25,0.0,0.0,0.0,0.0,0.0,0.0,}; /* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("[H]C([H])=C([H])[C+]([H])[H]");		Object[] object = {new Integer(6),new Boolean(true)};		descriptor.setParameters(object);		LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);		for (int i = 0 ; i < mol.getAtomCount() ; i++){			double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i), mol).getValue()).doubleValue();//			logger.debug(mol.getAtom(i).getSymbol()+",result: "+result);	        if(i == 5)/*not get same signus like Gasteiger*/	        	continue;	        			if(testResult[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResult[i]),getSign(result), 0.00001);			}			assertEquals(testResult[i],result,0.21);		}	}	/**	 *  A unit test for JUnit with [C]=C=C=O	 */	public void testWithRadical() throws ClassNotFoundException, CDKException, java.lang.Exception {		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();        double[] testResult = {0.0,0.25,0.0,0.0,0.0,0.25,0.0,0.0,0.0,0.0,0.0,0.0,}; /* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("[C]=C=C=O");//		mol.addElectronContainer(new SingleElectron(mol.getAtom(0)));		mol.addLonePair(new LonePair(mol.getAtom(3)));		Object[] object = {new Integer(6),new Boolean(false)};		descriptor.setParameters(object);		for (int i = 0 ; i < mol.getAtomCount() ; i++){			double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i), mol).getValue()).doubleValue();//			logger.debug(mol.getAtom(i).getSymbol()+",result: "+result);				        if(i == 1 || i == 2 || i == 3)/*not get same signus like Gasteiger*/	        	continue;						if(testResult[i] == 0.0)				assertTrue(result == 0.0);			else {				assertTrue(result != 0.0);				assertEquals(getSign(testResult[i]),getSign(result), 0.00001);			}			assertEquals(testResult[i],result,0.21);		}	}		/**	 *  A unit test for JUnit with c1ccc(cc1)n3c4ccccc4(c2ccccc23)	 */	public void testLangCalculation() throws ClassNotFoundException, CDKException, java.lang.Exception {		IAtomicDescriptor descriptor = new PartialPiChargeDescriptor();//        double[] testResult = {0.0,0.25,0.0,0.0,0.0,0.25,0.0,0.0,0.0,0.0,0.0,0.0,}; /* from Petra online: http://www2.chemie.uni-erlangen.de/services/petra/smiles.phtml*/		SmilesParser sp = new SmilesParser(DefaultChemObjectBuilder.getInstance());		IMolecule mol = sp.parseSmiles("c1ccc(cc1)n3c4ccccc4(c2ccccc23)");		HydrogenAdder hAdder = new HydrogenAdder();		hAdder.addExplicitHydrogensToSatisfyValency(mol);		LonePairElectronChecker lpcheck = new LonePairElectronChecker();		lpcheck.newSaturate(mol);				Object[] object = {new Integer(6),new Boolean(false)};		descriptor.setParameters(object);		for (int i = 0 ; i < mol.getAtomCount() ; i++){			double result= ((DoubleResult)descriptor.calculate(mol.getAtom(i), mol).getValue()).doubleValue();//			logger.debug(mol.getAtom(i).getSymbol()+",result_: "+result);					}	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -