Download presentation
1
ChemAxon - Pipeline Pilot Integration
Ton van Daelen Accelrys, Inc.
2
Outline Pipeline Pilot ChemAxon components Integration technologies
3
Pipeline Pilot Instructions: The purpose of this is to start with a cool protocol – NOT to explain PP at this point (don’t get into what components, protocols etc are yet) – show this running live or substitute a protocol tailored to the account opportunity. Script: We will begin by showing you one application solution built using Pipeline Pilot. It shows a data pipeline that accesses two data sources, one chemistry and one biology, joins the data together, applies some business rules and then produces output that allows you to understand the analysis and make decisions based on the results.
4
Aggregate and Disseminate Information…
An Example of How To Step Forward In The Informatics Evolution Your real challenge and investment needs to be in tying together information and provide rich scientific web services. Delivering information needs to be quick and easy. Web-based, zero deployment, and zero footprint technologies are the fastest and easiest way to get information in the hands of Scientists. Creating content in Pipeline Pilot automatically allows you to: Deploy web services Deploy Portlets to your portal server Deploy web applications Power custom desktop clients Provide scientific services to containers like Spotfire and Diva Easily Configurable Apps Into a Web Service Callable By Any Type Of Interface
5
Release history - major changes
Version 1.6, August 2009 New component: "ChemAxon 3D Conformers" Version 1.5, May 2009 New components: "ChemAxon MolConverter", "ChemAxon Tautomerization", "ChemAxon Markush Enumeration" Version 1.4, November 2008 New components: "LibMCS Clustering", "Molecule to IUPAC Name", "Molecule from IUPAC Name“ Major upgrade of "ChemAxon Reactor" component Version 1.3, July 2008 New component: “Chemical Terms Calculator” Version 1.2, March 2008 New components: “ChemAxon Reactor”, “Drop JChem Base Table”, “Create JChem Base Table” Several components upgraded
6
Calculator Easy access for the most important calculations
7
Chemical Terms Calculator
Maximum freedom trough Chemical Terms Expressions for the expert user New in 1.3 Use arbitrary Chemical Terms expressions Results stored to arbitrary properties A wide range of ChemAxon functionality can be accessed as Chemical Terms functions
8
Reactor Improvements: Upgraded in 1.4 Synthesis code generation
Output reaction mapping Advanced options: Unambiguous only Ignore rules: Reactivity and Exclude Selectivity Tolerance
9
IUPAC naming components
New in 1.4 IUPAC Name to Molecule Molecule to IUPAC Name Example “roundtrip” protocol:
10
Clustering with LibMCS
Maximum Common Substructure (MCS) based clustering New in 1.4 Options: Size of smallest common substructure to consider Three levels of heuristics: Exact (no heuristics) Fast Very Fast Bond type, atom type, charge can optionally be ignored Disallow “breaking” rings (default)
11
Markush Enumeration Enumeration of generic structures New in 1.5
File input Enumeration type: Sequential Random Number of enumerated structures can be limited (per input structure) Valence filter Scaffold alignment Markush code generation. The scaffold ID can be: fetched from data field generated (prefix + number)
12
Tautomerization Component for tautomer generation New in 1.5
Calculation modes: All tautomers Canonical tautomer Generic tautomer Major tautomer Dominant tautomer distribution Options: Protect aromaticity, charge, double bond stereo, tetrahedral stereo Exclude antiaromatic compounds Single fragment mode Consider pH at specific value
13
MolConverter “Swiss army knife” for molecular format conversion
New in 1.5 Input and output can either be File Property Pipeline Pilot Molecule Specified input format or auto-detection Various output formats or custom format string Option to halt or continue on error, error messages put into property 2D cleaning (coordinate generation) only when needed (default). Unconditional 2D or 3D cleaning or no cleaning can also be selected
14
Conformer generation Component for 3D conformer generation New in 1.6
Calculation modes: Multiple conformers Lowes energy conformer Options: Maximum number of conformers Diversity limit Optimization limit, hyperfine option Time limit Generate with explicit H atoms Energy unit kcal/mol or KJ/mol, into arbitrary property
15
Pipeline Pilot Integration
“Client side” Browser Clients Native and Java Clients Various Clients JavaScript SDK .NET SDK Java SDK SOAP SDK Web services Pipeline Pilot “Server side” Java API Perl API SOAP Cmd Line Telnet / FTP ODBC JDBC Application integration layer Data access layer Oracle ISIS Accord IBM II Application Services Data Sources
16
Telnet/FTP Component Execute command line applications on remote server (any platform) No coding required Use files to pass input and output data Secure version (SSH)
17
Integration of SOAP Web Services
Simple method example public double GetCLogP(string SMILES) { // ... Do the calculation ... return clogp; } Configuring SOAP Component SOAP Endpoint - HTTP URL resource Method Name - Name of function (“GetCLogP”) Method Namespace - Found in WSDL (often SOAP Parameter Names - Name of function parameter (“Name”) Method Parameter Values - Pipeline Pilot property names Property Return Names - What to call the returned value (“Greeting”)
18
Java on Server component
Create new PP components Filters, calculators, readers, writers Single class with three methods onInitialize onProcess onFinalize Referencing Java classes on server Interact with Molecular Toolkit
19
New Java class: ChemAxonComponent
Parent class for component classes, implements com.scitegic.pilot.Component Error reporting: all exceptions thrown in onInitializeBody(), onProcessBody(), onFinalizeBody() are caught, logged and reported (re-thrown with added information) Parameters and context always readily available Utility functions for conveniently accessing parameters and properties, e.g.: findStringParameter(String name) Reduced code redundancy, better readability
20
Java Molecular Weight Example
private static final double HYDROGEN_WEIGHT = Hydrogen.atomicWeight(); // get molecule and properties, skip data record if molecule is not found Molecule mol = Molecule.findMolecule(data); if (mol == null) return Component.State.ReadyForInputData; PropertyCollection props = mol.getProperties(); // calculate mol weight and exact weight (most common isotopes) double mw = 0.0; for (Atom atom : mol.getAtoms()) { int numImplH = atom.getNumImplicitHydrogens(); mw += atom.getAtomicWeight(); mw += numImplH*HYDROGEN_WEIGHT; } props.define("Java_MW", mw);
21
Conclusions Compatible architectures
Pipeline Pilot good prototyping environment for ChemAxon’s advanced science Multiple deployment options
22
Future Work Integrate more ChemAxon functionality
Let us know what your priorities are Acknowledgements Szilard Dorant Moises Hassan Keith Burdick Contact Alex Allardyce: Ton van Daelen:
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.