def test_orthogonality(normalization, n=4):
polar = sympy.Symbol('theta', real=True)
azimuthal = sympy.Symbol('phi', real=True)
tree = numpy.concatenate(
orthopy.sphere.sph_tree(
n, polar, azimuthal, normalization=normalization,
symbolic=True
))
vals = tree * sympy.conjugate(numpy.roll(tree, 1, axis=0))
for val in vals:
integrand = sympy.simplify(val * sympy.sin(polar))
assert sympy.integrate(
integrand,
(azimuthal, 0, 2*pi), (polar, 0, pi)
) == 0
return
评论列表
文章目录