NavList:
A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding
Re: ephemeris & positional astronomy Windows DLL
From: Andr�s Ruiz
Date: 2009 Dec 15, 09:34 +0100
From: Andr�s Ruiz
Date: 2009 Dec 15, 09:34 +0100
Dear Paul, Do you have a high level function or class for Nautical Almanac based on your SofaJpl.dll? I know your example SofaJplDemo.cs, but I need a function like this: void AlmanaqueNautico( int body, CString name, double day, double month, double year, double h, double m, double s, /*UT1*/ double *ra, double *dec, double *gha, double *sd, double *hp, double *eot, double *illumination, CString *phase ); Is for historical ephemerides (DE405, DE406, ..) for a free Lunar Distance program that I am writing. Regards, Andr�s Ruiz Navigational Algorithms http://sites.google.com/site/navigationalalgorithms/ -----Mensaje original----- De: navlist@fer3.com [mailto:navlist@fer3.com] En nombre de Paul Hirose Enviado el: s�bado, 15 de agosto de 2009 21:00 Para: navlist@fer3.com Asunto: [NavList 9536] Re: ephemeris & positional astronomy Windows DLL NavList@fer3.com wrote: > I came across this posting, dated almost 3 years ago. I am interested to try out your Astronomy Windows DLL, if you still have it? > > Appreciate if you can email me the files. Better yet, you can now download the files yourself from my Web site: http://home.earthlink.net/~s543t-24dst/index.html The DLL in my old message is available there, though it's not maintained anymore. The only known bugs are in the SOFA routines FK52H and H2FK5, which transform FK5 star catalog data into the Hipparcos system and vice versa. My routines do not depend on them, but if you call them directly the results may be wrong: http://www.iau-sofa.rl.ac.uk/changes_2009_0201.html A minor problem is that the internal UTC table is out of date. However, the DLL has functions to write the table to a file, and load the table from a file. This is just a text file, so it can be updated by hand. But the updated table will have to be loaded every time you use the DLL. If you don't do that, the DLL will revert to its obsolete internal table. Last year I released a new version of my DLL to run under the Windows .NET Framework. It's a vastly superior product. (Strictly speaking it's a .NET assembly, not just a DLL.) The old one was heavily biased in favor of C programmers as far as the function calling conventions and documentation. But with .NET it was possible to make this new release independent of language. One lost feature is the built-in subset of the Hipparcos star catalog. I intend to implement a similar feature in a later release. Another change is the lack of a default leap second table. That's an intentional omission. Sooner or later the table will have to be updated, and I now believe it's false kindness to "help" the user with a default table. It's better to require explicit loading of a table. Note that the SOFA routine DAT, which returns TAI-UTC, has its own hardwired leap second table and may be called directly. Embedding the table into the source code is an arguable design choice, though. It requires an edit and recompile of the SOFA code every time a leap second is announced. Then that forces me to rebuild my SofaJpl package and issue a new installer. Fortunately there will be no leap second at the end of this year! I will be happy to answer any questions about either version of my DLL. But contact me at the address I'm using here. The one I give on the Web page is not checked daily. -- --~--~---------~--~----~------------~-------~--~----~ NavList message boards: www.fer3.com/arc Or post by email to: NavList@fer3.com To , email NavList-@fer3.com -~----------~----~----~----~------~----~------~--~--- -- NavList message boards: www.fer3.com/arc Or post by email to: NavList@fer3.com To , email NavList+@fer3.com