It turns out there was a bug in my coordinate change code:

mockR = N.sqrt(mockX**2 + mockY**2, mockZ**2)

when I should have had:

mockR = N.sqrt(mockX**2 + mockY**2 + mockZ**2)

Why it didn't come up with an error when there was a comma there, I don't know! Regardless, now I get the following when I plot the original z versus the converted back z:

mockR = N.sqrt(mockX**2 + mockY**2, mockZ**2)

when I should have had:

mockR = N.sqrt(mockX**2 + mockY**2 + mockZ**2)

Why it didn't come up with an error when there was a comma there, I don't know! Regardless, now I get the following when I plot the original z versus the converted back z:

And now I have written some lovely python functions to do these conversions for me in the future:

def xyz2thetaPhiR(thisx,thisy,thisz):

radial = N.sqrt(thisx**2 + thisy**2 + thisz**2)

polar = N.sqrt(thisx**2 + thisy**2)

theta = N.arctan2(polar, thisz)

phi = N.arctan2(thisy, thisx)

return [theta,phi,radial]

def thetaPhiR2XYZ(theta,phi,radial):

thisx = radial*N.cos(phi)*N.sin(theta)

thisy = radial*N.sin(phi)*N.sin(theta)

thisz = radial*N.cos(theta)

return [thisx,thisy,thisz]

Now to run the correlation function on these ra/dec coordinates...

## No comments:

## Post a Comment