-
-
Notifications
You must be signed in to change notification settings - Fork 217
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
timescale With delta-T 0.0 Gives errors for the moon #976
Comments
Is there an idea for a solution to the problems I presented? I am very grateful |
Let's tackle this idea first, since I think it's the most important. Prior to the first leap second, UTC is a completely uniform atomic timescale. Whatever we might do with ∆T, we would not expect the UTC time of something like a conjunction to change at all. It couldn't, I don't think? The conjunction happens whenever Solar System orbits say it's going to happen, right? And that moment will have an exact UTC timestamp that doesn't change. What we would, indeed, expect to change would be the UT1 timestamp for the event, because UT1 is a wobbly irregular timescale whose days can be long or short or somewhere in between. ∆T is precisely the measure of how wobbly UT1 has gotten by a particular point in history, and how much error has accumulated in it compared to an absolute atomic timescale. So setting ∆T should change UT1, not UTC. So a first problem might be that maybe you have the two timescales reversed in your head by accident? Let me know if the Skyfield docs say the wrong thing about them somewhere, and I'll get that fixed! |
Thanks so much for your response! Of course you are right that UT1 is the one that changes, but I am talking about what actually happens in the skyfield in the examples I gave. My impression is, at least for the sun, that by default, when skyfield uses a UTC timescale, it inserts the delta_t calculation into it so that timescale includes the delta_t effect, whereas when I ask for output in the UT1 timescale, what skyfield does is reduce the value of delta_t is the time scale to reach UT1. When delta_t is zero, there shouldn't be much difference between UTC and UT1. Regarding the first example, indeed for Sunset when delta_t is zero the difference is less than a minute. So why about the moon there is a difference of 8 minutes. |
So if we agree about how UTC and UT1 behave, then let's go backwards through the issues brought up in the original issue, as your final question is the simplest:
As we agreed in our previous two comments, this is exactly what we should expect. UTC is a constant atomic timescale (pre-leap-seconds), so adjusting ∆T has no effect on it at all. The UTC times of the conjunctions remain the same, exactly as we would expect for a uniform time scale — both times, the conjunction is at The only thing that ∆T changes is UT1. When ∆T=0, they have an offset of 42 seconds. When instead ∆T has its true historic value, they are more than two hours apart by the first century. So we can turn to your first question:
Let’s tackle your second output first:
I think you’ll agree that this is entirely as expected. With ∆T=0, the difference in timescales is around 42 seconds, and so the exact same Moon setting event is given two times that differ by 42 seconds. Now let’s look at your first output:
Here we might have found the source of your confusion. ∆T affects these numbers not in one way only, but in two different ways:
So by letting ∆T have a true historic value, you are changing the angle of the Earth itself, the planet itself, by more than 2 hours out of 24, and thus by more than 30°. So anything like a rising or setting is going to happen at a drastically different time. And so your result will be different for three separate reasons: first, because the actual moment of rising or setting is several hours different; and, second, because you’re using a UT1 that includes true ∆T and not a ∆T=0; and, third, because the Moon moves over that time. I think you’ll find that these differences, together, account for the difference in time in this second example. |
Thank you! |
Hello.
For the Sun, I've been fine with setting delta-T to 0 on the time scale, but for the Moon, and probably other planets too, there are errors.
Note! The problems were discovered for the year 0094 where there is a large delta-t gap. It is possible that near the present the problem will not exist, but I deliberately brought the examples about the year 0094
Examples:
OUTPUT:
delta_t Default
Sunset (UT1): ['0094-02-02 15:14:07 UT1']
Sunset (UTC): ['0094-02-02 17:51:09 UTC']
Moonset (UT1): ['0094-02-02 15:59:27 UT1']
Moonset (UTC): ['0094-02-02 18:36:29 UTC']
delta_t=0.0
Sunset (UT1): ['0094-02-02 15:13:35 UT1']
Sunset (UTC): ['0094-02-02 15:12:53 UTC']
Moonset (UT1): ['0094-02-02 15:51:16 UT1']
Moonset (UTC): ['0094-02-02 15:50:34 UTC']
Note that when it comes to the sun, there is a difference of about half a minute between: UT1 with normal delta-T and UT1 with delta-T 0.0
On the other hand, for the moon there is a difference of 8 minutes! Between: UT1 with normal delta-T and UT1 with delta-T 0.0
In both cases UTC moves back and almost reaches UT1 when delta-t is set to 0.0. And so it should be
another example:
OUTPUT:
delta_t Default
['0094-02-01 23:45:50 UT1']
['0094-02-02 02:22:52 UTC']
[1]
delta_t=0.0
['0094-02-02 02:23:34 UT1']
['0094-02-02 02:22:52 UTC']
[1]
In this case, the time of the conjunction of the moon with the sun according to UT1 is correct when delta-T is by default, but when delta-T is set to 0.0 there is a problem: UT1 has moved forward towards UTC which is not a good thing. The opposite should have happened: UTC should go back towards UT1.
These problems cause serious malfunctions in my software, and I would be very happy if the cause of these problems, and the solution, were revealed.
Thank you
The text was updated successfully, but these errors were encountered: