Title: JavaLab.chem.virginia.edu
1JavaLab.chem.virginia.edu
- Charles M. Grisham
- University of Virginia
2Guidelines for Good Software
- Software should do what books cannot
- Should focus on teaching/learning problem areas
- Should be easy to use essentially transparent
to the user - Should be available anytime/anywhere
3What software should be.
We look at it and do not see it.
Lao-tzu, 6th century B.C.
4Another version.
It takes a lot of money to make me look this
cheap.
Dolly Parton, 20th century A.D.
5Our Projects
- Java-XML learning tools
- 3D Virtual Laboratory
- Wireless networks
- Hand-held devices PDAs and cell phones
- small Java Virtual Machines (VMs) are here
6Java Portable Code
- Java is cross-platform and object-oriented
- Applications or Applets (latter in browser)
- Compiler produces bytecode
- A platform-dependent interpreter interprets the
platform-independent bytecode - Java can bring dynamic behavior and interactivity
to the Web environment
7Java in Interactive Biochemistry
- Applets can be designed for specific tasks
- Applets are small and load quickly
- Examples
- Amino acids
- Enzyme kinetics and mechanisms
- Sugar, nucleotide structures
- Helical wheel
- Coenzymes
- Metabolic Map Database
8Enzyme Mechanism Tutorials
- Effective teaching/learning devices
- 27 tutorials in Interactive Biochemistry
- But each one is a separate Java applet
- Hundreds remain to be done
- Programming costs would be prohibitive
- This is a job for XML
9XML Portable Data
- XML Extensible Markup Language
- XML is HTML on steroids
- XML can describe any collection of data
- Tags identify different kinds of data
- Dinosaur
- Barney
- Purple
10Better Organized XML
-
- Barney
- Purple
- Tagging organizes data
- Tagged data can be parsed (read) and utilized by
a program
11An XML-Based Mechanism Tool
- Two parts
- A Mechanism Design Tool (written in Java)
- A Mechanism Player (written in Java)
- The design tool is menu-driven and can be used
(without knowledge of Java or XML) to create
mechanism tutorials - The mechanism player reads the XML file and runs
the tutorial for the student
12XML is the Data Interface
Design Tool
XML file
Tutorial Exercise
Mechanism Player
13A Mechanism Step from the XML File
14More Information
- Check this site for a project description
- http//javalab.chem.virginia.edu/Java-XML/
15The 3D Virtual Laboratory
- Uses Java 3D to create real 3D environment
- Provides controls (not shown) to manipulate all
objects in the environment - Permits the user to do anything they choose in
the laboratory - Keeps track of all materials, solutions made,
instruments used, and data collected - Allows the user to design and execute any
experiment
16(No Transcript)
17Amino Acid Titrations
- 3D scene created with Java3D
- Apparatus created in 3DS Max and added to scene
with a VRML loader - Swing interface
- Chemistry handled by Thiago Izes classes
- All the parts work and integration is nearly
complete
18Thiagos simulation
Real data from Georgetown University
19The Isotrak II 6-DOF Digitizing and Tracking
Device
206-DOF Tracking
- The Isotrak works in Hyperterminal
- Java classes for data collection are available
- (See http//www.cyber.koganei.tokyo.jp/vr/)
- Need only to debug and implement the Isotrak
device in our 3D scenes - Isotrak sensor could be used on any laboratory
apparatus
21More Information
- Check this site for a project description
- http//javalab.chem.virginia.edu/
22Java on PDAs and Cell Phones
- Uses the Java Wireless Toolkit, based on the
Mobile Information Device Protocol - aka MIDP
- http//java.sun.com/products/j2mewtoolkit/index.ht
ml - You create Midlets and use a Converter utility to
convert midlets to .prc files
23Java Midlets are converted to .prc files and
downloaded to a PDA
24There is an event model to handle user input, as
well as internet and database classes for PDAs
and cell phones.
25Nonlinear Least Squares Data Fitting
- Marquardt matrix algorithm combining a grid
search with a gradient search - Can be rapidly adapted to any equation with any
number of parameters - Runs fast
- Uses Java 2D for plotting
26Data with initial estimates for Km and Vmax
271 pass through fitting routine
285 passes through fitting routine
29No more good must be attempted than the people
can bear.
Thomas Jefferson