3

I have a question regarding epochs. I want to show the night sky as a super-ancient observer would see it or someone in the far flung future. Should I set the year and epoch to be the same?

The three scenarios outlined in Brandon Rhodes Halley Comet example are as follows.

  1. my_star.compute(epoch='-100000')
  2. my_star.compute(-100000',epoch='-100000')
  3. my_star.compute('-100000')

To me, based on his descriptions of equatorial telescopes and the second example's description of a contemporary observer in 1066, I believe I should choose the second option. That is, to set both epoch and year to the ancient or future years.

halley.compute(epoch='1066')
This is probably useless: it computes the current position of halley, but returns coordinates relative to the direction the earth’s axis was pointing in the year 1066. Unless you use a Conquest-era star atlas, this is not useful.

halley.compute('1066', epoch='1066')
This is slightly more promising: it computes the position of halley in 1066 and returns coordinates for the orientation of the earth in that year. This might help you visualize how the object was positioned above contemporary observers, who considered it an ill omen in the imminent conflict between King Harold of England and William the Bastard. But to plot this position against a background of stars, you would first have to recompute each star’s position in 1066 coordinates.

halley.compute('1066')
This is what you will probably use most often; you get the position of halley in the year 1066 but expressed in the 2000 coordinates that your star atlas probably uses.

Why I am so unsure on the depictions I got are because Ian Ridpath, and Rick Pogge got different results. Links for these relevant results are posted in the github issue. Rick says he is also corroborated by results from StarryNight. I don't mind if I am wrong, I just see the Halley example that I think is choicest clashing with results by a few people.

I can't post many links on stackoverflow yet (or images!), but I was very thorough in documenting in my github issue for this at https://github.com/brandon-rhodes/pyephem/issues/61. I just wanted to be very clear on what I am looking for and show you the possible scenarios.

If you would like two working IPython notebooks to test, please see Part1: proper-motion.ipynb and Part2: big-dipper.ipynb in my notebooks folder on github.

There's a lot of code in the big-dipper.ipynb example, so I wont post it in the tracker, but I'll make a blog post on it soon. Please see the github issue link above for all of the code and images!

I believe that the Varying Epoch and Year Together depiction is the one I want regarding an ancient observer seeing the night sky in his perspective, and a futuristic observer seeing the night sky in his own perspective. This is rather hard to comprehend sometimes, so I would absolutely love some community input on this subject.

Here is the smaller portion of code. The big-dipper.ipynb notebook shows more thorough scenarios.

%pylab inline
import ephem

UMa = {
'dubhe': 'αUMa', #HIP 54061
'merak': 'βUMa', #HIP 53910
'phecda':'γUMa', #HIP 58001
'megrez':'δUMa', #HIP 59774
'alioth':'εUMa', #HIP 62956
'mizar': 'ζUMa', #HIP 65378
'alcor': '80UMa',#HIP 65477
'alcaid':'ηUMa', #HIP 67301
}

def const(const,year=None,epoch='2000',title=None):
    s = []

    for star in const.keys():
        s.append(ephem.star(star.capitalize()))
    
    for i in range(len(s)):
        if(year!=None):
            s[i].compute(year,epoch=epoch)
        else:
            s[i].compute(epoch=epoch)
    
    tau = 2.0 * pi
    degree = tau / 360.0
    hour = tau / 24.0

    ra_list = [star.a_ra / hour for star in s]
    dec_list = [star.a_dec / degree for star in s]

    mag_array = np.array([star.mag for star in s])
    size_array = (5 - mag_array) ** 1.5 * 4

    scatter(ra_list,dec_list,size_array)
    if(title!=None):
        pyplot.title(title)
    gca().xaxis.grid(True)
    gca().yaxis.grid(True)
    gca().invert_xaxis()
    return s
Community
  • 1
  • 1
  • Would you please explain what you mean by *"a contemporary observer in 1066"*? You go on to say *"But to plot [Halley's comet] position against a background of stars, you would first have to recompute each star’s position in 1066 coordinates."* No. You recompute Halley's comet onto the celestial orientation of the time. – Weather Vane Nov 17 '14 at 20:58
  • @WeatherVane Hi, sorry to me that sounds like the same thing? Could you please explain the difference? By 'a contemporary observer in 1066' I was quoting Brandon Rhodes example in the [fixed-objects-precession-and-epochs](http://rhodesmill.org/pyephem/tutorial.html#fixed-objects-precession-and-epochs) tutorial. My desired outcome is to see the sky as an ancient person would at his location in history. Thanks for the quick reply! – electricwizard Nov 17 '14 at 21:18
  • Seeing as your source says "Realize that in these examples I have been lazy" then forgives himself with three scenarios you quote, I would take his advice with a pinch of salt. I made a computer Orrery of the solar system with all known planets and moons (but not comets) adjustable by time. To do so, I needed their positions and motion vectors at a known point in time, and their physical data, much of which I obtained from JPL published data. To include a comet would be no different. What has any distinction between epochs and years to do with it? You rewind from known conditions by X seconds. – Weather Vane Nov 17 '14 at 22:17
  • @electricwizard I do not use pyephem so I do not know the wheels behind it but in general: 1. if you set epoch that means all the computations in time are relative to that point so further away (does not matter if to future or past) the less precision you will get. To set the epoch to some reasonably close time you need the orbital data for it which you will most likely not get. 2. I would be very skeptic with JPL data because they now use gravity simulation instead of Keppler's model which is more accurate for short periods but in long-term is way too off – Spektre Nov 18 '14 at 11:21
  • @electricwizard that is why they update the `orbital constants` so often. The next problem is stars you need to compute their motion (not just precesion/nutation... they also move on their own ...) some catalogs have this info but the accuracy is questionable... how do you want to check for correctness? (unless you have exact coordinates for them in exact time/location) ... the comet simulation is biggest problem due to that any flyby near massive object can change trajectory and we still cant solve it precise enough ... (nor the inverse) – Spektre Nov 18 '14 at 11:25
  • @Spektre thanks for the advice. I actually read a bit of [the precession model that the HORIZONS data uses](https://archive.org/details/theoryofearthspr00owen). It seems that the long-term model can be possibly used up-to ±500000 years from J2000. – electricwizard Nov 20 '14 at 09:24

1 Answers1

1

We should vary epoch and time together if I want to emulate an ancient observer or a futuristic observer on earth.

Answered in the issue tracker.

Thank you for the help :)