110
7 Coulomb Wave Functions
Y=100 * Y;
Z=100 * Z;
R = sqrt(X.^2 + Y.^2 + Z.^2);
zin = R-Z;
[Cr, ic, ir] = unique(zin); % R-Z without repetition
%
k=2;
% parameter
gamma = 1;
%
% wave function:
obj = coulombscatt(gamma, k, Cr, 0); % z = 0 due to zin
% to optimize the computation
psi1 = obj.psik(ir);
psi = reshape(psi1,size(R));
psik = exp(i * k * Z). * psi;
% as z = 0 in coulombscatt
%
% color coded visualization
figure, surface(Z,X,Y,real(psik)), shg
xlabel(’z’), shading interp, view(64,12), camlight
The structure of the Coulomb wave function (7.16) is uncovered by Fig. 7.4. The
corresponding script ( Coulscattfun_example.m) is
% visualization of Coulomb wave function
theta = [linspace(0,pi,100)]; % spherical angles
phi = linspace(0,2 * pi,100);
%
[Phi, Theta] = meshgrid(phi,theta);
R = 100;
% radial coordinate
Z = R. * cos(Theta);
k = 2;
% wave function parameter
gamma = 1;
%
zin = R-Z;
[Cr, ic, ir] = unique(zin); % R-Z without repetition
% wave function:
obj = coulombscatt(gamma, k, Cr, 0); % z = 0 due to zin
psi1 = obj.psi;
psi1 = psi1(ir);
psi = reshape(psi1,size(Z));
%
% absolute value and
psiabs = abs(psi);
Rsa = psiabs . * sin(Theta); % visualization
Xsa = Rsa . * cos(Phi);
Ysa = Rsa . * sin(Phi);
Zsa = psiabs . * cos(Theta);
figure, surf(Zsa,Xsa,Ysa)
xlabel(’z’)
axis equal, view(29.3,26), shg
Précédent

- 122/287

Suivant