Computing Majorana "Stars"

I'm trying to implement Majorana's "stellar representation" of a spin-$j$ system as $2j$ points on the $2$-sphere in python. Consulting papers including Extremal quantum states and their Majorana constellations (Bjork et al., 2015), I convert a complex state vector (nominally indexed from -$j$ to $j$) to its corresponding polynomial with:

def vector_to_polynomial(vector):
components = vector.tolist()
j = (len(components)-1.)/2.
coeffs = []
i = 0
for m in numpy.arange(-1*j, j+1, 1):
coeff = math.sqrt(math.factorial(2*j)/(math.factorial(j-m)*math.factorial(j+m)))*components[i]
coeffs.append(coeff)
i += 1
return coeffs[::-1]

I use a polynomial solver to determine the roots, and stereographically project them to the $2$-sphere, taking into account when the degree of the polynomial is less than $2j$ by adjoining some poles (latter code not included).

def root_to_xyz(root):
if root == float('inf'):
return [0,0,1]
x = root.real
y = root.imag
return [(2*x)/(1.+(x**2)+(y**2)),\
(2*y)/(1.+(x**2)+(y**2)),\
(-1.+(x**2)+(y**2))/(1.+(x**2)+(y**2))]

See Wikipedia. Now QuTiP has an implementation of the Husimi Q function aka qutip.spin_q_function(state, theta, phi), evaluated at points on the sphere. The zeros of Husimi Q coincide with the Majorana stars. Comparing the results of the above with the QuTiP implementation, however, I find that they only match for integer spins, but not half-integer spins, aka for odd-dimensional systems, but not even dimensional systems. I've tried to code up a few other versions of the Majorana polynomial given in other papers, but the same problem seems to recur. Am I missing something more fundamental? Any advice is welcome!

• Have you considered that Qutip might be wrong? Have you contacted the authors of Qutip? I've created the "Qutip" tag and added it to your question, since a lot of people use Qutip and it would be nice for the Qutip user community to have a tag they can follow if they wish. Jul 8 '18 at 7:19
• I am not sure if this is the cause of your trouble, but I think that there is a minus sign error in the third equation of the stereographic projection which should be (1-x2-y2)/(1+x2+y2) Aug 12 '18 at 16:56