Title: Implementation of Monte Carlo and Numerical Integration Techniques within an Online Physics Laborato
1Implementation of Monte Carlo and Numerical
Integration Techniques within an Online Physics
Laboratory Environment
2Thesis Goals
- Develop a robust and sophisticated online physics
laboratory environment. - Compare the Flash 5 and Java development
environments to determine which is best suited to
develop the online physics laboratory environment.
3Physical Modeling Techniques
- Monte Carlo Techniques
- Inverse Transformation Method
- Rejection Method
- Smearing Method
- Numerical Integration Technique
- Eulers Method
4Monte Carlo Techniques
- Monte Carlo techniques are statistical methods
used to solve physical or mathematical problems. - These techniques use sequences of random numbers
to perform simulations. - They are ideally suited to simulate random or
probabilistic processes.
5Inverse Transformation Method
- Generates a random number from a probability
- density function by solving the probability
density - function's variable in terms of randomly
generated - numbers. This is achieved as follows
- We solve the inverse of the integral of our
probability density function at an arbitrary
point a F(a), in terms of a random number r. - We generate a unique random variable a, as
follows - a F-1(r)
6Rejection Method
- Generates random numbers for a
- distribution function f(x). This is achieved
- as follows
- Define a comparison function h(x) such that it
encloses the desired function f(x). - Choose uniformly distributed random points under
h(x). - If a point lies outside the area under f(x)
reject it and choose another point.
7Illustration of the Rejection Method
- The following
- is an illustration
- of the rejection
- method using
- a square
- function for the
- comparison
- function.
8Generating points (xi, yi)
- To generate a random number for xi, we can use a
variant of the inverse transformation method. - To generate a random number for yi, we can
multiply a random number between 0 and 1 with the
value of h(xi). Therefore, we generate a number
between 0 and h(xi).
9Maxwell Speed Distribution
- We generated the Maxwell speed distribution by
using a square function for the comparison
function h(x). - The simulated data closely represents the desired
distribution function.
10Smearing Method
- Generates deterministic experimental results,
including experimental uncertainties. - Assumes that the data being modeled has a
Gaussian distribution.
11Gaussian Distribution
- The rejection method was used to generate the
Gaussian distribution. - A square function was used as the comparison
function h(x). - The simulated data closely represents the desired
distribution function.
12Eulers Method
- Approximation technique commonly used to
- solve the equations of motion. This is done
- as follows
- Approximate an infinitely small increment of time
such that dt??t. - The velocity of a particle after a small
increment of time with initial velocity v(t) is
v(t?t)v(t)a?t.
13Technical Environments
- Flash 5
- Scripting Language
- Cross-Platform
- Short Learning Curve
- Ease in Creating Graphical Objects
- Minimal Programming Required
- Poor Simulation Performance
- Java
- Interpreted Language
- Cross-Platform
- Long Learning Curve
- Lengthy in Creating Graphical Objects
- Extensive Programming Required
- Strong Simulation Performance
14Nuclear Decay Laboratory
Note...
This nuclear decay laboratory was created using
Flash 5.
15Explanation of the Stationary States
Note...
This animation was created using Flash 5.
16Java Laboratory (JLab)
- Designed to be an expandable online
- software package used to simulate physics
- experiments.
- Development Considerations
- Ease in developing new online experiments
- Ease in adding new functionality to existing JLabs
17Graphical User Interface Structure
Note...
Two components laboratory GUI option panel and
HTML Viewer.
18Laboratory GUI Option Panel
Note...
Provides the ability to manipulate the
experimental parameters.
19HTML Viewer
Note...
Presents the theory and experimental procedures
to the student.
20How does a JLab work?
- A student logs on to the desired JLab.
- The JApplet is initialized.
- The student reads the theory and experimental
procedures. - The student manipulates the experimental
parameters as instructed. - The student clicks on the run button.
- The JApplet calls the necessary methods and
returns an output to the student. - The student analyzes the data using his/her
preferred analysis tool.
21Nuclear Decay JLab
22Educational Goals
- Teach students how to measure and analyze the
decay of several radioactive sources. - Guide students in understanding radioactive decay
based on observing the decay of multiple sources.
- Instruct students on how to determine the decay
properties of an unknown decay source and then
identify the source.
23Advantages of a Nuclear Decay JLab
- Broader Target Audience
- Flexibility in choosing a radioactive
gamma-emitter source - Flexibility in choosing the experimental
parameters - Teaching Flexibility
24Java Implementation
- Simulate particle decay
- Simulate background noise
- Account for source location in respect to
detector location
25Nuclear Decay Distribution
- We generated the nuclear decay events by using
the inverse transformation method. - The simulated data closely represents the desired
distribution function.
26Background Decay Distribution
- We generated the background decay events by using
the smearing method. - The simulated data closely represents the desired
distribution function.
27Accounting for the Source Location
- Divide the total number of generated decay events
by the location of the source in respect to the
detector.
28Nuclear Decay JLab GUI
29Stern-Gerlach JLab
30Educational Goals
- Teach students how to measure and analyze the
distribution of the deflection for various beam
sources. - Guide students in understanding the quantization
of angular momentum and the Maxwell distribution
by observing the distribution of deflection for
multiple beam sources.
31Advantages of a Stern-Gerlach JLab
- Broader Target Audience
- Flexibility in choosing a molecular beam source
- Flexibility in choosing the experimental
parameters - Teaching Flexibility
32Java Implementation
- Simulate the distribution of the quantized
magnetic substates of the atom. - Simulate the velocity distribution of the
emerging molecular beam. - Simulate the transport system of the atom.
33Substates of the Atom
- Atom object was created to store crucial physical
properties of each atom. - The getSpin() method assigns the atoms spin
state.
34Velocity Distribution of Atoms
- The MolecularBeam class was developed to assign a
velocity to the atoms in the beam. - We generated the velocity by using the rejection
method. - The simulated data closely represents the desired
distribution function.
35Distribution of the Beam Deflection
- The deflection was generated using the rejection
and Eulers method. - The simulated data closely represents the desired
distribution function.
36Stern-Gerlach GUI Option Panel
37Summary
- We developed
- Online Virtual Nuclear Decay Laboratory
- Online Virtual Stern-Gerlach Laboratory
- Java Physics Library
38Future Possibilities
- Major Enhancements
- Combining Flash 5 and Java
- Icon-Oriented Modeling System
- Professor GUI Interface
- Analysis Visualization
- Minor Enhancements
- Implement XML MathML
- Develop new numerical integration techniques