Date post: | 26-Dec-2015 |
Category: |
Documents |
Upload: | branden-griffin |
View: | 219 times |
Download: | 0 times |
Interactive Biochemistry
Guidelines 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”
Interactive Biochemistry
What software should be….
“We look at it and do not see it.”
Lao-tzu, 6th century B.C.
Interactive Biochemistry
Another version….
“It takes a lot of money to make me look this cheap.”
Dolly Parton, 20th century A.D.
Interactive Biochemistry
Our Projects
• Java-XML learning tools
• 3D Virtual Laboratory
• Wireless networks
• Hand-held devices – PDAs and cell phones
• small Java Virtual Machines (VMs) are here
Interactive Biochemistry
Java – 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
Interactive Biochemistry
Java 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
Interactive Biochemistry
Enzyme 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
Interactive Biochemistry
XML – Portable Data
• XML = Extensible Markup Language
• XML is HTML on steroids
• XML can describe any collection of data
• “Tags” identify different kinds of data
• <Animal>Dinosaur</Animal>
• <Name>Barney</Name>
• <Color>Purple</Color>
Interactive Biochemistry
Better Organized XML
<Animal>
<Name>Barney</Name>
<Color>Purple</Color></Animal>
• Tagging organizes data
• Tagged data can be parsed (read) and utilized by a program
Interactive Biochemistry
An 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
Interactive Biochemistry
XML is the Data Interface
Design Tool XML file
MechanismPlayer
TutorialExercise
Interactive Biochemistry
More Information
• Check this site for a project description:
• http://javalab.chem.virginia.edu/Java-XML/
Interactive Biochemistry
The 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
Interactive Biochemistry
Amino 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 Ize’s classes
• All the parts work and integration is nearly complete
Interactive Biochemistry
lab3D titration
0
2
4
6
8
10
12
14
0 5 10 15 20 25 30 35 40 45
Volume
pH
real titration
0
2
4
6
8
10
12
14
0 10 20 30 40 50
Volume
pH
Thiago’s simulation:
Real data fromGeorgetown University:
Interactive Biochemistry
6-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
Interactive Biochemistry
More Information
• Check this site for a project description:
• http://javalab.chem.virginia.edu/
Interactive Biochemistry
Java 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.html
• You create Midlets and use a Converter utility to convert midlets to .prc files
Interactive Biochemistry
There is an event model to handle user input, as well as internetand database classes for PDAs and cell phones.
Interactive Biochemistry
Nonlinear 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