(m, l, phi, theta)
| 30 | (4 * math.pi * math.factorial(l + m))) |
| 31 | |
| 32 | def SH(m, l, phi, theta): |
| 33 | if m == 0: |
| 34 | return SH_renormalization(l, m) * associated_legendre_polynomial(l, m, torch.cos(theta)) |
| 35 | elif m > 0: |
| 36 | return math.sqrt(2.0) * SH_renormalization(l, m) * \ |
| 37 | torch.cos(m * phi) * associated_legendre_polynomial(l, m, torch.cos(theta)) |
| 38 | else: |
| 39 | return math.sqrt(2.0) * SH_renormalization(l, -m) * \ |
| 40 | torch.sin(-m * phi) * associated_legendre_polynomial(l, -m, torch.cos(theta)) |
no test coverage detected