Betrifft: Grenzflaechendiagramme der Eigenfunktionen des H-Atoms
Ich moechte hier eine andere Darstellungsmoeglichkeit vorschlagen.
Mit Density- und ContouPlot kann man die Orbitale auch sehr schoen als
"Dichtewolke" im Raum darstellen.
Markus
(Local B) In[5]:=
Needs["Algebra`Trigonometry`"];
Needs["Graphics`ParametricPlot3D`"]
Formel fuer das Wasserstoff-Orbital n=1, l=1, m=+/-1 in Einheiten von a0 =
h^2/(m e^2):
(Local B) In[8]:=
1/(2 Sqrt[6]) r Exp[-r/2] *
(SphericalHarmonicY[1, 1, phi, theta] - SphericalHarmonicY[1, -1, phi, theta]) / 2
Die obige Formel wird vereinfacht und compiliert:
(Local B) In[9]:=
PsiSpherical = Compile[{{r, _Real}, {phi, _Real}, {theta, _Real}},
Evaluate[Abs[ComplexToTrig[%]]]]
Schnell zur Kontrolle ein 3D-Plot:
(Local B) In[10]:=
SphericalPlot3D[PsiSpherical[1,phi,theta], {phi,0,2Pi,Pi/15}, {theta,0,Pi}];
Hier implementiere ich die obige Psi-Funktion fuer Cartesische Koordianten:
(Die Umrecchnung kann man auch dem Package Calculus`VectorAnalysis` mit dem
Befehl CoordinatesFromCartesian[{x,y,z}, Spherical] entnehmen!)
(Local B) In[48]:=
PsiCartesian =
Compile[
{{x, _Real}, {y, _Real}, {z, _Real}},
With[
{r = Sqrt[x^2 + y^2 + z^2],
theta = If[x == 0., Pi/2,
If[y == 0., 0., ArcTan[x,y]]
]},
phi = If[r == 0., 0., ArcCos[z/r]];
Abs[-(r Cos[theta] Sin[phi])/(8 Sqrt[Pi Exp[r]])]
],
{{r, _Real}, {phi, _Real}, {theta, _Real}}
];
Nun kan man sich mit dem Density-/ContourPlot-Befehl Scheiben der
e-Dichteverteilung wie bei einem Tomographen angeben lassen:
(Local B) In[17]:=
Do[DensityPlot[PsiCartesian[x,y,z],{x,-10,10},{y,-10,10}, PlotPoints -> 50,
PlotRange -> {0, 0.052}, Mesh -> False], {z,-10,0,1}]
(Local B) In[23]:=
Do[ContourPlot[PsiCartesian[x,y,z],{x,-10,10},{y,-10,10}, PlotPoints -> 50,
PlotRange -> {0, 0.052}], {z,-8,0,1}]
Will man die e-Wolke von Aussen betrachten, muss man ueber die Tiefe des
Raumes, d.h. ueber die z-Richtung summieren.
dp = Table[2 Sum[PsiCartesian[x,y,z], {z,0,10,0.5}], {y,-10,10,0.5},
{x,-10,10,0.5}];
(Local B) In[53]:=
ListDensityPlot[dp, Mesh -> False];
(Local B) In[55]:=
ListContourPlot[dp];
Markus van Almsick
---------------------------------------------------------
Max-Planck-Institut fuer Biophysik, Frankfurt am Main
Application Consultant, Wolfram Research Inc.
|