I will give a generic introduction to Monte Carlo Techniques, including some simple examples, pseudo-random number generation, and Monte Carlo integration techniques.
Some useful references for this lecture and next:
Some other links:
This lecture will cover techniques for generating random numbers from a given distribution. The "acceptance-rejection" and "inverse transform" methods are the most common and powerful.
Some links:
References for this material:
In preparation for learning about an important real-life application of Monte Carlo techniques-- detector simulation -- I will cover basic physics of particle energy loss in matter.
I will discuss basic concepts and terminology related to detector simulation in particle and nuclear physics, and go through a simplified example.
I will cover the basic tools available in Geant4, and will go through a very simple Geant4 program. We'll discuss how to define a detector geometry, how to specify materials, how to define particles and physics processes, and how to generate primary particles. We may come back to some of these topics in more detail later.
Please bring your laptop to class. Here is the Geant4 page with installation instructions. Get version 4.9.4. Linux or MacOSX are best. Geant4 exists for Windows but personally I have no experience with it on that operating system, so I probably won't be able to help you with any issues. So if you have a Windows laptop, you might consider installing on a department Linux machine (and use your laptop to connect remotely). You might also consider this approach if your laptop is very old or slow.
As requested, I will review some basic concepts of object-oriented programming and C++ that are used in Geant4: classes, inheritance, virtual functions. As time permits we'll also start to look at a second example of a G4 program, with sensitive detectors.
Lots of C++ books are available, as well as lots of information online. Here are a few links I found by Googling around:
After discussion of the project, today we'll try out the N03 example, which allows interactive modification of geometry. Bring your laptop.
We'll try again with the interactive geometry example; I will also cover a bit more on physics lists.