2

I have an image of a protoplanetary disk, from which I would like to measure the distance of various points from the centre. See below image for an example, where I would like to measure the distance between the green x's.

It is straightforward to measure the distances as projected on the sky, since I know the distance to the disk (110pc), and the angular separation in arcsecs.

However, the disk is inclined (i=43$^\text{o}$) and rotated by a position angle (PA=146$^\text{o}$). I would like to know how to calculate the deprojected distance between two points.

enter image description here

lucas
  • 1,386
  • 6
  • 15

2 Answers2

3

@Greg Miller's point is that the rotation angle doesn't count. The only measurement you care about is the inclination. It makes a point's arc distance from the major axis of the apparent ellipse cos(43) times the distance you'd see if the protoplanet was not inclined. Take the square root of the sum of the squares of its arc distance from the minor axis and its corrected distance from the major axis and you'll have the "deprojected" distance.

BTW, unless your object is very near the celestial equator you won't have the same scale for your axes. It's just a labeling problem though: you can't say your X axis is right ascension.

stretch
  • 1,726
  • 6
  • 10
  • Thanks, yes you're right, I think I thought the problem was more complicated than it actually was. I've posted my solution in case it's helpful to anyone. – lucas Apr 30 '22 at 13:23
1

My eventual solution was to rotate the image using the 2D rotation matrix, then deproject by accounting for the inclination. In Python, this looks like:

def sky_to_disk(x, y, inc, PA):
# Rotate (x, y) by PA (deg)
x_rot = x * np.cos(np.radians(PA)) + y * np.sin(np.radians(PA))
y_rot = - x * np.sin(np.radians(PA)) + y * np.cos(np.radians(PA))

# Deproject (x_rot, y_rot) by inc (deg)
x_d, y_d  = x_rot, y_rot / np.cos(np.radians(inc))

return x_d, y_d

lucas
  • 1,386
  • 6
  • 15
  • When you add a solution to your own question you should identify it as the right answer so you'll get the credit. – stretch Apr 30 '22 at 17:08
  • @stretch disagree about "getting credit" or there being a specific "should" at all. Accepting a particular answer or no answer at all is completely up to the OP and there are several considerations they may evaluate before choosing a corse of action. It is helpful to the site and to future readers if we eventually choose a best answer to accept, but that's strictly up to the OP to decide. – uhoh May 02 '22 at 21:50
  • I didn't know that someone else could decide which answer is best. Who is it that makes the decision? – stretch May 03 '22 at 02:02
  • In stack exchange we try to think as much about future readers as possible and much less about who gets the "credit" or reputation points. So if there's an answer post that best answers the question we usually accept it no matter who the author is. That way when the question shows up in future searches folks will see that there's an accepted answer and which one it is, and search engines will see that acceptance as well. – uhoh May 23 '22 at 19:25
  • Okay thanks, I have accepted my own answer incase it may help others in the future – lucas May 24 '22 at 10:40