![]() |
|
|
|
Thread Tools | Display Modes |
#1
|
|||
|
|||
![]()
I thought I'd try to write some Python code for Subject via chapter 7 of
Meeus, fourth edition. His method is for Greenwich. It seems like one could use his method for mean sidereal time, and then apply my longitude (121.02) west divided by 15.0 to that. One way or another I'm not getting the result I would expect. Is Meeus the way to go, or is there something else? My code does work for his two examples which leads to the mean. |
#2
|
|||
|
|||
![]()
W. eWatson wrote:
I thought I'd try to write some Python code for Subject via chapter 7 of Meeus, fourth edition. His method is for Greenwich. It seems like one could use his method for mean sidereal time, and then apply my longitude (121.02) west divided by 15.0 to that. One way or another I'm not getting the result I would expect. Is Meeus the way to go, or is there something else? My code does work for his two examples which leads to the mean. In my opinion, Meeus is a good way to go. In what way do the results you're getting differ from what you expect? Maybe you could provide an example. |
#3
|
|||
|
|||
![]()
On 6/23/2010 7:28 AM, Greg Neill wrote:
W. eWatson wrote: I thought I'd try to write some Python code for Subject via chapter 7 of Meeus, fourth edition. His method is for Greenwich. It seems like one could use his method for mean sidereal time, and then apply my longitude (121.02) west divided by 15.0 to that. One way or another I'm not getting the result I would expect. Is Meeus the way to go, or is there something else? My code does work for his two examples which leads to the mean. In my opinion, Meeus is a good way to go. In what way do the results you're getting differ from what you expect? Maybe you could provide an example. As a further check, in addition to the book's examples, I selected May 23, 2010 at 21:00 hours here on the west coast. To find the LST, I used The Sky 6, and found the LST as 12:02:27 with a UT of 04:00:00. My longitude is 121.02 west. Here are my results. The first is for the book problem and the second for my local time. ***Prime Meridian -----MEAN Here is JD: 2443825.5 T: 0.788651608487 DATE/TIME 1978/11/13 04:34:00 int(sidereal_Zulu_revs): 79 Zero hours solution G Time: 3.45036951176 degrees Mean ST at Zulu: 3:27:01.3 sidereal_Zulu: 3:27:01.3 Zulu_hrs: 4.56666666667 Zulu_adj 4.57916977987 Zero hour solution: 3.45036951176 agrees with book Any time solution: 4.57916977987 agrees with book Local solution: -0.0384607083689 subtract out hrs to to 121 Local in hh:mm:ss: 0 -2 -18.4585501282 ***Nevada City******************* 1 My location calcs -----MEAN Here is JD: 2455339.5 T: 1.10388774812 DATE/TIME 2010/05/23 21:00:00 int(sidereal_Zulu_revs): 110 Zero hours solution G Time: 16.0332795258 degrees Mean ST at Zulu: 16:01:59.8 sidereal_Zulu: 16:01:59.8 Zulu_hrs: 21.0 Zulu_adj 21.057496068 Zero hour solution: 16.0332795258 Any time solution: 21.057496068 Local solution: 29.0227755938 Local in hh:mm:ss: 29 1 21.9921376568 Adding Zero and Any gives: 37.090775593800004, or 13.09077... Without using 121.02, 13 5 26.7921376568 None of this agrees with The Sky 6. |
#4
|
|||
|
|||
![]()
Note too that the JD I use is not the same as what TS6 produced. TS6
produced 2455340.667. To me this indicates it using some other method. Another approach to this is given at the USNO site as http://www.usno.navy.mil/USNO/astronomical-applications/astronomical-information-center/approx-sider-time/?searchterm=sidereal. |
#5
|
|||
|
|||
![]()
W. eWatson wrote:
As a further check, in addition to the book's examples, I selected May 23, 2010 at 21:00 hours here on the west coast. To find the LST, I used The Sky 6, and found the LST as 12:02:27 with a UT of 04:00:00. My longitude is 121.02 west. So, let's see if I understand what you're giving here. Longitude: 121.02 degrees west Date: May 23, 2010 Local civil time: 21:00 UT: 04:00 (21:00 + 07:00 Standard Time to UT Conversion) [snip Meeus example] ***Nevada City******************* 1 My location calcs -----MEAN Here is JD: 2455339.5 T: 1.10388774812 DATE/TIME 2010/05/23 21:00:00 int(sidereal_Zulu_revs): 110 Zero hours solution G Time: 16.0332795258 degrees Mean ST at Zulu: 16:01:59.8 Okay. That's the mean sidereal time at Greenwich for 0:00 UT on the given date. That is, GMST0= 16:01:59.8 sidereal_Zulu: 16:01:59.8 Zulu_hrs: 21.0 Shouldn't that be 04:00? You want to convert your local time to local time at Greenwich (timezone adjustment) then use that to adjust the sidereal time at Greenwich to account for it not being 0:00 UT. So, 04:00:00 x (day/sidereal_day) = 4.01095164 hrs = 04:00:39.43 in H:M:S format note that "day/sidereal_day" is the constant 1.002737908 Adding this sidereal time offset to GMST0 yields GMST = GMST0 + 04:00:39.43 = 16:01:59.8 + 04:00:39.43 = 20:02:39.23 That's the mean sidereal time for Greenwich at the instant you're interested. Now, you're located at 121.02 degrees west longitude. In terms of hours in the sidereal day it's lagging Greenwich by: (121.02/360)*24hr = 8.06800000 hr = 08:04:04.80 in H:M:S notation which is your OFFSET from GST due to longitude in siereal hours. That gives a local sidereal time of: LMST = GMST - OFFSET = 20:02:39.23 - 08:04:04.80 = 11:58:34.43 Which is pretty close to your 12:02:27 value. Zulu_adj 21.057496068 Zero hour solution: 16.0332795258 Any time solution: 21.057496068 Local solution: 29.0227755938 Local in hh:mm:ss: 29 1 21.9921376568 Adding Zero and Any gives: 37.090775593800004, or 13.09077... Without using 121.02, 13 5 26.7921376568 None of this agrees with The Sky 6. |
#6
|
|||
|
|||
![]()
W. eWatson wrote:
Note too that the JD I use is not the same as what TS6 produced. TS6 produced 2455340.667. To me this indicates it using some other method. Another approach to this is given at the USNO site as http://www.usno.navy.mil/USNO/astron...nomical-inform ation-center/approx-sider-time/?searchterm=sidereal. The JD given by The Sky 6 is probably the Julian day for the given instant at Greenwich. The Julian day you start with for your calculations is for the given date at 0.0 UT at Greenwich. (You should adjust the date accordingly if the day has already 'ticked over' at Greenwich. This will happen when the number of hours to midnight (your local time) is less than the number of hours of offset for your timezone) |
#7
|
|||
|
|||
![]()
W. eWatson wrote:
Note too that the JD I use is not the same as what TS6 produced. TS6 produced 2455340.667. To me this indicates it using some other method. Another approach to this is given at the USNO site as http://www.usno.navy.mil/USNO/astron...nomical-inform ation-center/approx-sider-time/?searchterm=sidereal. You should be able to get lots of test cases using this site: http://www.jgiesen.de/SiderealTimeClock/index.html |
#8
|
|||
|
|||
![]()
On 6/23/2010 1:10 PM, Greg Neill wrote:
W. eWatson wrote: As a further check, in addition to the book's examples, I selected May 23, 2010 at 21:00 hours here on the west coast. To find the LST, I used The Sky 6, and found the LST as 12:02:27 with a UT of 04:00:00. My longitude is 121.02 west. So, let's see if I understand what you're giving here. Longitude: 121.02 degrees west Date: May 23, 2010 Local civil time: 21:00 UT: 04:00 (21:00 + 07:00 Standard Time to UT Conversion) Yes, these are all correct. [snip Meeus example] ***Nevada City******************* 1 My location calcs -----MEAN Here is JD: 2455339.5 T: 1.10388774812 DATE/TIME 2010/05/23 21:00:00 int(sidereal_Zulu_revs): 110 Zero hours solution G Time: 16.0332795258 degrees Mean ST at Zulu: 16:01:59.8 Okay. That's the mean sidereal time at Greenwich for 0:00 UT on the given date. That is, GMST0= 16:01:59.8 Yes, correct. In fact, all below here looks correct. I made some adjustments in the program, and it very closely agrees with all of your calcs. I looked at my longitude and found that it was 121 deg 2 min and 32 sec. (Nevada City, CA 39°15'06.9" N 121°02'31.9" W) I used that in the calcs and got the final result as 16:01:59.8, which is a bit strange, since the long changed a bit, and this is pretty much the same. Nevada City, CA 39°15'06.9" N 121°02'31.9" W I'm looking at TS6 and it shows the LST as 12:02:27, so this differs by a bit over 4 hours, so there's something missing in all this. Where I made a blunder in the code is that I mixed the Meeus examples with my example, and managed to get a few pieces of code turned around. I should have worked with two separate programs. Here's what I pumped out for this example: ***Nevada City******************* 1 Longitude: 121.042222222 Hours from local: 8.06948148148 -----MEAN Here is JD: 2455339.5 Here is UT: 4.0 Ephem JD: 2455339.5 T: 1.10388774812 DATE/TIME 2010/05/23 21:00:00 int(sidereal_Zulu_revs): 110 Zero hours solution G Time: 16.0332795258 degrees Mean ST at Zulu: 16:01:59.8 sidereal_Zulu: 16:01:59.8 Zulu_hrs: 4.0 Zulu_adj 4.010951632 Zero hour solution: 16.0332795258 Any time solution: 4.010951632 Local solution: 11.9747496763 Local in hh:mm:ss: 11 58 29.0988347234 sidereal_Zulu: 16:01:59.8 Zulu_hrs: 21.0 Shouldn't that be 04:00? You want to convert your local time to local time at Greenwich (timezone adjustment) then use that to adjust the sidereal time at Greenwich to account for it not being 0:00 UT. So, 04:00:00 x (day/sidereal_day) = 4.01095164 hrs = 04:00:39.43 in H:M:S format note that "day/sidereal_day" is the constant 1.002737908 Adding this sidereal time offset to GMST0 yields GMST = GMST0 + 04:00:39.43 = 16:01:59.8 + 04:00:39.43 = 20:02:39.23 That's the mean sidereal time for Greenwich at the instant you're interested. Now, you're located at 121.02 degrees west longitude. In terms of hours in the sidereal day it's lagging Greenwich by: (121.02/360)*24hr = 8.06800000 hr = 08:04:04.80 in H:M:S notation which is your OFFSET from GST due to longitude in sdiereal hours. That gives a local sidereal time of: LMST = GMST - OFFSET = 20:02:39.23 - 08:04:04.80 = 11:58:34.43 Which is pretty close to your 12:02:27 value. Zulu_adj 21.057496068 Zero hour solution: 16.0332795258 Any time solution: 21.057496068 Local solution: 29.0227755938 Local in hh:mm:ss: 29 1 21.9921376568 Adding Zero and Any gives: 37.090775593800004, or 13.09077... Without using 121.02, 13 5 26.7921376568 None of this agrees with The Sky 6. |
#9
|
|||
|
|||
![]()
W. eWatson wrote:
On 6/23/2010 1:10 PM, Greg Neill wrote: W. eWatson wrote: As a further check, in addition to the book's examples, I selected May 23, 2010 at 21:00 hours here on the west coast. To find the LST, I used The Sky 6, and found the LST as 12:02:27 with a UT of 04:00:00. My longitude is 121.02 west. So, let's see if I understand what you're giving here. Longitude: 121.02 degrees west Date: May 23, 2010 Local civil time: 21:00 UT: 04:00 (21:00 + 07:00 Standard Time to UT Conversion) Yes, these are all correct. [snip Meeus example] ***Nevada City******************* 1 My location calcs -----MEAN Here is JD: 2455339.5 T: 1.10388774812 DATE/TIME 2010/05/23 21:00:00 int(sidereal_Zulu_revs): 110 Zero hours solution G Time: 16.0332795258 degrees Mean ST at Zulu: 16:01:59.8 Okay. That's the mean sidereal time at Greenwich for 0:00 UT on the given date. That is, GMST0= 16:01:59.8 Yes, correct. In fact, all below here looks correct. I made some adjustments in the program, and it very closely agrees with all of your calcs. I looked at my longitude and found that it was 121 deg 2 min and 32 sec. (Nevada City, CA 39°15'06.9" N 121°02'31.9" W) I used that in the calcs and got the final result as 16:01:59.8, which is a bit strange, since the long changed a bit, and this is pretty much the same. Nevada City, CA 39°15'06.9" N 121°02'31.9" W The civil time is blocked into time zones. The GMST0 value depends only on the Julian day (and not fractions thereof), so the result should be independant of the longitude. Even in cases where the date at Greenwich has advanced a day over the local date, the fractional rotation will be very close indeed to the position one sidereal day previous. I'm looking at TS6 and it shows the LST as 12:02:27, so this differs by a bit over 4 hours, so there's something missing in all this. Well, the 16:01:59.8 value corresponds to the sidereal time at zero hours UT for the date in question. The offset due to the Earth rotation corresponding to the current time of day (the current UT) has not yet been applied. Once that is done you'll have the local mean sidereal time for Greenwich. Where I made a blunder in the code is that I mixed the Meeus examples with my example, and managed to get a few pieces of code turned around. I should have worked with two separate programs. Here's what I pumped out for this example: ***Nevada City******************* 1 Longitude: 121.042222222 Hours from local: 8.06948148148 -----MEAN Here is JD: 2455339.5 Here is UT: 4.0 Ephem JD: 2455339.5 T: 1.10388774812 DATE/TIME 2010/05/23 21:00:00 int(sidereal_Zulu_revs): 110 Zero hours solution G Time: 16.0332795258 degrees Mean ST at Zulu: 16:01:59.8 sidereal_Zulu: 16:01:59.8 Zulu_hrs: 4.0 Zulu_adj 4.010951632 Zero hour solution: 16.0332795258 That's GMST0 Any time solution: 4.010951632 That's the offset (in sidereal hours) due to the current UT at Greenwich. Local solution: 11.9747496763 That's the GMST0 with the UT time offset and the longitude offset applied: the local sidereal time (in sidereal hours) at your location. Local in hh:mm:ss: 11 58 29.0988347234 Well, that's what I got, too. You might be interested in checking out Meeus' book, Astronomical Algorithms, which has updated methods for finding the sidereal time (new Julian epoch and an additional (cubic) term in the expression for Theta_0. He also shows how to correct for nutation when determining the apparent sidereal time at Greenwich, where high accuracy is required. |
#10
|
|||
|
|||
![]()
And the solution is!
***Nevada City******************* 1 Longitude: 121.042222222 Hours from local: 8.06948148148 Time zone from local: 7.0 -----MEAN Ephem JD: 2455340.5 --- The problem Here is local time: 21.0 Here is UT: 4.0 T: 1.10391512663 DATE/TIME 2010/05/23 21:00:00 int(sidereal_Zulu_revs): 110 Zero hours solution G Time: 16.0989893497 degrees Mean ST at Zulu: 16:05:56.4 sidereal_Zulu: 16:05:56.4 Zulu_hrs: 4.0 Zulu_adj 4.010951632 Zero hour solution: 16.0989893497 Any time solution: 4.010951632 Local solution: 12.0404595002 (GMST0) Local in hh:mm:ss: 12 2 25.6542008239 -- Solution, 1.35 sec off -----APPARENT correction (seconds): -0.206526739992 APP 12.0405168688 app result: 12 2 25.8607275639 It looks like the JD was the culprit. The date should have been bumped up by one day. There's still a 1.35 sec or so difference. Note I computed apparent sidereal from Meeus, fourth edition. Is there a fifth edition? Maybe some constant has changed for the 2000 epoch? The fourth edition was printed in 1988. Thanks for sticking in there. |
|
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Local Time Meridian | B M | Astronomy Misc | 1 | May 7th 06 06:41 PM |
Sidereal Time | Michael Koppelman | Research | 4 | June 6th 05 07:17 AM |
Sidereal Time Applet | Robin Clark | Misc | 6 | January 15th 04 08:13 PM |
Local Siderial Time? | Roger Hamlett | Misc | 17 | January 2nd 04 04:18 PM |
Who invented sidereal time? | Howard Lester | Amateur Astronomy | 0 | July 24th 03 05:10 PM |