- #1
AndreasC
Gold Member
- 545
- 304
- TL;DR Summary
- I decided to do a 3D simulation/visualisation of the behavior of a hydrogen atom in various energy states. However I am not a programmer and I don't know what the best way to go about doing that would be.
First of all, I got to decide what I'm going to use to make the simulation. I know Fortran, Matlab etc but I'm pretty sure these won't help me much. I learned some C++ a couple years ago but my knowledge is rusty, however I think I'm going to use that combined with Unreal Engine, since it makes it easier to create the environment. Of course that means I'm going to have to learn some UE basics.
My idea was fixing the nucleus, and then splitting up the 3d space into discrete points, with probabilities assigned to them according to the wave function. I'm going to have one image of the electron representing the mean position which will be hardcoded, and then and then at each time step the program will pick random points all over the space and checking if it succeeds or fails in finding an electron there according to the probabilities. It will stop when a predetermined number of electrons has been found, say 20. At that point it will display ghost images of all these electrons all at once, to give the user a rough idea of the probability distribution. The actual algorithm may need some tweaks since it sounds like it might be somewhat intensive for a complicated wavefunction if I am to do this in every time step. Or maybe not, idk. I do have an idea to maybe make it more efficient though. Then maybe I could have another algorithm calculating the mean position of the ghost images and create another ghost image to compare it with the hardcoded result.
Is this a good approach? What else would you suggest? Could I potentially expand it for even more complicated states/atoms while maintaining any accuracy whatsoever? Is using Unreal Engine a good idea or are there better options?
My idea was fixing the nucleus, and then splitting up the 3d space into discrete points, with probabilities assigned to them according to the wave function. I'm going to have one image of the electron representing the mean position which will be hardcoded, and then and then at each time step the program will pick random points all over the space and checking if it succeeds or fails in finding an electron there according to the probabilities. It will stop when a predetermined number of electrons has been found, say 20. At that point it will display ghost images of all these electrons all at once, to give the user a rough idea of the probability distribution. The actual algorithm may need some tweaks since it sounds like it might be somewhat intensive for a complicated wavefunction if I am to do this in every time step. Or maybe not, idk. I do have an idea to maybe make it more efficient though. Then maybe I could have another algorithm calculating the mean position of the ghost images and create another ghost image to compare it with the hardcoded result.
Is this a good approach? What else would you suggest? Could I potentially expand it for even more complicated states/atoms while maintaining any accuracy whatsoever? Is using Unreal Engine a good idea or are there better options?