
Visualization of atomic orbitals

BRDF
Did someone ever try to Surface Plot hydrogen atomic orbitals? Or simply put, how to quicker visualize the following function in igor:
(r*r*exp(-r/3))^2*magsqr(sphericalHarmonics(2,0,theta,phee))
where r, theta, and phee are the spherical coordinates of a position in 3D space. The above expression is called the d_z2 orbital in chemistry.
The surface plot of the above expression should be similar to the 2nd graph from top in this page generated by Mathematica:
http://mathematica.stackexchange.com/questions/32378/is-there-something…
Thank you.
zh
But if I'm not mistaken, the spherical harmonic is rotationally symmetric, so the phee input isn't really needed...
Using these commands:
results in the attached image.
That's not a "surface plot", but neither was the picture you linked. I presume you actually want an isosurface plot. I'll let the Gizmo wizard weigh in of that's what you're looking for.
John Weeks
WaveMetrics, Inc.
support@wavemetrics.com
May 2, 2016 at 10:06 am - Permalink
I suggest you check out the SphericalHarmonicsDemo (File Menu->Example Experiments->Visualization...)
A.G.
WaveMetrics, Inc.
May 2, 2016 at 11:44 am - Permalink
Right, what I wanted is an isosurface plot. The atomic wave function (actually its magnitude squared) I wanted to visualize is given by the first attached picture (taken from the middle of the following page):
https://en.wikipedia.org/wiki/Hydrogen_atom
If visualized efficiently, the n=3, L=2, m=0 case is given by the second attached picture (the link I gave in the original post);another example is (for n=4, l=3, m=1) seen here:
https://en.wikipedia.org/wiki/Hydrogen_atom#/media/File:Hydrogen_eigens…
I am sure Igor can do this as well.
Below is my code to calculate the magnitude squared wave function. Then what's the easiest way to visualize it as the above examples show?
Thank you.
zh
May 4, 2016 at 05:10 am - Permalink
Thanks A.G., I did but couldn't figure out how to do it when radial coordinate kicks in. Please see my above post.
I wonder why the command window history is empty for many example experiments such as SphericalHarmonicsDemo?
zh
May 4, 2016 at 05:19 am - Permalink
You need to take a look at the procedure that is executed by the panel. That would lead you to the calcParametric() function.
As you can see, I'm generating a parametric surface which is appropriate for displaying the magnitude of the spherical harmonics. I expect that your expression is for probability density and as such you should generate the data for some range of radius values and then plot an isosurface for a desired constant or volume slices in Gizmo. To do that I recommend starting from a sufficiently dense cube, e.g.,
Then write a function to fill up the values. Here is a rough draft which I have not tested:
I hope this helps.
That's because we want to clean up the clutter left by all the attempts to tweak the display.
A.G.
WaveMetrics, Inc.
May 4, 2016 at 11:31 am - Permalink
To be a little greedy, would it be likely something like the DensityPlot3D be implemented in future igor versions?
https://reference.wolfram.com/language/ref/DensityPlot3D.html
(in Applications->Potentials and Wave Functions/, then a one command takes all the jobs)
Cheers,
zh
May 5, 2016 at 03:12 am - Permalink
I'm glad to see that you are now generating the desired patterns.
[quote]To be a little greedy, would it be likely something like the DensityPlot3D be implemented in future igor versions?
https://reference.wolfram.com/language/ref/DensityPlot3D.html[/quote]
I'm not exactly sure what I am looking at (besides an off-putting non orthographic projection). IMO, the problems with graphs like that is that they do not really give you sufficient information as dense data closer to the viewer obscures any structure behind it. I agree that an isosurface is not always ideal so it really depends if your display is stationary (i.e., single frame) or dynamic. My own preference is closer to the attached example which I generated from your code above (your resolution appears to be low).
If you would like the generating experiment and you have IP7 contact me at support@wavemetrics.com.
A.G.
WaveMetrics, Inc.
May 5, 2016 at 10:45 am - Permalink
May 5, 2016 at 11:10 am - Permalink
I see.
I do like your experiment but...I'm still with IP6.37 and OSX 10.6.8...I will contact you when I am ready.
Thank you!
zh
May 5, 2016 at 05:45 pm - Permalink
May 10, 2016 at 09:46 am - Permalink
July 10, 2016 at 04:24 am - Permalink