<p><code>r_ast</code> is a vector that goes from the center of the asteroid to each vertex of the shape model as if you had stuck a set of rods in the center of a potato and pointing along the long axis, to the pole on top and 90 degrees to these to give X,Y,Z directions. </p>

<p>The matrices above that you give then transform these <code>r_ast</code> vectors for the co-ordinates of the surface of the asteroid into the ecliptic plane as a function of time as the asteroid rotates, giving you <code>r_ecl</code>. It says in the Kaasalainen paper (I think) that <code>r_ecl</code> has an origin shifted to the center of the asteroid. If you are wanting a visualization of what the asteroid looks like relative to the Earth or Sun etc, then you will need to calculate the Sun->asteroid vector and the Sun->Earth vector using e.g. <a href="https://ssd.jpl.nasa.gov/horizons.cgi" rel="nofollow noreferrer">JPL HORIZONS</a> and using the Vector Table ephemeris type or a programmatic wrapper to this (e.g. <a href="https://astroquery.readthedocs.io/en/latest/jplhorizons/jplhorizons.html" rel="nofollow noreferrer">astroquery</a>) or the <a href="https://naif.jpl.nasa.gov/naif/toolkit.html" rel="nofollow noreferrer">NAIF SPICE toolkit</a> and getting or generating a SPK kernel file for the asteroid (the normal e.g. <code>de430.bsp</code> JPL planetary ephemeris will handle the Sun->Earth part)</p>

CC BY-SA 4.0
2019-02-13T08:27:58.483Z
Thanks for your answer, it was really helpful and I've made a lot of progress on my project.  I've asked a follow up question in case you are interested in seeing where your answer took me :)  https://astronomy.stackexchange.com/questions/29575/rendering-asteroid-orientation-as-seen-from-earth
ty.
CC BY-SA 4.0
2019-02-08T18:55:47.447Z
2019-02-08T18:55:47.447Z
astrosnapper
<p>I'm working with data from the <a href="https://astro.troja.mff.cuni.cz/projects/asteroids3D/web.php?page=db_description" rel="nofollow noreferrer">DAMIT database</a> of asteroid shape models.  I'm adding them to a visualization in which the sun is at [0, 0, 0] and the X, Y axes constitute the ecliptic plane of the solar system.</p>

<p>Each asteroid model comes with some attributes that define its orientation and spin:</p>

<ul>
<li>λ (ecliptic longitude), </li>
<li>β (ecliptic latitude)</li>
<li>P (sidereal rotation period)</li>
<li>φ0 (initial rotation angle)</li>
<li>JD0 (initial date).</li>
</ul>

<p>I've applied the matrix formulas suggested by the folks at DAMIT:</p>

<p><a href="https://i.sstatic.net/FQaHe.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/FQaHe.png" alt="ecliptic rotation"></a></p>

<p>in which</p>

<p><img src="https://i.sstatic.net/Xtuln.png" alt="matrix definitions[2]"></p>

<p>This is where I get confused.  My understanding is that my visualization uses a heliocentric ecliptic coordinate system.</p>

<p>I set <code>r_ast</code> to the XYZ location of a vertex in my visualization.  I'm not sure this is correct.</p>

<p>Then I compute <code>r_ecl</code> from the equation above.  But I think variables λ and β are angles in a geocentric ecliptic coordinate system and I need to do some transformation into heliocentric ecliptic coordinates.</p>

<p>Is my approach correct and if so, how can I convert the asteroid's rotation to my visualization's heliocentric ecliptic coordinate system?</p>

CC BY-SA 4.0
2019-02-07T15:23:13.207Z
$\lambda$ and $\beta$ are the co-ordinates of the asteroid's pole in a heliocentric ecliptic frame so I think you are OK if this is also what your visualization is using
astrosnapper
CC BY-SA 4.0
2019-02-07T16:23:00.850Z
Thanks @astrosnapper.  How can you tell λ  and β are heliocentric rather than geocentric in this case?  From this table of ecliptic coordinate notation on Wikipedia I guessed they were geocentric: https://en.wikipedia.org/wiki/Ecliptic_coordinate_system#Spherical_coordinates
ty.
CC BY-SA 4.0
2019-02-07T16:46:10.113Z
Technically it doesn't specify the origin (and it should) but since the asteroid is in orbit around the Sun and not the Earth, heliocentric vs geocentric seems most likely
astrosnapper
CC BY-SA 4.0
2019-02-08T18:29:39.590Z
Thank you @astrosnapper. One more point of clarification. Is it correct to set `r_ast` to the asteroid's heliocentric ecliptic rectangular coordinates? The website describes `r_ast` as a vector in the "asteroid co-rotating coordinate frame" but I'm not sure what that means here.
ty.
<asteroids><coordinate>
Transform asteroid rotation to heliocentric ecliptic coordinates
ty.
# Transform asteroid rotation to heliocentric ecliptic coordinates

(Asked by: username_0 on 2019-02-07)

I'm working with data from the [DAMIT database](https://astro.troja.mff.cuni.cz/projects/asteroids3D/web.php?page=db_description) of asteroid shape models. I'm adding them to a visualization in which the sun is at [0, 0, 0] and the X, Y axes constitute the ecliptic plane of the solar system.

Each asteroid model comes with some attributes that define its orientation and spin:

* λ (ecliptic longitude),
* β (ecliptic latitude)
* P (sidereal rotation period)
* φ0 (initial rotation angle)
* JD0 (initial date).

I've applied the matrix formulas suggested by the folks at DAMIT:

[![ecliptic rotation](https://i.sstatic.net/FQaHe.png)](https://i.sstatic.net/FQaHe.png)

in which

![matrix definitions[2]](https://i.sstatic.net/Xtuln.png)

This is where I get confused. My understanding is that my visualization uses a heliocentric ecliptic coordinate system.

I set `r_ast` to the XYZ location of a vertex in my visualization. I'm not sure this is correct.

Then I compute `r_ecl` from the equation above. But I think variables λ and β are angles in a geocentric ecliptic coordinate system and I need to do some transformation into heliocentric ecliptic coordinates.

Is my approach correct and if so, how can I convert the asteroid's rotation to my visualization's heliocentric ecliptic coordinate system?

**Tags:** asteroids, coordinate

> **Comments:**
> **username_1**: $\lambda$ and $\beta$ are the co-ordinates of the asteroid's pole in a heliocentric ecliptic frame so I think you are OK if this is also what your visualization is using  
> **username_0**: Thanks @username_1.  How can you tell λ  and β are heliocentric rather than geocentric in this case?  From this table of ecliptic coordinate notation on Wikipedia I guessed they were geocentric: https://en.wikipedia.org/wiki/Ecliptic_coordinate_system#Spherical_coordinates  
> **username_1**: Technically it doesn't specify the origin (and it should) but since the asteroid is in orbit around the Sun and not the Earth, heliocentric vs geocentric seems most likely  
> **username_0**: Thank you @username_1. One more point of clarification. Is it correct to set `r_ast` to the asteroid's heliocentric ecliptic rectangular coordinates? The website describes `r_ast` as a vector in the "asteroid co-rotating coordinate frame" but I'm not sure what that means here.  

---

## 1 answers

### Answer by username_1 on 2019-02-08. Score: 1 | Accepted answer

`r_ast` is a vector that goes from the center of the asteroid to each vertex of the shape model as if you had stuck a set of rods in the center of a potato and pointing along the long axis, to the pole on top and 90 degrees to these to give X,Y,Z directions.

The matrices above that you give then transform these `r_ast` vectors for the co-ordinates of the surface of the asteroid into the ecliptic plane as a function of time as the asteroid rotates, giving you `r_ecl`. It says in the Kaasalainen paper (I think) that `r_ecl` has an origin shifted to the center of the asteroid. If you are wanting a visualization of what the asteroid looks like relative to the Earth or Sun etc, then you will need to calculate the Sun->asteroid vector and the Sun->Earth vector using e.g. [JPL HORIZONS](https://ssd.jpl.nasa.gov/horizons.cgi) and using the Vector Table ephemeris type or a programmatic wrapper to this (e.g. [astroquery](https://astroquery.readthedocs.io/en/latest/jplhorizons/jplhorizons.html)) or the [NAIF SPICE toolkit](https://naif.jpl.nasa.gov/naif/toolkit.html) and getting or generating a SPK kernel file for the asteroid (the normal e.g. `de430.bsp` JPL planetary ephemeris will handle the Sun->Earth part)

> **Comments:**
> **username_0**: Thanks for your answer, it was really helpful and I've made a lot of progress on my project.  I've asked a follow up question in case you are interested in seeing where your answer took me :)  https://astronomy.stackexchange.com/questions/29575/rendering-asteroid-orientation-as-seen-from-earth  

---

