(* Creating the HTML - for each example *) page := Module[ {dirhandle,ofile,mcol,mrow,mcollast,mc,nex,endpage,rpoints,mrpoints,r,sr,file1,file2,if1,if2}, If[!ifpage, Goto[endpage]]; If[Head[handle] =!= String, Print["Error: page: handle is not a string: ", handle]; Goto[endpage]]; dirhandle = ToFileName[{dirhtml,handle}]; If[FileType[dirhandle] =!= Directory, CreateDirectory[dirhandle]]; ofile = ToFileName[dirhandle, "index.htm"]; of = OpenWrite[ofile, FormatType -> OutputForm, PageWidth -> Infinity]; rpoints = {0, 1, 2, 5, 10, 15, 20}; rpoints = Table[n, {n, 0, 100}]; mrpoints = Length[rpoints]; " \n \n "<>name<>"\n \n \n \n \n

"<>name<>" w(r) = "<>wname<>"

\n \n

The potential (red line is the energy)

\n \n

Calculation of classical trajectories

\n \n

Plot of trajectories on the potential surface

\n \n \n

Mapping (y, t) –> (qx, qy)

\n \n \n

Zeroes of the Jacobian

\n
Left: red curves show the points where Jacobian of the transformation (y, t) –> (qx, qy) is zero.
Right: blue curves show the points where Jacobian of the transformation (y, t) –> (px, py) is zero. \n \n

Caustics

\n
The same as above, but mapped into (qx, qy) plane. \n

Exact calculations

\n \n

Phase shift vs. angular momentum for partial waves

\n \n \n

Density plots

\n \n

Absolute value of the wavefunction

\n \n \n

Real part of the wavefunction

\n \n Animation \n \n

Contour plots

\n \n

Absolute value of the wavefunction

\n

Grey area - |psi| < 1, white - 1 < |psi| < 2, red - |psi| > 2. \n \n

Real part of the wavefunction

\n

Pink - Re psi > 0, blue - Re psi < 0, darker - |Re psi| > 2. \n Animation \n

Semiclassical calculations

\n " // o; If[FileType[ToFileName[dirhandle, "ntraj.gif"]] === File, " \n

Number of contributing trajectories

\n

Dark area corresponds to one or no trajectories, lighter areas correspond to multiple trajectories. \n " // o]; " \n

Density plots

\n \n

Absolute value of the wavefunction

\n \n \n

Real part of the wavefunction

\n \n Animation \n \n

Contour plots

\n \n

Absolute value of the wavefunction

\n

Grey area - |psi| < 1, white - 1 < |psi| < 2, red - |psi| > 2. \n \n

Real part of the wavefunction

\n

Pink - Re psi > 0, blue - Re psi < 0, darker - |Re psi| > 2. \n Animation \n \n

Comparison of exact and semiclassical wavefunctions

\n

Absolute value. Left - exact, right - semiclassical

\n
\n

Real part. Left - exact, right - semiclassical

\n

Animate

Animate
\n " // o; Do[ r = rpoints[[nrpoints]]; sr = ToString[r]; file1 = ToFileName[subdirhtml, "chi" <> sr <> ".gif"]; file2 = ToFileName[subdirhtml, "psi" <> sr <> ".gif"]; if1 = (FileType[file1] === File); if2 = (FileType[file2] === File); If[if1 || if2, ("

R = " <> sr <> "

\n \n ") // o; ]; If[if1, ("

Dependence of angle chi on angle phi for the given R = " <> sr <> "

\n \n sr <> ".gif\">\n " )// o; ]; If[if2, ("

Primitive semiclassical (black) vs. exact wavefunction (red curves) for the given R = " <> sr <> ".
Plots show absolute value, real part, and number of contributing trajectories as a function of x

\n \n sr <> ".gif\">\n " )// o; ]; ,{nrpoints, mrpoints}]; "

\n \n

More examples of potentials

\n " // o; mcol = 5; mrow = Ceiling[mexamp/mcol]; mcollast = mexamp - (mrow-1)mcol; Do[ "" // o; mc = If[nrow==mrow,mcollast,mcol]; Do[ nex=(nrow-1)mcol+nc; " If[nex==nexamp, " BGCOLOR=\"#FFFF00\"", ""] <> "> tabexamp[[nex+1,2]] <> "/index.htm\"> tabexamp[[nex+1,2]] <> "/pot.gif\" BORDER = \"0\" ALT=\"" <> tabexamp[[nex+1,3]] <> "\" TITLE=\"" <> tabexamp[[nex+1,3]] <> "\">" // o; , {nc,mc}]; "" // o; , {nrow, mrow}]; "
\n \n

Table of examples of two-dimensional potentials\n \n \n \n \n " // o; "" // o; Close[of]; Label[endpage]; ];