My concrete problem is that I want to calculate cross-sections for photoionization transitions in argon in Python. For example from the excited state 3S^23p^56d into the continuum. For this, I found Cooper-Zare theory in several sources, including "Introduction to Photoelectron Angular Distributions". The formula for the cross section is, according to the above-mentioned book(p.87): (i am doing some reverse engineering here) where is the initial azimuthal quantum number (in the upper case: , because of the d-state) and where is the principal quantum number (here ). And which originates from where defines a unit vector in the direction of the photo-electron momentum vector. And this comes from: which is assumed to be the final state for the dipole approximation with the operator for linearly polarized light: My problem is that I don't know where to get the phase shifts of the partial wave, which are used in the formula for . I would be very grateful for any tips. import scipy.special as spe import scipy.integrate as integrate
#radial wave function def psi_R(r,n=1,l=0): rr=r coeff = np.sqrt((2.0/n)**3 * spe.factorial(n-l-1) /(2.0nspe.factorial(n+l))) laguerre = spe.assoc_laguerre(2.0rr/n,n-l-1,2l+1) return coeff * np.exp(-rr/n) * (2.0*rr/n)**l * laguerre
the radial portion of the final-state wave function divided by kr
def G_kl (r,k,l,d_l): gg=(np.exp(1jd_l)np.sin(kr-lnp.pi/2)+np.exp(-1j*(kr+lnp.pi/2))np.exp(-2jd_l)np.sin(d_l))/(kr) return gg
e radial dipole integral
def R_l0(n,l0,l,k,d_l): integ= integrate.quad(lambda r: np.real(r**3*psi_R(r,n,l0)*G_kl(r,k,l,d_l)), 0, np.inf,limit=100000, epsabs=np.inf) return integ[0]
asymmetry parameter β
def beta(n,l,k,dl_p1,dl_m1): R_p1=R_l0(n,l,l+1,k,dl_p1) if l-1>=0: R_m1=R_l0(n,l,l-1,k,dl_m1) else: R_m1=0 chi= l*(l-1)R_m1**2+(l+1)(l+2)R_p1**2-6l*(l+1)R_m1R_p1np.cos(dl_p1-dl_m1) epsi=(2l+1)(lR_m12+(l+1)*R_p12)
return chi/epsi
def cross_sec(n,l0,k,dl_p1,dl_m1): r_lp1=R_l0(n,l0,l0+1,k,dl_p1) r_lm1=R_l0(n,l0,l0-1,k,dl_m1) return 16np.pi**2/(3(2l0+1))(l0*r_lm12+(l0+1)*r_lp12)


