📄 fragmentcomplexitydescriptortest.java
字号:
package org.openscience.cdk.test.qsar.descriptors.molecular;
import java.io.InputStream;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestSuite;
import org.openscience.cdk.Molecule;
import org.openscience.cdk.exception.CDKException;
import org.openscience.cdk.interfaces.IAtomContainer;
import org.openscience.cdk.interfaces.IMolecule;
import org.openscience.cdk.io.MDLReader;
import org.openscience.cdk.qsar.IMolecularDescriptor;
import org.openscience.cdk.qsar.descriptors.molecular.FragmentComplexityDescriptor;
import org.openscience.cdk.qsar.result.DoubleResult;
import org.openscience.cdk.test.CDKTestCase;
import org.openscience.cdk.tools.GenerateFragments;
import org.openscience.cdk.tools.HydrogenAdder;
/**
* TestSuite that runs all QSAR tests.
* @author chhoppe from EUROSCREEN
* @cdk.module test-qsar
*/
public class FragmentComplexityDescriptorTest extends CDKTestCase{
public FragmentComplexityDescriptorTest() {}
public static Test suite() {
return new TestSuite(FragmentComplexityDescriptorTest.class);
}
public void test1FragmentComplexityDescriptor() throws Exception {
IMolecularDescriptor descriptor = new FragmentComplexityDescriptor();
String filename = "data/mdl/murckoTest1.mol";
//System.out.println("\nFragmentComplexityTest: " + filename);
InputStream ins = this.getClass().getClassLoader().getResourceAsStream(filename);
GenerateFragments gf=new GenerateFragments();
double Complexity=0;
HydrogenAdder hAdder = new HydrogenAdder();
MDLReader reader = new MDLReader(ins);
Molecule mol = (Molecule)reader.read(new Molecule());
gf.generateMurckoFragments(mol,false,false,4);
List setOfFragments=gf.getMurckoFrameworks();
for (int i=0;i<setOfFragments.size();i++){
hAdder.addExplicitHydrogensToSatisfyValency((IMolecule) setOfFragments.get(i));
Complexity=((DoubleResult)descriptor.calculate((IAtomContainer) setOfFragments.get(i)).getValue()).doubleValue();
//System.out.println("Complexity:"+Complexity);
}
assertEquals(659.00,Complexity , 0.01);
}
public void test2FragmentComplexityDescriptor() throws Exception {
IMolecularDescriptor descriptor = new FragmentComplexityDescriptor();
String filename = "data/mdl/murckoTest10.mol";
//System.out.println("\nFragmentComplexityTest: " + filename);
InputStream ins = this.getClass().getClassLoader().getResourceAsStream(filename);
GenerateFragments gf=new GenerateFragments();
double Complexity=0;
HydrogenAdder hAdder = new HydrogenAdder();
MDLReader reader = new MDLReader(ins);
Molecule mol = (Molecule)reader.read(new Molecule());
gf.generateMurckoFragments(mol,false,false,4);
List setOfFragments=gf.getMurckoFrameworks();
for (int i=0;i<setOfFragments.size();i++){
hAdder.addExplicitHydrogensToSatisfyValency((IMolecule) setOfFragments.get(i));
Complexity=((DoubleResult)descriptor.calculate((IAtomContainer) setOfFragments.get(i)).getValue()).doubleValue();
//System.out.println("Complexity:"+Complexity);
}
assertEquals(544.01,Complexity , 0.01);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -