27
Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Embed Size (px)

Citation preview

Page 1: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Modelling experiments

Using Teranode XDA and Chemaxon

Andrew Lemon and Robert Shell

Page 2: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Agenda• Issues with capturing experiments

• Integrating Chemaxon

• Futures

• Acknowledgements

Page 3: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Experiments• Protocol Design*

• Data capture*– Automated data capture

• Data Analysis and reduction*

• Conclusion

• Review and Publication

• Search and report data

Diversity from synthesis to Preclinical testing

Page 4: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Protocols

Page 5: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Data capture  ESC001 ESC002 ESC003 ESC004

ESC001 ESC001-ESC001 ESC002-ESC001 ESC003-ESC001 ESC004-ESC001

ESC002 ESC001-ESC002 ESC002-ESC002 ESC003-ESC002 ESC004-ESC002

ESC003 ESC001-ESC003 ESC002-ESC003 ESC003-ESC003 ESC004-ESC003

ESC004 ESC001-ESC004 ESC002-ESC004 ESC003-ESC004 ESC004-ESC004

• Spreadsheets• Formula to link cells in 2D• =A3 & “-” & B2 ESC001-ESC001• Modelling difficult and error prone• Expansion difficult

Page 6: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Protocol Modelling

• Need to model the experiment

• Parameterise the dimensionality

CMPS (4)ESC004ESC003ESC002ESC001

MassDensityMPB.P Params(4)

RESULTS(4x4)

MassDensityMPB.P

ESC001

ESC002

ESC003

ESC004

Page 7: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Protocol Modelling

• Need to model the experiment

• Parameterise the dimensionality

CMPS (4)ESC004ESC003ESC002ESC001

MassDensityMPB.P Params(5)

RESULTS(4x5)

MassDensityMPB.P

ESC001

ESC002

ESC003

ESC004

IC50

IC50

Page 8: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Protocol Modelling

• Cope with runtime modification

• ‘Stuff’ happens

• Still track data

CMPS (4)ESC002ESC003ESC004ESC001

MassDensityMPB.P Params(5)

RESULTS(4x5)

MassDensityMPB.P

ESC001

ESC004

ESC003

ESC002

IC50

IC50

Page 9: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Modelling Chemistry• How can we model real experiments?

– Instruments– Data

• What about chemical information?

Page 10: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Experiment Modelling• Visual platform

Page 11: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Integration Requirements• Support specialist data types

– Structure, Reaction

• Access to raw data– SDF, RDF, CTFile, Smiles

• Provide processing capabilities– Chemical Business rules– Enumeration

• Not compromise the platform architecture– Java plugin architecture

• Reasonable cost implication• Be compatible with other software• Responsive vendor (support, enhancements, innovation)• Good pedigree

JChem/Marvin

JChem

StandardizeReactor

Page 12: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Teranode API

• Value Type– Custom Viewer

• Large Panels• Dialogs• Small single line/cell views

– Executables• Import• Export• Custom Processes

Page 13: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Chemical Viewercd Plug-In

AbstractStringValueType

ChemicalValueType

LargeChemicalViewer

SmallChemicalViewer

MViewPane

+ setM(Molecule) : void

ChemicalData

+ fromString(String) : void+ toString() : String

ViewerPanel

+ rebuildLocal(JPanel) : void

Teranode API ChemAxon API

Molecule

+ getFormula() : String+ getMass()() : double+ toFormat(String) : String

MolImporter

+ importMol(String) : Molecule

Large Widget

Small Widget

model

model

model

Panel

molecule

Reading smiles

Page 14: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Integration Steps

1. Add Viewers to ValueType

2. Implement RebuildLocal in Viewerprotected void rebuildLocal(JPanel jPanel) { buildGUI(); … }protected void buildGUI() { mainPanel = new MViewPane(); mainPanel.setEditable(2); mainPanel.setM(0, ChemicalUtility.emptyMolecule); }

Page 15: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Integration Steps3.Load Data (SMILES) from modelpublic void load() { super.unregisterWithContext(); // don’t trigger refresh try { data = new ChemData(getProperty().getOutputString()); mainPanel.setM(0,data.getMolecule()); } catch (Exception e) { mainPanel.setM(0,ChemicalUtility.emptyMolecule);

log.warn("Failed to read in molecule", e); } super.registerWithContext(); }

Page 16: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Executable

• File Importers

• Structure Transformations–Standardize

–Reactor

• Searching–Filters

–SSS

public Executable getExecutable(){ if (executable==null) { executable = new

StandardizerExecutable(); } return executable;}

Page 17: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Executablecd Exec

ChemAxon API

Teranode API

AbstractStringValueType

RunAllExecutable

StandarizeValueType

StandarizeExecutable

StandizeData

- destination: Property- source: Property- transform: String

StandizeViewer

+ rebuildLocal(JPanel) : void

Standardizer

MolImporter

+ importMol(String) : Molecule

MViewPane

+ setM(Molecule) : void

ViewerPanel

+ rebuildLocal(JPanel) : void

run

Page 18: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Implementationprotected void executeLocal(GraphObject graphObject) throws

Exception { Property property = m_executeEvent.getExecutableProperty(); String value = property.getOutputString(); Node node = (Node) graphObject;

StandardizerData data = new StandardizerData(node,value); Standardizer standardizer = new Standardizer(data.getRules());

// Read Chemistry from source clean and save to destination ChemicalData chem = new ChemicalData(data.getSource()); Molecule cleaned = standardizer.standardize(chem.getMolecule()); chem.setMolecule(cleaned); data.getDestination().setValueString(chem.toString(), node); }

Page 19: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Chemaxon• Well designed Object Model• Quickly get to chemistry terms not objects

– Leverage domain knowledge– Faster programming

• Robust• Documented• Supported

– Forums– Interested!

• Active Development

Page 20: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Parallel SynthesisReactants

Products

Page 21: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

• Layout reagents on synthesis plates

• Apply the reaction

• Enumerate the products

All within a single workflow

Combinatorial Chemistry

Reactants

Products

Reaction

Enumerated Products

Page 22: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Chemical Intelligence

Before After

Applying Chemical Business rules for representation

Page 23: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Chemical IntelligenceStructural Filtering

Split a list of Amines into Primary Secondary, Tertiary and Quaternary Amines

Filter by Structure

Page 24: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Marvin

Integrated Chemistry• Data access• Chemical Indexing

and searching• Integrated Chemical

Intelligence• Web-based Query

and Reporting

JChem

Reactor

Page 25: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Other Edge plugins• Fitting and charting

Page 26: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Futures• Integrate more Chemaxon components

– PhysChem Predictors– Cluster analysis– Reporting– Structure searching within Semantic webstore

• Integration components to databases– ID/Structure lookup

• Integration of screening data– SAR reports etc

Page 27: Modelling experiments Using Teranode XDA and Chemaxon Andrew Lemon and Robert Shell

Acknowledgements• Chemaxon Software Collaboration

• Teranode Software Collaboration– European Agent

• The Edge Software Consultancy– Robert Shell

More information?

http://www.edgesoftwareconsultancy.com/

[email protected]