FAQ

What is Ewia?

Ewia is a tool which allows you to calculate the current position of deep-sky objects or ephemeris objects (i.e. objects which constantly change their position relative to Earth like the Planets) on the command-line. It also supports outputting it in machine-readable form for your application to post-process it in any way you find suitable.

What language was it written in?

Ewia has been written in (pure) Python 3 (upwards). I know that this might be inconvenient, as Python3 is not commonly included in current distributions. However, I am faced with a chicken-and-egg problem:

You can, of course backport it to any other language (esp. Python2) if you wish, which is probably not all that much work. However, I refuse to do it. Python2 must die for Python3 to live.

What license is Ewia released under?

Ewia is being released under the Version 2 of the GNU General Public License. This means you may modify the code and recompile it, redistribute it - whatever you like, as long as it doesn't violate the GPL-2.

You are boring. Show me what your app does!

Sure. Let's say you're in Bamberg, Germany and want to know the current position of Altair.

$ ./ewia --location=Bamberg --object=Altair
Position                 : HA 12:35:23, DEC 8°52'6''
Azimuth, Altitude        : 10.2° (N), -30.7°
Initial visibility       : Invisible

It tells you the current hour-angle and the position that it is at the current time - it is invisible as it is below the horizon. Now what if you want to see where it is on 2009-06-22 23:00 local time? Oh, you're in Germany, so GMT+1 hour.

$ ./ewia --location=Bamberg --object=Altair "--time=2009-06-22 23:00" --tz=1
Position                 : HA 20:57:36, DEC 8°52'6''
Azimuth, Altitude        : 121.3° (SE), 34.3°
Initial visibility       : Visible

Now let's say it's soon evening (2009-06-22 18:00) and you want to know when Altair rises so you can make an observation:

$ ./ewia --location=Bamberg --object=Altair "--time=2009-06-22 18:00" --tz=1 -r
Position                 : HA 15:56:47, DEC 8°52'6''
Azimuth, Altitude        : 60.2° (NE), -12.0°
Initial visibility       : Invisible
Object rising at         : 2009-06-22 20:25:00 +0100
Object setting at        : 2009-06-23 7:45:00 +0100 (visible for 11:20 h:m)
Visibility               : 47% (53% invisible)
Average visiblity per day: 11:19 h:m

So you now know it is rising at 20:25 and setting at 7:45 the next day. Where exactly will the object be at 20:25 then?

$ ./ewia --location=Bamberg --object=Altair "--time=2009-06-22 20:25" --tz=1
Position                 : HA 18:22:11, DEC 8°52'6''
Azimuth, Altitude        : 88.5° (E), 10.3°
Initial visibility       : Visible

Why is the altitude at 10° you might ask - should the object not just have been risen, i.e. have an altitude of 0°? Nope. The default horizon line is at 10° -- you might want to change that according to your needs, however. Let's say in the low 25° regions above the horizon there are terrible visibility condition and you want to wait until the object has risen above 25° - when will it rise then? Nothing easier than that:

$ ./ewia --location=Bamberg --object=Altair "--time=2009-06-22 18:00" --tz=1 --rfcutoff=25 -r
Position                 : HA 18:22:11, DEC 8°52'6''
Azimuth, Altitude        : 88.5° (E), 10.3°
Initial visibility       : Invisible
Object rising at         : 2009-06-22 22:00:00 +0100
Object setting at        : 2009-06-23 6:10:00 +0100 (visible for 8:09 h:m)
Visibility               : 34% (66% invisible)
Average visiblity per day: 8:10 h:m

Now since it is summer, the sky is very bright at 22:00 - let's assume you will be able to start any observation at 23:00 and cannot observe at 4:00 (too bright). You can then further constraint your request:

$ ./ewia --location=Bamberg --object=Altair "--time=2009-06-22 18:00" --tz=1 --rfcutoff=25 --ostimewin=23:00,04:00 -r
Position                 : HA 15:56:47, DEC 8°52'6''
Azimuth, Altitude        : 60.2° (NE), -12.0°
Initial visibility       : Invisible
Object rising at         : 2009-06-22 23:00:00 +0100
Object setting at        : 2009-06-23 4:05:00 +0100 (visible for 5:04 h:m)
Visibility               : 21% (79% invisible)
Average visiblity per day: 5:04 h:m

Now let's see where ephemeris are:

$ ./ewia --location=Bamberg --object=Saturn "--time=2009-06-22 18:00" --tz=1
Absolute position        : RA 11:10:39, DEC 7°31'57''
Position                 : HA 0:36:55, DEC 7°31'57''
Azimuth, Altitude        : 193.5° (S), 47.0°
Initial visibility       : Visible

Cool, Saturn is visible. But how long?

$ ./ewia --location=Bamberg --object=Saturn "--time=2009-06-22 18:00" --tz=1 -r
Absolute position        : RA 11:10:39, DEC 7°31'57''
Position                 : HA 0:36:55, DEC 7°31'57''
Azimuth, Altitude        : 193.5° (S), 47.0°
Initial visibility       : Visible
Object setting at        : 2009-06-22 23:00:00 +0100 (visible for 5:00 h:m)
Object rising at         : 2009-06-23 11:50:00 +0100
Visibility               : 47% (53% invisible)
Average visiblity per day: 11:10 h:m

Since this is an ephimeris object, the absolute sky position will be calculated by default every 6 hours. You can see that when you request a more verbose output:

$ ./ewia --location=Bamberg --object=Saturn "--time=2009-06-22 18:00" --tz=1 -r -v
Local position           : N49°53'4'', E10°53'17''
Local time               : 2009-06-22 18:00:00 +0100
UT time                  : 2009-06-22 17:00:00 UT
Local siderial time      : 11:47:34
Absolute position        : RA 11:10:39, DEC 7°31'57''
Position                 : HA 0:36:55, DEC 7°31'57''
Azimuth, Altitude        : 193.5° (S), 47.0°
Initial visibility       : Visible
Object setting at        : 2009-06-22 23:00:00 +0100 (visible for 5:00 h:m)
Recalculated position    : 2009-06-23 0:00:00 +0100 -> RA 11:10:42, DEC 7°31'34''
Recalculated position    : 2009-06-23 6:00:00 +0100 -> RA 11:10:45, DEC 7°31'12''
Object rising at         : 2009-06-23 11:50:00 +0100
Recalculated position    : 2009-06-23 12:00:00 +0100 -> RA 11:10:49, DEC 7°30'49''
Recalculated position    : 2009-06-23 18:00:00 +0100 -> RA 11:10:52, DEC 7°30'26''
Visibility               : 47% (53% invisible)
Average visiblity per day: 11:10 h:m

What you you're writing an application which should parse all that data? Well, this is easy:

$ ./ewia --location=Bamberg --object=Saturn "--time=2009-06-22 18:00" --tz=1 -pq
LocalPos|49.884559|10.888149|49°53'4''|10°53'17''
ObjectPos|11.177468|7.532493|11:10:39|7°31'57''
LocalTime|2009-06-22 18:00:00 +0100|2455005.208333
UTTime|2009-06-22 17:00:00 UT
DaysSinceJ2000.0|3460.208333
LocalSiderialTime|11:47:34|11.792807
HourAngle|11:47:34|11.792807
Azimuth|193°28'12''|193.470123
Altitude|46°57'2''|46.950434
InitialVisibility|1

Of course rise- and fall-calculation is also possible with that:

$ ./ewia --location=Bamberg --object=Saturn "--time=2009-06-22 18:00" --tz=1 -pqr
LocalPos|49.884559|10.888149|49°53'4''|10°53'17''
ObjectPos|11.177468|7.532493|11:10:39|7°31'57''
LocalTime|2009-06-22 18:00:00 +0100|2455005.208333
UTTime|2009-06-22 17:00:00 UT
DaysSinceJ2000.0|3460.208333
LocalSiderialTime|11:47:34|11.792807
HourAngle|11:47:34|11.792807
Azimuth|193°28'12''|193.470123
Altitude|46°57'2''|46.950434
InitialVisibility|1
ObjectSetting|2009-06-22 23:00:00 +0100|2455005.416667|5.000000
NewEphPosition|2009-06-23 0:00:00 +0100|2455005.458333|RA 11:10:42, DEC 7°31'34''|11.178354|7.526220
NewEphPosition|2009-06-23 6:00:00 +0100|2455005.708333|RA 11:10:45, DEC 7°31'12''|11.179246|7.519913
ObjectRising|2009-06-23 11:50:00 +0100|2455005.951389
NewEphPosition|2009-06-23 12:00:00 +0100|2455005.958333|RA 11:10:49, DEC 7°30'49''|11.180144|7.513572
NewEphPosition|2009-06-23 18:00:00 +0100|2455006.208333|RA 11:10:52, DEC 7°30'26''|11.181047|7.507196
VisibilityFraction|0.465278

Say you really want to observe Saturn, but can only between 23:00 and 4:00, but it is just currently not at the sky. You can make a long-term rise/fall-calculation to predict the behaviour in the next 150 days:

$ ./ewia --location=Bamberg --object=Saturn "--time=2009-06-22 18:00" --tz=1 -r --ostimewin=23:00,04:00 --rfwindow=150
Absolute position        : RA 11:10:39, DEC 7°31'57''
Position                 : HA 0:36:55, DEC 7°31'57''
Azimuth, Altitude        : 193.5° (S), 47.0°
Initial visibility       : Invisible
Object rising at         : 2009-11-10 4:00:00 +0100
Object setting at        : 2009-11-10 4:05:00 +0100 (visible for 0:05 h:m)
Object rising at         : 2009-11-11 4:00:00 +0100
Object setting at        : 2009-11-11 4:05:00 +0100 (visible for 0:05 h:m)
Object rising at         : 2009-11-12 3:55:00 +0100
Object setting at        : 2009-11-12 4:05:00 +0100 (visible for 0:10 h:m)
Object rising at         : 2009-11-13 3:50:00 +0100
Object setting at        : 2009-11-13 4:05:00 +0100 (visible for 0:15 h:m)
Object rising at         : 2009-11-14 3:50:00 +0100
Object setting at        : 2009-11-14 4:05:00 +0100 (visible for 0:15 h:m)
Object rising at         : 2009-11-15 3:45:00 +0100
Object setting at        : 2009-11-15 4:05:00 +0100 (visible for 0:20 h:m)
Object rising at         : 2009-11-16 3:40:00 +0100
Object setting at        : 2009-11-16 4:05:00 +0100 (visible for 0:25 h:m)
Object rising at         : 2009-11-17 3:40:00 +0100
Object setting at        : 2009-11-17 4:05:00 +0100 (visible for 0:25 h:m)
Object rising at         : 2009-11-18 3:35:00 +0100
Object setting at        : 2009-11-18 4:05:00 +0100 (visible for 0:30 h:m)
Object rising at         : 2009-11-19 3:30:00 +0100
Object setting at        : 2009-11-19 4:05:00 +0100 (visible for 0:35 h:m)
Visibility               : 0% (100% invisible)
Average visiblity per day: 0:01 h:m

And you'll notice that the object will be visible again in the second week of November.

When your local location or your sky object is not present in the built-in-catalogs, you can of course manually define the position:

$ ./ewia "--location=N1°2'3'',E2°3'4''" "--object=12:34:56,10°20'30''" "--time=2009-06-22 18:00" --tz=1 -v
Local position           : N1°2'3'', E2°3'4''
Local time               : 2009-06-22 18:00:00 +0100
UT time                  : 2009-06-22 17:00:00 UT
Local siderial time      : 11:12:13
Absolute position        : RA 12:34:56, DEC 10°20'30''
Position                 : HA 22:37:17, DEC 10°20'30''
Azimuth, Altitude        : 64.9° (NE), 67.4°
Initial visibility       : Visible

If you want to access the position conveniently, just edit the EarthCatalog.py or SkyCatalog.py files to enter new objects (and send me the modified files, if you wish!).

Conclusion

Ewia is a neat tool to calculate the position of objects - and it is of great use to me for quickly for planning my observations in a scripted manner. Feel free to try it, play around with it and tell me what you think. Any improvements or reuqests? Please send me an email.

Revision History

Version Changes Date
0.01 SVN Revision 5
Download Package
  • First release
2009-06-22