Current Wavefunction:

This is a numerical simulation of a particle in a box with an initial wavefunction as specified above, directly integrating Schrodinger's equation over time using a low order Runge-Kutta method.

Unfortunately, even after trying for several days I've been unable to get rid of the noise that shows up in the numerical derivatives, and it kind of makes the rest of the project impossible. My initial goal was to have you specify a potential function by clicking on the canvas and drawing it, then sending a gaussian packet towards the potential and seeing what happens (maybe even quantifiying the amount transmitted vs. reflected). The drawing functionality works, if you want to try it out (left click places a point, right click removes it), but I didn't implement its interaction with the wavefunction because there were too many other problems I was tring to fix with the dynamics of the wavefunction. This interaction with a dynamic potential was why I was numerically integrating the PDE rather than decomposing it into a bunch of energy eigenstates and using that for the time evolution.

You can see the code, written in Javascript (which is definitely not the ideal language for this kind of stuff), at this link.

Some takeaways and things I've learned from this project:

This project definitely took me longer than I was anticipating spending (I've been working on it on and off for probably four days now, during finals - haha), and so even though I'm not totally satisfied with the result, I thought I'd still put it out there. Thanks for an awesome semester, Prof. Charman!