Skip to content
This repository was archived by the owner on Nov 10, 2025. It is now read-only.

Commit aeb8c3a

Browse files
fixup wigner symmetries
1 parent d388aba commit aeb8c3a

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

src/ryd_numerov/angular/utils.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,12 @@ def calc_wigner_3j(j1: float, j2: float, j3: float, m1: float, m2: float, m3: fl
5151

5252
# odd permutation -> sort seccond smallest j to be j2
5353
if j3 < j2:
54-
symmetry_factor *= (-1) ** (j1 + j2 + j3)
54+
symmetry_factor *= minus_one_pow(j1 + j2 + j3)
5555
j1, j2, j3, m1, m2, m3 = j1, j3, j2, m1, m3, m2 # noqa: PLW0127
5656

5757
# sign of m -> make m1 positive (or m2 if m1==0)
5858
if m1 <= 0 or (m1 == 0 and m2 < 0):
59-
symmetry_factor *= (-1) ** (j1 + j2 + j3)
59+
symmetry_factor *= minus_one_pow(j1 + j2 + j3)
6060
m1, m2, m3 = -m1, -m2, -m3
6161

6262
# TODO Regge symmetries
@@ -118,10 +118,10 @@ def calc_wigner_9j(
118118

119119
# odd permutations of rows and columns-> make j2 <= j3 and j4 <= j7
120120
if js[2] < js[1]:
121-
symmetry_factor *= (-1) ** sum(js)
121+
symmetry_factor *= minus_one_pow(sum(js))
122122
js = [js[0], js[2], js[1], js[3], js[5], js[4], js[6], js[8], js[7]]
123123
if js[6] < js[3]:
124-
symmetry_factor *= (-1) ** sum(js)
124+
symmetry_factor *= minus_one_pow(sum(js))
125125
js = [*js[0:3], *js[6:9], *js[3:6]]
126126

127127
# reflection about diagonal -> make j2 <= j4

0 commit comments

Comments
 (0)