本文整理汇总了Java中org.openscience.cdk.silent.SilentChemObjectBuilder.getInstance方法的典型用法代码示例。如果您正苦于以下问题:Java SilentChemObjectBuilder.getInstance方法的具体用法?Java SilentChemObjectBuilder.getInstance怎么用?Java SilentChemObjectBuilder.getInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.openscience.cdk.silent.SilentChemObjectBuilder
的用法示例。
在下文中一共展示了SilentChemObjectBuilder.getInstance方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: parseSmiles
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
public static IAtomContainer parseSmiles(String smiles) {
SmilesParser sp = new SmilesParser(SilentChemObjectBuilder.getInstance());
IAtomContainer precursorMolecule = null;
try {
precursorMolecule = sp.parseSmiles(smiles);
} catch (InvalidSmilesException e) {
e.printStackTrace();
}
prepareAtomContainer(precursorMolecule, true);
return precursorMolecule;
}
示例2: parseSmilesImplicitHydrogen
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
/**
*
* @param smiles
* @return
*/
public static IAtomContainer parseSmilesImplicitHydrogen(String smiles) {
SmilesParser sp = new SmilesParser(SilentChemObjectBuilder.getInstance());
IAtomContainer precursorMolecule = null;
try {
precursorMolecule = sp.parseSmiles(smiles);
} catch (InvalidSmilesException e) {
e.printStackTrace();
}
MoleculeFunctions.prepareAtomContainer(precursorMolecule, true);
MoleculeFunctions.convertExplicitToImplicitHydrogens(precursorMolecule);
return precursorMolecule;
}
示例3: Structure2DComponent
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
public Structure2DComponent(String structure) throws CDKException,
IOException {
// Create a silend CDK builder
IChemObjectBuilder builder = SilentChemObjectBuilder.getInstance();
// Create a new molecule instance
molecule = builder.newInstance(IAtomContainer.class);
// Load the structure into the molecule
MDLV2000Reader molReader = new MDLV2000Reader(new StringReader(
structure));
molReader.read(molecule);
molReader.close();
// Suppress the hydrogens
AtomContainerManipulator.suppressHydrogens(molecule);
// If the model has no coordinates, let's generate them
if (!GeometryUtil.has2DCoordinates(molecule)) {
StructureDiagramGenerator sdg = new StructureDiagramGenerator();
sdg.setMolecule(molecule, false);
sdg.generateCoordinates();
}
// Generators make the image elements
Font font = new Font("Verdana", Font.PLAIN, 14);
List<IGenerator<IAtomContainer>> generators = new ArrayList<IGenerator<IAtomContainer>>();
generators.add(new BasicSceneGenerator());
generators.add(new StandardGenerator(font));
// Renderer needs to have a toolkit-specific font manager
renderer = new AtomContainerRenderer(generators, new AWTFontManager());
// Set default atom colors for the renderer
RendererModel rendererModel = renderer.getRenderer2DModel();
rendererModel.set(StandardGenerator.AtomColor.class,
new CDK2DAtomColors());
}
示例4: parseAtomContainer
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
static
public IAtomContainer parseAtomContainer(String structure){
SmilesParser parser = new SmilesParser(SilentChemObjectBuilder.getInstance());
try {
return prepareAtomContainer(parser.parseSmiles(structure));
} catch(CDKException ce){
throw new EvaluationException(ce.toString());
}
}
示例5: main
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
public static void main(String[] args) throws IOException, CDKException {
if (args.length < 1 || !args[0].endsWith(".sdf")) {
System.err.println("Expected input SDF as argument.");
return;
}
if (args[0].startsWith("~"))
args[0] = System.getProperty("user.home") + args[0].substring(1);
String sdfInPath = args[0];
String sdfOutPath = sdfInPath.substring(0, sdfInPath.length() - 4) + "-templates.sdf";
System.out.println("Extracting ring templates to '" + sdfOutPath + "'");
System.out.println(" - input SDfile: '" + sdfInPath + "'");
RingTemplateExtractor extractor = new RingTemplateExtractor();
IteratingSDFReader sdfReader = new IteratingSDFReader(new FileReader(sdfInPath),
SilentChemObjectBuilder.getInstance());
SDfile:
while (sdfReader.hasNext()) {
IAtomContainer container = sdfReader.next();
if (container instanceof IQueryAtomContainer)
continue;
for (IAtom atom : container.atoms()) {
if (atom.getImplicitHydrogenCount() == null)
continue SDfile;
if (atom.getPoint2d() == null)
continue SDfile;
}
extractor.add(container);
}
extractor.writeSDfile(new File(sdfOutPath));
}
示例6: initSmilesParser
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
public void initSmilesParser() {
this.sp = new SmilesParser(SilentChemObjectBuilder.getInstance());
}
示例7: run
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
/**
* @see java.lang.Runnable#run()
*/
public void run() {
setStatus(TaskStatus.PROCESSING);
resultWindow = new ResultWindow(
"Searching for " + MZmineCore.getConfiguration().getMZFormat()
.format(searchedMass),
peakListRow, searchedMass, charge, this);
resultWindow.setVisible(true);
logger.finest("Starting search for formulas for " + massRange + " Da");
IsotopePattern detectedPattern = peakListRow.getBestIsotopePattern();
if ((checkIsotopes) && (detectedPattern == null)) {
final String msg = "Cannot calculate isotope pattern scores, because selected"
+ " peak does not have any isotopes. Have you run the isotope peak grouper?";
MZmineCore.getDesktop().displayMessage(resultWindow, msg);
}
IChemObjectBuilder builder = SilentChemObjectBuilder.getInstance();
generator = new MolecularFormulaGenerator(builder,
massRange.lowerEndpoint(), massRange.upperEndpoint(),
elementCounts);
IMolecularFormula cdkFormula;
while ((cdkFormula = generator.getNextFormula()) != null) {
if (isCanceled())
return;
// Mass is ok, so test other constraints
checkConstraints(cdkFormula);
}
if (isCanceled())
return;
logger.finest("Finished formula search for " + massRange
+ " m/z, found " + foundFormulas + " formulas");
SwingUtilities.invokeLater(new Runnable() {
public void run() {
resultWindow.setTitle("Finished searching for "
+ MZmineCore.getConfiguration().getMZFormat()
.format(searchedMass)
+ " amu, " + foundFormulas + " formulas found");
}
});
setStatus(TaskStatus.FINISHED);
}
示例8: main
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
public static void main(String[] args) throws IOException, InvalidSmilesException {
if (args.length < 1) {
System.err.println("Usage ./smi2fps {input.smi} [{output.smi}]");
return;
}
final String path = args[0];
final BufferedWriter bw = args.length > 1
? new BufferedWriter(new FileWriter(args[1])) :
new BufferedWriter(new OutputStreamWriter(System.out));
final BufferedReader rdr = new BufferedReader(new FileReader(path));
final SmilesParser smipar = new SmilesParser(SilentChemObjectBuilder.getInstance());
// TODO choose fingerprint
IFingerprinter fpr = new CircularFingerprinter(CircularFingerprinter.CLASS_ECFP4);
final int len = fpr.getSize();
int cnt = 0;
long t0 = System.nanoTime();
String line;
while ((line = rdr.readLine()) != null) {
try {
final IAtomContainer container = smipar.parseSmiles(line);
final String id = suffixedId(line);
final BitSet bitSet = fpr.getBitFingerprint(container).asBitSet();
StringBuilder sb = new StringBuilder();
FpsFmt.writeHex(sb, len, bitSet.toLongArray());
bw.write(sb.toString());
bw.write("\t");
bw.write(id);
bw.newLine();
if (++cnt % TIME_STAMP_INTERVAL == 0)
System.err.print("\r[RUN] processed " + cnt+ " compounds, elapsed time " + elapsedTime(t0, System.nanoTime()));
} catch (Exception e) {
System.err.println("[INFO] Skipping " + line + " " + e.getMessage());
}
}
long t1 = System.nanoTime();
System.err.println("\r[FINISHED] processed " + cnt+ " compounds, elapsed time " + elapsedTime(t0, t1));
rdr.close();
bw.close();
}
示例9: calculateIsotopePattern
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
public static IsotopePattern calculateIsotopePattern(
String molecularFormula, double minAbundance, int charge,
PolarityType polarity) {
IChemObjectBuilder builder = SilentChemObjectBuilder.getInstance();
IMolecularFormula cdkFormula = MolecularFormulaManipulator
.getMolecularFormula(molecularFormula, builder);
return calculateIsotopePattern(cdkFormula, minAbundance, charge,
polarity);
}
示例10: run
import org.openscience.cdk.silent.SilentChemObjectBuilder; //导入方法依赖的package包/类
/**
* @see java.lang.Runnable#run()
*/
public void run() {
setStatus(TaskStatus.PROCESSING);
totalRows = peakList.getNumberOfRows();
for (PeakListRow row : peakList.getRows()) {
if (row.getPeakIdentities().length > 0) {
continue;
}
this.ResultingFormulas = new ArrayList<ResultFormula>();
this.searchedMass = (row.getAverageMZ() - ionType.getAddedMass())
* charge;
message = "Formula prediction for " + MZmineCore.getConfiguration()
.getMZFormat().format(searchedMass);
massRange = mzTolerance.getToleranceRange(searchedMass);
IChemObjectBuilder builder = SilentChemObjectBuilder.getInstance();
generator = new MolecularFormulaGenerator(builder,
massRange.lowerEndpoint(), massRange.upperEndpoint(),
elementCounts);
IMolecularFormula cdkFormula;
while ((cdkFormula = generator.getNextFormula()) != null) {
// Mass is ok, so test other constraints
checkConstraints(cdkFormula, row);
}
if (isCanceled())
return;
for (ResultFormula f : this.ResultingFormulas) {
SimplePeakIdentity newIdentity = new SimplePeakIdentity(
f.getFormulaAsString());
row.addPeakIdentity(newIdentity, false);
}
finishedRows++;
}
if (isCanceled())
return;
logger.finest("Finished formula search for all the peaks");
setStatus(TaskStatus.FINISHED);
}