home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-05-15 | 77.4 KB | 1,712 lines |
- Newsgroups: comp.sources.x
- From: ecdowney@pobox.cca.cr.rockwell.com (Elwood Downey)
- Subject: v19i092: xephem - astronomical ephemeris program, Part04/21
- Message-ID: <1993May10.220824.7730@sparky.imd.sterling.com>
- X-Md4-Signature: 1e221bba11579ce080a4bad4137014a1
- Date: Mon, 10 May 1993 22:08:24 GMT
- Approved: chris@sparky.imd.sterling.com
-
- Submitted-by: ecdowney@pobox.cca.cr.rockwell.com (Elwood Downey)
- Posting-number: Volume 19, Issue 92
- Archive-name: xephem/part04
- Environment: X11r4, OSF/Motif
- Supersedes: xephem: Volume 16, Issue 112-134
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then feed it
- # into a shell via "sh file" or similar. To overwrite existing files,
- # type "sh file -c".
- # The tool that generated this appeared in the comp.sources.unix newsgroup;
- # send mail to comp-sources-unix@uunet.uu.net if you want that tool.
- # Contents: XEphem.ad xephem.hlp
- # Wrapped by chris@nova on Mon May 10 16:41:42 1993
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- echo If this archive is complete, you will see the following message:
- echo ' "shar: End of archive 4 (of 21)."'
- if test -f 'XEphem.ad' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'XEphem.ad'\"
- else
- echo shar: Extracting \"'XEphem.ad'\" \(9517 characters\)
- sed "s/^X//" >'XEphem.ad' <<'END_OF_FILE'
- X! initial circumstances setup
- X! XEphem supports the following resources related to time:
- X! XEphem.JD: Julian date
- X! XEphem.UD: UT date
- X! XEphem.UT: UT time
- X! XEphem.LD: Local date
- X! XEphem.LT: Local time
- X! XEphem.LST: Local sidereal time
- X! pick any one to set to "Now" or set enough to be complete (such as JD, or
- X! UD and UT, or LD and LT).
- X! the date formats and units for Elevation, Temp and Pressue depend on the
- X! selected preferences.
- XXEphem.LT: Now
- XXEphem.TZName: CDT
- XXEphem.TZone: 5
- XXEphem.Long: 91:40:0
- XXEphem.Lat: 41:51:0
- XXEphem.Elevation: 800
- XXEphem.Temp: 60
- XXEphem.Pressure: 29.5
- XXEphem.StepSize: RTC
- XXEphem.Epoch: 2000
- XXEphem.NSteps: 1
- XXEphem.Pause: 0
- XXEphem.TwilightDip: 18
- XXEphem.viewsFont: fixed
- X
- X! default font
- X! Xephem tables behave best with a mono-spaced or character-cell font,
- X! ie, -spacing- either m or c.
- XXEphem*fontList: fixed
- X
- X! main menu colors
- XXEphem*foreground: blue
- XXEphem*background: snow
- X
- X! select one of Algorithms preferences to set to True
- XXEphem*Algorithms.Accurate.set: False
- XXEphem*Algorithms.Fast.set: True
- X
- X! select one of DateFormats preferences to set to True
- XXEphem*DateFormat.MDY.set: True
- XXEphem*DateFormat.YMD.set: False
- XXEphem*DateFormat.DMY.set: False
- X
- X! select one of Units preferences to set to True
- XXEphem*Units.English.set: True
- XXEphem*Units.Metric.set: False
- X
- X! default plot and listing filenames
- XXEphem*Plot*Filename.value: ephem.plt
- XXEphem*List*Filename.value: ephem.lst
- X
- X! default help file name
- XXEphem.HELPFILE: xephem.hlp
- X
- X! default database file name
- XXEphem*DBPromptD.textString: ephem.db
- X
- X! set Geocentric.set to true for geocentric separations,
- X! or Topocentric.set to true for topocentric separation..
- XXEphem*Geocentric.set: false
- XXEphem*Topocentric.set: true
- X
- X! set StdRefr.set to true to use constant 34 arcminute refraction, or
- X! set AdpRefr.set to true to use current mainmenu atmospheric conditions.
- XXEphem*AdpRefr.set: false
- XXEphem*StdRefr.set: true
- X
- X! set Limb.set to true to compute rise/set based on upper limb, or
- X! set Center.set to true to compute rise/set based on object's center.
- XXEphem*DataSelRisetCols*Center.set: false
- XXEphem*DataSelRisetCols*Limb.set: true
- X
- X! initial location (unless using interactive window manager placement)
- XXEphem*xephem_main.x: 50
- XXEphem*xephem_main.y: 50
- X
- X! infor for the Jupiter display
- XXEphem*Jupiter*Map*background: #00004a
- XXEphem*Jupiter*Map*foreground: snow
- XXEphem*Jupiter*CtlForm.verticalSpacing: 5
- XXEphem*Jupiter*BigDots.set: True
- XXEphem*Jupiter*Tags.set: True
- XXEphem*Jupiter*Map.height: 100
- XXEphem*Jupiter.x: 100
- XXEphem*Jupiter.y: 200
- X
- X!info for the Saturn display
- XXEphem*Saturn*CtlForm.verticalSpacing: 5
- XXEphem*Saturn*BigDots.set: True
- XXEphem*Saturn*Tags.set: True
- XXEphem*Saturn*Map.height: 100
- XXEphem*Saturn.x: 400
- XXEphem*Saturn.y: 200
- XXEphem*Saturn*Map*background: #00004a
- XXEphem*Saturn*Map*foreground: snow
- X
- X!info for the Moon display
- XXEphem*Moon*Earthshine.set: True
- XXEphem*Moon*BitmapView.set: False
- XXEphem*Moon.x: 200
- XXEphem*Moon.y: 200
- XXEphem*MoonDA*foreground: snow
- XXEphem*MoonDA*background: #00004a
- X
- X! info for the Mars map
- XXEphem*Mars.x: 300
- XXEphem*Mars.y: 300
- XXEphem*Mars*Map.height: 300
- XXEphem*Mars*Map.foreground: dark orange
- XXEphem*Mars*Map.background: gray14
- X
- X! info for the Earth map
- XXEphem*Earth.x: 200
- XXEphem*Earth.y: 200
- XXEphem*Earth*Map.height: 300
- XXEphem*Earth*Map.foreground: cyan3
- XXEphem*Earth*Map.background: gray14
- X
- X! info for the Solar system display
- XXEphem*SolarSystem.x: 250
- XXEphem*SolarSystem.y: 350
- XXEphem*SolarSystem.CtlForm.verticalSpacing: 5
- XXEphem*SolarSystem.BigDots.set: True
- XXEphem*SolarSystem.ConnectDots.set: True
- XXEphem*SolarSystem.Trails.set: False
- XXEphem*SolarSystem.Names.set: True
- XXEphem*SolarSystem.HLongScale.value: 0
- XXEphem*SolarSystem.DistScale.value: 50
- XXEphem*SolarSystem.HLatScale.value: 90
- XXEphem*SolarSystem*SolarDA.height: 300
- XXEphem*SolarSystem*SolarDA.width: 300
- XXEphem*SolarSystem*SolarDA.background: #00004a
- XXEphem*SolarSystem*SolarDA.foreground: snow
- XXEphem*StereoSolarSystem*StereoDA.background: #00004a
- XXEphem*StereoSolarSystem*StereoDA.foreground: snow
- X
- X! info for the Sky View display.
- X! select default Sky View coordinate display mode:
- X! set one of RADecMode.set or AltAzMode.set to true.
- X! then set AzRAScale.value and AltDecScale.value to desired initial settings.
- X! N.B. when using AltAz mode:
- X! need to set AzRAScale.maximum to 360 since default scale max is 100.
- X! AzRAScale.decimalPoints is set to 1.
- X! XEphem*SkyView*RADecMode.set: true
- XXEphem*SkyView*AltAzMode.set: true
- XXEphem*SkyView*FOVScale.value: 180
- XXEphem*SkyView*AltDecScale.value: 90
- XXEphem*SkyView*AzRAScale.value: 180
- XXEphem*SkyView*AzRAScale.maximum: 360
- XXEphem*SkyView*JustDots.set: True
- XXEphem*SkyView*Ecliptic.set: False
- XXEphem*SkyView*AllLabels.set: False
- XXEphem*SkyView.x: 200
- XXEphem*SkyView.y: 400
- XXEphem*SkyView*Map.width: 300
- XXEphem*SkyView*Map.height: 300
- XXEphem*SkyView*Map.background: #00004a
- XXEphem*SkyView*Map.foreground: snow
- X
- X! initial setting of the skyview faint and bright magnitude limits
- X! BMAGLIMIT and FMAGLIMIT in skyviewmenu.c limit the extremes to -28 and 20.
- XXEphem*SkyView*FaintMagScale.value: 6
- XXEphem*SkyView*BrightMagScale.value: -28
- X
- X! colors used to display the symbols in the Sky View filter menu
- XXEphem*SkyFilter*SymbolDA.foreground: snow
- XXEphem*SkyFilter*SymbolDA.background: #00004a
- X
- X! initial types of object to display in Sky View
- XXEphem*SkyFilter*Planets.set: True
- XXEphem*SkyFilter*Elliptical.set: True
- XXEphem*SkyFilter*Hyperbolic.set: True
- XXEphem*SkyFilter*Parabolic.set: True
- XXEphem*SkyFilter*Quasars.set: True
- XXEphem*SkyFilter*Stellar.set: True
- XXEphem*SkyFilter*Undefined.set: True
- XXEphem*SkyFilter*Stars.set: True
- XXEphem*SkyFilter*Binary.set: True
- XXEphem*SkyFilter*Double.set: True
- XXEphem*SkyFilter*Multiple.set: True
- XXEphem*SkyFilter*Variable.set: True
- XXEphem*SkyFilter*BrightNeb.set: True
- XXEphem*SkyFilter*DiffuseNeb.set: True
- XXEphem*SkyFilter*DarkNeb.set: True
- XXEphem*SkyFilter*PlanetaryNeb.set: True
- XXEphem*SkyFilter*SpiralGal.set: True
- XXEphem*SkyFilter*SphericalGal.set: True
- XXEphem*SkyFilter*GalClusters.set: True
- XXEphem*SkyFilter*GlobularCl.set: True
- XXEphem*SkyFilter*OpenCl.set: True
- XXEphem*SkyFilter*ClInNeb.set: True
- X
- X! misc display locations and colors
- XXEphem*Data.x: 100
- XXEphem*Data.y: 200
- XXEphem*Plot.x: 100
- XXEphem*Plot.y: 200
- XXEphem*List.x: 500
- XXEphem*List.y: 200
- XXEphem*Srch.x: 200
- XXEphem*Srch.y: 300
- XXEphem*AltAzMap*background: #00004a
- XXEphem*AltAzMap*foreground: snow
- XXEphem*PlotDA*foreground: #fce089
- XXEphem*PlotDA*background: #00004a
- XXEphem*PlotDA*height: 300
- XXEphem*VersionMap*foreground: snow
- XXEphem*VersionMap*background: #00004a
- X
- X! set which Data Table rows and columns are to be on initially
- XXEphem*DataSelRows.Sun.set: true
- XXEphem*DataSelRows.Moon.set: true
- XXEphem*DataSelRows.Mercury.set: false
- XXEphem*DataSelRows.Venus.set: false
- XXEphem*DataSelRows.Mars.set: false
- XXEphem*DataSelRows.Jupiter.set: false
- XXEphem*DataSelRows.Saturn.set: false
- XXEphem*DataSelRows.Uranus.set: false
- XXEphem*DataSelRows.Neptune.set: false
- XXEphem*DataSelRows.Pluto.set: false
- XXEphem*DataSelMiscCols.Cns.set: true
- XXEphem*DataSelMiscCols.R_A.set: true
- XXEphem*DataSelMiscCols.Dec.set: true
- XXEphem*DataSelMiscCols.Az.set: true
- XXEphem*DataSelMiscCols.Alt.set: true
- XXEphem*DataSelMiscCols.HeLong.set: false
- XXEphem*DataSelMiscCols.HeLat.set: false
- XXEphem*DataSelMiscCols.EaDst.set: false
- XXEphem*DataSelMiscCols.SnDst.set: false
- XXEphem*DataSelMiscCols.Elong.set: false
- XXEphem*DataSelMiscCols.Size.set: false
- XXEphem*DataSelMiscCols.VMag.set: false
- XXEphem*DataSelMiscCols.Phase.set: false
- XXEphem*DataSelRisetCols.RiseTm.set: true
- XXEphem*DataSelRisetCols.RiseAz.set: false
- XXEphem*DataSelRisetCols.TrnTm.set: false
- XXEphem*DataSelRisetCols.TrnAlt.set: false
- XXEphem*DataSelRisetCols.SetTm.set: true
- XXEphem*DataSelRisetCols.SetAz.set: false
- XXEphem*DataSelRisetCols.HrsUp.set: false
- XXEphem*DataSelSepCols.Sun.set: false
- XXEphem*DataSelSepCols.Moon.set: false
- XXEphem*DataSelSepCols.Mercury.set: false
- XXEphem*DataSelSepCols.Venus.set: false
- XXEphem*DataSelSepCols.Mars.set: false
- XXEphem*DataSelSepCols.Jupiter.set: false
- XXEphem*DataSelSepCols.Saturn.set: false
- XXEphem*DataSelSepCols.Uranus.set: false
- XXEphem*DataSelSepCols.Neptune.set: false
- XXEphem*DataSelSepCols.Pluto.set: false
- X
- X! colors used to plot the planets and stars
- XXEphem.mercuryColor: Red
- XXEphem.venusColor: Green
- XXEphem.marsColor: OrangeRed
- XXEphem.jupiterColor: Cyan
- XXEphem.saturnColor: PaleGoldenrod
- XXEphem.uranusColor: MediumSpringGreen
- XXEphem.neptuneColor: DeepSkyBlue1
- XXEphem.plutoColor: Orange
- XXEphem.sunColor: Yellow
- XXEphem.moonColor: Grey
- XXEphem.hotStarColor: LightSkyBlue1
- XXEphem.mediumStarColor: LemonChiffon
- XXEphem.coolStarColor: Coral
- X
- X! colors used in plots
- XXEphem.plotColor0: red
- XXEphem.plotColor1: green
- XXEphem.plotColor2: blue
- XXEphem.plotColor3: orange
- XXEphem.plotColor4: magenta
- XXEphem.plotColor5: cyan
- XXEphem.plotColor6: black
- XXEphem.plotColor7: wheat
- XXEphem.plotColor8: gray
- XXEphem.plotColor9: pink
- X
- X
- X! "systemy" sort of defaults not generally changed.
- XXEphem.allowShellResize: True
- XXEphem*spacing: 1
- XXEphem*marginHeight: 1
- XXEphem*traversalOn: false
- XXEphem*highlightOnEnter: false
- XXEphem*highlightThickness: 0
- XXEphem*XmText*traversalOn: true
- XXEphem*XmText*highlightOnEnter: false
- XXEphem*XmText*highlightThickness: 0
- X
- X! Help text scrolled text area dimensions
- XXEphem*Help*ScrolledText.rows: 24
- XXEphem*Help*ScrolledText.columns: 80
- XXEphem*Help.verticalSpacing: 20
- X
- X! scrolled Message text scrolled text area dimensions
- XXEphem*Message*ScrolledText.rows: 10
- XXEphem*Message*ScrolledText.columns: 80
- XXEphem*Message.verticalSpacing: 20
- END_OF_FILE
- if test 9517 -ne `wc -c <'XEphem.ad'`; then
- echo shar: \"'XEphem.ad'\" unpacked with wrong size!
- fi
- # end of 'XEphem.ad'
- fi
- if test -f 'xephem.hlp' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'xephem.hlp'\"
- else
- echo shar: Extracting \"'xephem.hlp'\" \(65231 characters\)
- sed "s/^X//" >'xephem.hlp' <<'END_OF_FILE'
- X@Intro
- XXephem is a program that computes ephemerides for all the planets, some of
- Xtheir moons, plus any two user-defined objects.
- X
- XIn addition to information in numeric form, xephem displays simple schematic
- Xviews of Saturn, Jupiter, Mars, Luna and Earth as well as maps of the night
- Xsky and the solar system. The sky and solar system maps support labeling and
- Xtrailing, and the solar system can be shown as a stereo pair.
- X
- XXephem can compute information on demand or time can be set to increment
- Xautomatically. In this way a series of computations and movies can be
- Xgenerated unattended.
- X
- XQuantitative information available about each object includes RA and Dec
- Xprecessed to any epoch, local azimuth and altitude, heliocentric
- Xcoordinates, distance from sun and earth, solar elongation, angular size,
- Xvisual magnitude, illumination percentage, local rise, transit and set
- Xtimes, length of time up, constellation, and angular separations between all
- Xcombinations of objects.
- X
- XObserving circumstance information includes UTC and local date and time,
- Xlocal sidereal time, times of astronomical twilight and length of night,
- Xlocal temperature, pressure and elevation above sea level for the refraction
- Xmodel and a monthly calendar.
- X
- XRA/Dec calculations are geocentric and may include the effects of light
- Xtravel time, nutation, aberration and precession. Alt/Az and
- Xrise/set/transit and, optionally, angular separation calculations are
- Xtopocentric and include the additional effects of parallax and refraction.
- X
- XPlot and listing files of selected field values may be generated as the
- Xprogram runs. The plot files are full precision floating point values in
- XASCII intended for export to other plotting programs. Xephem includes simple
- Xquick-look facilities to view plot files. The listing files are tables
- Xformatted for more general human reading.
- X
- XXephem can read databases of objects. The objects may be fixed or specified
- Xvia heliocentric elliptical, hyperbolic or parabolic orbital elements to
- Xaccommodate solar system objects such as asteroids or comets. These are
- Xthen available as candidate values for the user defined objects and all of
- Xthem can be displayed in the sky map subject to type and magnitude filters.
- XThe format of the database file is described in the Help for the DB menu.
- X
- X@MainMenu
- XAcross the top of the Main menu is a menu bar to allow selecting the
- Xprinciple display menus of xephem. These may be turned on in any desired
- Xcombination. Each menu will have its own Close button or it may be closed
- Xby reselecting it from the main menu bar.
- X
- X The "File" pulldown is a few miscellaneous controls. The "Reset" entry will
- X return xephem to its initial state. The "Messages" entry toggles whether
- X the general messages menu is displayed. Note that all messages that go
- X to this menu also appear on stdout regardless of whether the menu is
- X up. In order to be sure it is seen, the "messages" menu is always moved
- X to the top of the window stack and placed under the pointer whenever it
- X is up and new messages are added to it. The "Quit" entry exits xephem.
- X
- X The "View" pulldown toggles any of the several xephem displays.
- X
- X The "Control" pulldown toggles the plotting, listing and searching control
- X menus.
- X
- X The "ObjX/Y..." pushbutton toggles the menu that allows you to define
- X the user defined objects, ObjX and ObjY. Said menu also allows you to
- X inspect each item currently in the xephem database.
- X
- X The "DB..." pushbutton toggles the menu that allows to add or replace
- X entries in the xephem database from files of database objects.
- X
- X The "Preferences" pulldown lists the available preferences that may be
- X changed at runtime. The options currently available include whether the
- X algorithms are chosen for accuracy or speed; dates are shown and entered
- X in month/day/year, year/month/day or day/month/year format; and whether
- X local topocentric circumstances are given in English or Metric units of
- X measure. Each of these may be initialized via the XEphem resources; see
- X the sample XEphem.ad resource file for details. When the Algorithm
- X setting is for Fast, a simpler precession algorithm is used and there
- X is no correction for light travel time or nutation. Whenever the
- X preferences are changed at run time, all effected fields are immediately
- X recalculated.
- X
- X Finally, the "Help" pulldown provides access to several general areas of
- X information.
- X
- XThe next row is a status line that contains a short description of what
- Xxephem is doing at the moment with regards to its looping behavior.
- X
- XBelow that is room for the NEW CIRCUMSTANCES message. When you change a
- Xfield that would invalidate any of the other fields the message NEW
- XCIRCUMSTANCES appears near the top of the menu. This will remain until at
- Xleast one screen update loop occurs.
- X
- XSee the Help for "Operation" for more information on changing the fields in
- Xthe Main menu and controlling xephem's runtime behavior. See the Help for
- X"Triad formats" for more information on these formats.
- X
- XFollows is a description of each of the display fields in the Main menu.
- X
- X UTC Date The UTC date.
- X UTC Time The UTC time.
- X Julian The current Julian date, to about 1-second accuracy.
- X Sidereal The sidereal time for the current time and location..
- X TZ Name The local timezone name. The name field may be changed to any
- X three-character mnemonic.
- X TZ Offset Hours local time is behind UTC, ie, positive west or negative
- X east of Greenwich.
- X Local Date The local date. This is UTC minus the value of TZ Offset.
- X Local Time The local time. This is UTC minus the value of TZ Offset.
- X
- X Twilight Dip The number of degrees the sun is below the horizon we wish to
- X call twilight. This sets the value for the following fields.
- X Dawn Local time when the sun center is "Twilight dip" degrees below
- X the horizon before sunrise today.
- X Dusk Local time when the sun center is "Twilight dip" degrees below
- X the horizon after sunset today.
- X Night Length Length of astronomical night, ie, Dawn - Dusk. If this and the
- X display for Dawn and Dusk are shown as "-----", it means the sun
- X is either always below or always above "Twilight dip" degrees
- X below the horizon on this particular day.
- X
- X N Steps The number of times the display will be updated (time advanced
- X by Step Size each step) automatically.
- X Step Size The amount of time UTC (and its derivatives) is incremented
- X each loop.
- X Pause Number of seconds to pause between screen updates. This is
- X used mainly to set up for free-running unattended operation.
- X Pausing is not done when plotting or searching is on.
- X
- X Latitude Location latitude, positive degrees north of equator.
- X Longitude Location longitude, positive degrees west of Greenwich meridian.
- X Elevation Local elevation of the ground above sea level, in feet. (see
- X implementation notes). Used in refraction correction.
- X Temperature Local surface air temperature, in degrees F. Used in refraction
- X correction.
- X Atm Pressure Local surface air pressure, in inches of mercury. Used in
- X refraction correction.
- X Epoch The epoch, to the nearest 0.1 years, to which the ra/dec
- X fields are precessed. This says (OfDate) when coordinates
- X are not precessed, ie, are in the epoch of date.
- X
- XThe calendar on the right of the Main menu is based on UTC. Selecting a date
- Xbutton will set the date. Unlabeled buttons before the first of the month
- Xand after the last of the month work as expected to also imply a change in
- Xmonth or year as necessary. The month and year buttons pop up selections
- Xthat allow these to be changed as well. In no case does using the calendar
- Xchange the current time (just the date).
- X
- X@Operation
- XWhen xephem starts it sets the initial values of several fields from several
- XX resource values. See the Help for "Initialization" for details of the
- Xformat of these resources. Xephem then draws all fields on the Main screen
- Xwith their initial values. The program then loops advancing time each step,
- Xby some amount you may control, and updating all fields each loop.
- X
- XThere are three fields that control this looping behavior. "N Steps"
- Xcontrols the number of steps, "Step Size" the amount of time to add each
- Xstep, and "Pause" is the amount of real seconds to pause between steps. When
- Xlooping is in effect, the bottom button on the Main menu says "Stop". (Note
- Xthat Xephem does not pause between steps when plotting or searching is on.)
- XWhen the number of steps goes to 0 or the "Stop" button is selected, the
- Xlooping stops and the button is relabeled "Update".
- X
- XNote that when looping with Pause set to 0, most numeric field data are not
- Xdrawn in order to speed up the display. These values are always updated
- Xinternally, however. and may safely be used for plotting, searching or
- Xlisting. This is true even if the menu that displays the information is
- Xclosed.
- X
- XMost fields may be changed by selecting them. A prompt dialog with a brief
- Xexplanation of the field will be presented. A new value may be typed into
- Xthe text field provided. If "Ok" is selected the new value will be used; if
- X"Cancel" is selected the field will be left unchanged. In either case, the
- Xprompt dialog goes away. Some of the dialogs have an extra button as a handy
- Xway to enter frequently used values for the field.
- X
- XWhen you have changed a field that would invalidate any of the other fields
- Xthe message NEW CIRCUMSTANCES appears near the top of the Main menu. This
- Xwill remain until at least one screen update loop occurs. If you change any
- Xfield that causes new circumstances, the "Step Size" value is not added to
- Xthe current time after the first loop. Note also that after a series of
- Xloops, "N Steps" is automatically reset to 1 from 0 so "Update" will do
- Xexactly one loop again.
- X@Credits
- XFirst and foremost, I want to thank my lovely and loving wife, Kathy, for
- Xfreely accepting me as I am and for encouraging and supporting my passion for
- Xastronomy in general and writing xephem in particular.
- X
- XMany formulas and tables are based, with permission, on material found in:
- X"Astronomy with your Personal Computer" by Dr. Peter Duffett-Smith,
- XCambridge University Press, (c) 1985.
- X
- XConstellation algorithm is from a paper by Nancy G. Roman, "Identification
- Xof a constellation from a position", Publications of the Astronomical
- XSociety of the Pacific, Vol. 99, p. 695-699, July 1987.
- X
- XThe high-precision precession routine is from 1989 Astronomical Almanac, as
- Xinterpreted by Craig Counterman. Mr. Counterman also deserves the credit for
- Xproviding the initial encouragement to write an astronomical tool
- Xspecifically for X Windows.
- X
- XThe Earth map is derived from one of the demos that comes with gnuplot,
- XCopyright (C) 1986, 1987, 1990, 1991 Thomas Williams, Colin Kelley.
- X
- XThe moon bitmap is derived from xphoon, Copyright (C) 1988 by Jef Poskanzer
- Xand Craig Leres.
- X
- XJupiter's moons based on information in "Astronomical Formulae for
- XCalculators" by Jean Meeus. Richmond, Va., U.S.A., Willmann-Bell, (c) 1982.
- X
- XSaturn's moons based on code supplied by Doug McDonald.
- X
- XMany test cases were gleaned from the pages of Sky and Telescope, (C) Sky
- XPublishing Corp.
- X
- XI thank all the organizations behind the incredible Internet for its
- Xmaintenance and free and easy access.
- X
- XNational Space Science Data Center and the Institute for Theoretical
- XAstronomy of the Russian Academy of Sciences for the asteroid database and
- Xthe NSSDC and the Smithsonian Astrophysical Observatory for the SAO
- Xdatabase.
- X
- XThe members of the Saguaro Astronomy Club for the preparation and free
- Xdistribution of their deep-sky database.
- X
- XBright stars are from the Yale Bright Star catalog, as edited by Robert Tidd
- X(inp@violet.berkeley.edu) and Alan Paeth (awpaeth@watcgl.waterloo.edu). Any
- Xerrors in conversion to the ephem.db format are strictly mine.
- X
- XSpecial thanks to all the folks over the years who have provided innumerable
- Xideas, suggestions and bug reports, both for xephem and its ancestor,
- Xephem. A major benefit to writing and distributing these programs has been
- Xthe chance to make friends from around the world.
- X
- X@Initialization
- XMost of the fields in the Main xephem menu can be initialized from the X
- Xresources for class "XEphem". Of course, you may still change any field
- Xwhile the program is running too; these just set the initial conditions.
- X
- XBecause of the way unspecified triad components are left unchanged (see
- Xhelp on Triad Formats) always specify all three for all such entries. For
- Xexample, to initialize the longitude to zero degrees, say 0:0:0, not just 0.
- X
- X UD initial UTC date, such as 10/20/1988, or "Now" to use the computer
- X clock.
- X UT initial UTC time, such as 12:0:0, or "Now" to use the computer clock.
- X JD time specified as a Julian Date.
- X TZone hours the local time is behind utc, such as 5:0:0. You need not
- X set this if you use "Now" for UT or UD.
- X TZName name of the local time zone, such as CDT. 3 chars max. You need
- X not set this if you use "Now" for UT or UD. This is purely a text
- X label; xephem makes no attempt to compute anything from this label,
- X such as a UTC offset.
- X Long longitude, in degrees west of Greenwich, in the form d:m:s.
- X Lat latitude, in degrees north of the equator, in the form d:m:s.
- X Elevation height above sea level, in feet or meters, such as 800. Used to
- X compute parallax of solar system objects.
- X Temp air temperature, in degrees F or C, such as 60.
- X Pressure air pressure, in inches of Mercury or mBar, such as 29.50.
- X Temp and Pressure are used to compute refraction when the AdpHzrn
- X option is active; see the Help for the Data setup table.
- X StepSize the time increment between screen updates, such as "1" to give
- X one hour updates. this can be a specific amount or RTC to use
- X the system clock as a real-time source. You may also specify a
- X time in days by appending a D (or d) after the number or a time
- X in sidereal days by appending an s (or S) after the number.
- X NSteps number of times program will loop automatically.
- X see the discussion under Program Operation.
- X Epoch this sets the desired ra/dec precession epoch. you can put any
- X date here (use decimal form, such as 1992.5) or "EOD" to use the
- X current instant ("Epoch of Date").
- X Pause The number of seconds to pause between calculation steps.
- X TwilightDip Number of degrees the sun is below the horizon that you want to
- X define as being the end of "twilight"; must be at least 0.
- X@Date/time
- XXephem uses many values that get are entered in some variation of X/Y/Z form.
- XWe call this a "triad" input format.
- X
- XTimes are displayed and entered in h:m:s format. If you pick a time field
- Xto change it. Any of the h, m, and s components that are not specified are
- Xleft unchanged from their current value. For example, 0:5:0 set hours to 0,
- Xminutes to 5, seconds to 0, whereas :5 sets minutes to 5 but leaves hours
- Xand seconds unchanged. A negative time is indicated by a minus sign (-)
- Xanywhere before the first digit.
- X
- XDates are displayed and entered in any one of month/day/year, year/month/day
- Xor day/month/year form. A preference selection on the main menu, and controlled
- Xby the XEphem resource DateFormat, selects which form is currently being used.
- X
- XAs with time, components omitted when entering a new value retain the current
- Xvalue. For example, if the current date is 10/20/1988 and you type 20/30
- Xthe new date will become 20/30/1988. If you then type //2000 the new date will
- Xbecome 20/30/2000. Note you must type the full year since the program is
- Xaccurate over several centuries either side of 1900.
- X
- XIf you change the date, the time (ie, partial day) will not change.
- X
- XNegative years indicate BC dates. For example, Jan 1, 1 BC is given as
- X1/1/-1. There is no year 0.
- X
- XTwo other ways to set the date are supported for compatibility with some
- Xpublished comet ephemerides. You may enter the day portion as a floating
- Xpoint number. When you set the day this way, the time will also change to
- Xcorrespond to the fractional portion of the day.
- X
- XYou may also enter a date as a decimal year, as in 1990.12345. Also, when
- Xthe date format preference is set to M/D/Y or D/M/Y the decimal point may be
- Xomitted if the value is not a reasonable month or date value, respectively.
- XDecimal years are useful in interpreting plot files that include a date field,
- Xsince date fields are stored in plot files as decimal years. Any input that
- Xincludes exactly one decimal point is assumed to be a decimal year.
- X
- XOther parameters such as longitude, latitude and "Step Size" also fall into
- Xthe general triad format. The same rules apply to these with respect to
- Xonly having to set the portions that are being changed.
- X
- XAs a matter of typing convenience, the program accepts most any punctuation
- Xcharacter as the separator in a triad; you don't have to type a perfect ":" or
- X"/".
- X@Notes
- X1) The program uses a horizontal plane tangent to the earth Elev feet above
- Xsea level as the horizon for all altitude calculations, rise/set events, etc.
- XDue to Earth's curvature, this is not the same as the angle up from the local
- Xhorizon unless the observer is directly on the ground. The effect can be found
- Xfrom:
- X
- X sin(a)**2 = (h**2 + 2Rh) / (R+h)**2
- X where:
- X R = radius of earth
- X h = height above ground (same units as R)
- X a = increase in altitude
- X
- XThe effect can be significant. For example, the effect is more than two arc
- Xminutes at a height of 5 feet.
- X
- X2) The accuracy of xephem can not be specifically stated since the Duffett-
- XSmith book does not warrant its planet position polynomials to any given
- Xdegree. I know for sure that better accuracy could be achieved if xephem
- Xused TDT but I have not yet decided on a suitable algorithm. Allowing for
- Xthis manually, comparisons with the Astronomical Almanac are often within a
- Xvery few arcseconds.
- X
- X3) The sun-moon distance is the solution for the third side of a planar
- Xtriangle whose two other sides are the earth-moon distance and earth-sun
- Xdistance separated by the angle of elongation.
- X
- X4) The calendar shows UTC, including dates of new and full moon.
- X
- X5) The visual magnitudes for the planets take into account the phase of the
- Xillumination; the magnitudes for other solar system objects do not.
- X
- X6) Ideas:
- X + add tick marks (third axis?) to plots.
- X + write a tool to find g/k from a set of predicted magnitudes.
- X + search for occultations with all fixed objects.
- X + add explicit searching for solar and lunar eclipses.
- X + do more moons.
- X + add a shorthand for synodic step sizes.
- X + add e/w flip option to all displays.
- X + use FileSelectionBox to choose plot, listing, and database files.
- X + think of a way to display decimal years in plots as m/d/y.
- X + incorporate Terrestrial Dynamical Time (known as Ephemeris Time prior to
- X 1984). TDT is about 57 seconds ahead of UT1 in 1990.
- X + account for lunar augmentation.
- X + add undo for plot and listing selections.
- X + use a progress meter during long operations, not just the watch cursor.
- X + let xephem put things in the root window.
- X + add lots more stuff to the Earth display, including interactive selection
- X and tracking of lat/long and allow different viewpoints.
- X + compute and display libration info in moon view.
- X
- XBugs:
- X - %0*.* in f_sexad() doesn't work on some systems (needs 0 deleted)
- X - should jup moon +y be S???
- X - the built-in elements for pluto need to be updated. the elements for pluto
- X in the included ephem.db database sampler are more accurate.
- X - allow for decimal seconds in format converters.
- X@Plot
- XThis menu controls the plot generation and display functionality of xephem.
- XYou may select most numeric information displayed by xephem, in pairs, to
- Xform x/y coordinates of a plot. You may select up to ten such pairs. You
- Xthen select a file to contain the plot information. Xephem adds one line of
- Xinformation to the file for each x/y pair each time iteration step. Xephem
- Xcan also plot any such file on the screen. The file format is compatible
- Xwith the character version of xephem, ephem.
- X
- XSelecting data to plot:
- X
- XSelect the "Select fields" toggle button to make each field in the other
- Xmenus that are eligible for plotting appear as a pushbutton. Select each
- Xsuch button as desired to form the x or y component of a plot. As you make
- Xthe selections, they are listed in the menu. You may also associate a
- Xone-character tag with each line. These tags will be included in the plot
- Xdisplay for identification later. Once all the field choices have been made
- Xyou may return all the menus to their normal operational appearance by
- Xreselecting the same toggle button.
- X
- XSpecifying the plot file name:
- X
- XType the name of the file to be used to contain the plot information in the
- Xtext field provided. When xephem first needs to write to the file, it will
- Xfirst check for the existence of the file and, if it already exists, ask
- Xwhether you wish to append to the file or overwrite it.
- X
- XThe default plot file name may be specified as the value of the resource
- Xnamed "XEphem*Plot*Filename.value". If this resource is not specified then
- Xthe file name will be "ephem.plt".
- X
- XSpecifying a plot file title:
- X
- XEnter a short title for the plot information in the text are provided. When
- Xxephem first writes to a plot file, it will place the contents of the title
- Xtext area, if it is not empty, into the file as a comment. All lines within
- Xa plot file that do not begin with an alphanumeric character are considered
- Xcomments and are ignored. If the first line of a file is a comment, xephem
- Xwill use it as the title for the plot when it displays the plot.
- X
- XGenerating the plot entires:
- X
- XOnce the fields have been specified and the plot file named and titled, you
- Xmay select the "Plot to file" toggle button when ready. Now each time xephem
- Xgoes through one iteration the values you have selected and their tags will
- Xbe written to the plot file. Note that when plotting is activated, xephem
- Xdoes not update the screen until the "N Steps" count goes to 1. This greatly
- Xspeeds the creation of plot files by avoiding screen updates. If you wish to
- Xwatch each iteration, set "N Steps" to 1 and select the "Update" button
- Xmanually for each iteration. Once all the desired data has been entered into
- Xthe plot file, toggle the plot button back off to flush all data and close
- Xthe file.
- X
- XThe menus that contain each of the fields used in the plot need not be
- Xvisible while the plot is being generated.
- X
- XViewing plot files:
- X
- XExisting plot files may be viewed by entering their name into the text field
- Xprovided and selecting the "Show plot file" pushbutton. As many different
- Xplot files may be viewed simultaneously as desired. Each plot has separate
- Xcontrols for flipping the X and Y axes and for turning on and off a
- Xreference coordinate grid.
- X
- XThe xephem distribution kit includes a sample plot file of the analemma.
- X@Listing
- XThis menu controls the list generation functionality of xephem. The fields
- Xyou select define columns of a table written to a file as xephem runs.
- XThese columns look exactly like their corresponding fields on the xephem
- Xmenus and so are more familiar and readable than the entries in plot files.
- XThey are designed to be used in further text processing operations or
- Xprinted as-is. Two spaces are placed between each column.
- X
- XSelecting data to list:
- X
- XSelect the "Select fields" toggle button to make each field in the other
- Xmenus that are eligible for listing appear as a pushbutton. Select each such
- Xbutton as desired to form each column of the listing. As you make the
- Xselections, they are listed in the menu. Once all the column choices have
- Xbeen made you may return all the menus to their normal operational
- Xappearance by reselecting the same toggle button.
- X
- XSpecifying the listing file:
- X
- XType the name of the file to be used to contain the listing in the text
- Xfield provided. When xephem first needs to write to the file, it will first
- Xcheck for the existence of the file and, if it exists, ask whether you wish
- Xto append to the file or overwrite it.
- X
- XThe default listing file name may be specified as the value of the resource
- Xnamed "XEphem*List*Filename.value". If this resource is not specified then
- Xthe file name will be "ephem.lst".
- X
- XSpecifying a listing file title:
- X
- XAll lines within a listing file that do not begin with an alphanumeric
- Xcharacter are considered comments and are ignored. When xephem first writes
- Xto a listing file, it will place the contents of the title text area, if it
- Xis not empty, into the file as a comment for your convenience.
- X
- XGenerating the listing entires:
- X
- XOnce the fields have been specified and the listing file named and titled,
- Xif desired, select the "List to file" toggle button. Now each time xephem
- Xgoes through one iteration the values you have selected will be written to
- Xthe file. Note that when listing is activated, xephem does not update the
- Xscreen until the "N Steps" count goes to 1. This greatly speeds the creation
- Xof listing files by avoiding screen updates. If you wish to watch each
- Xiteration, set "N Steps" to 1 and select the "Update" button manually for
- Xeach iteration. Once all the desired data have been entered into the listing
- Xfile, toggle the list button back off to flush all data and close the file.
- X
- XMenus that contain each of the fields used in the listing need not be
- Xvisible for the fields to be listable.
- X@Search
- XThis menu controls the automatic searching facility. You define an arithmetic
- Xor boolean function, using most of the fields xephem displays, then xephem
- Xwill automatically evaluate the function and adjust the time on each
- Xiteration to search for the goal.
- X
- XTo perform a search:
- X enter a function,
- X compile it,
- X select a goal,
- X set the desired accuracy,
- X enable searching,
- X start the search process.
- X
- XEach of these steps is described below.
- X
- XEntering the function:
- X
- XThe function may be any arithmetic expression, in C-language syntax. All of
- XC's comparison, logical and arithmetic operators are supported as well as
- Xseveral common arithmetic functions. Here is the complete list:
- X
- X + - * / && || > >= == != < <=
- X abs sin cos tan asin acos atan degrad raddeg pi log log10 exp sqrt pow atan2
- X
- XThe function is entered into the text line provided. It may utilize most of
- Xthe fields from the other xephem menus. Press the "Enable field buttons"
- Xbutton to make each available field a button. Where ever a field is desired
- Xin the function, position the text insertion cursor at the desired position
- Xand select the field; its name will be inserted into the function text. When
- Xyou are finished defining the function, turn off the field button appearance
- Xby selecting the "Enable..." button again. Once you get to know the names
- Xof the fields you may also enter them manually, if you prefer.
- X
- XCompiling the function:
- X
- XOnce the function has been entered as desired, it must be compiled by
- Xselecting the "Compile" button (or by pressing the Return or Enter key on
- Xyour keyboard). If there are any errors, a diagnostic message will appear
- Xjust below the function. Whenever a search function has been successfully
- Xcompiled, the message will read <no compile errors>. Each time a function
- Xis successfully compiled, xephem updates all fields and evaluates the
- Xfunction. As explained below, this can be used as a sort of "astronomical
- Xcalculator" even when not actually searching.
- X
- XSelecting a search goal:
- X
- XYou may choose from any of three evaluation algorithms, as selected by the
- Xtrio of radio buttons. "Find extreme" will search for a maxima or minima of
- Xthe function. "Find 0" will search for a time when the function evaluates to
- Xzero. "Binary" will keep incrementing time by "Step Size" (in the main
- Xmenu) until the state of the function changes, then do a binary search to
- Xfind the exact time when the function changes state. Binary search
- Xinterprets a function that evaluates to zero to be in one state and all
- Xother values to be the opposite state. Generally, binary functions are
- Xcomprised of logical operators at their outermost expression levels.
- X
- XSpecifying the desired accuracy:
- X
- XSearching will automatically stop when the time changes by less than the the
- Xaccuracy value. Note that this method of detecting convergence is not based
- Xon the value of the search function itself. To change the desired accuracy
- Xpress the pushbutton showing the current accuracy next to the "Accuracy"
- Xlabel and enter a new value in the dialog.
- X
- XPerforming the search:
- X
- XOnce the function is defined and it compiles without errors, you may enable
- Xsearching by selecting the button at the top labeled "Searching is Active".
- XThen, each time "Update" is selected on the main menu the search proceeds until
- Xeither "N Steps" iterations have occurred or until "Step Size" becomes less
- Xthan Accuracy. The initial search time and step size are set from the main
- Xmenu, and are adjusted automatically as the search proceeds. Note that by
- Xsetting "N Steps" to 1 and repeatedly selecting Update you can effectively
- Xsingle-step the search process. Search control will automatically turn off when
- Xconvergence is detected, the function is edited or you may turn it off manually
- Xat any time by toggling the button labeled "Search is Active" back off.
- X
- XAdditional notes on searching:
- X
- XWhen selecting fields for plotting or listing a button appears labeled "Use
- Xfor plotting". You may select this button to use the evaluated search
- Xfunction as an item in the plot or listing feature. Note that the search
- Xfunction may be used in plotting and listing whether or not searching is
- Xenabled.
- X
- XThe menus that contain each of the fields used in the search function need
- Xnot be visible for the fields to used for searching.
- X
- XThe "Close" button removes the search control menu from the screen; it does
- Xnot effect actual search operation in any way.
- X
- XA successfully compiled search function is evaluated each time xephem updates.
- XWhenever a search function is compiled it is also evaluated using freshly
- Xupdated values. In this way, the Search menu can actually be used as an
- Xarbitrary "astronomical calculator" at any time. In each of these cases you
- Xneed not be actually `searching' to use these feature.
- X
- XHint:
- X
- XSearching periodic functions can lead to solutions far from the intended
- Xrange. You will get best results if you can start the search near the
- Xexpected answer and with a small step size that bounds the solution. You can
- Xuse the plotting feature to study a function and get an idea of the
- Xsolution, then use the automatic searching feature to zero in.
- X@Data Table
- XThis is a table of information about each planet, Sol, Luna, and any two
- Xuser defined objects, ObjX and ObjY. Each data item occupies one column in
- Xthe table and each object occupies one row.
- X
- XSelect the "Setup" button to configure the table rows and columns as
- Xdesired. The initial configuration can be set from the X resources
- XDataSelRows and DataSelMiscCols. See the sample XEphem.ad resource file for
- Xexamples.
- X
- XWhen any columns related to rising or setting are active boxes at the bottom
- Xwill indicate whether the Standard or Adaptive refraction model is in
- Xeffect and whether the times refer to the center or the upper limb of the
- Xobject. Similarly, when any of the separation columns are active a box will
- Xbe present to indicate whether the separation is from a geocentric or
- Xtopocentric point of view. See the help for the "Setup" menu for more
- Xinformation about these modes.
- X
- XVarious odd ball rising, transit and setting conditions are accounted for
- Xand marked as follows when they occur:
- X
- X NoRise up some time but never rises, as such, today.
- X NoSet up some time but never sets, as such, today.
- X NoTran up some time but doesn't transit, as such, today.
- X CirPol object is circumpolar (never goes below horizon) today.
- X NvrUp object is never up today.
- X XX:XX+ "+" appended to rise, transit or set times means the event occurs
- X twice today; the time given is the time of the first event.
- X "+" appended to "Hours Up" means it is still up at midnight.
- X
- XAny of the information in this table may be plotted, listed or used in a
- Xsearch algorithm. See the help for these control functions for more details.
- X
- XSee the help for the "Setup" menu for a description of each field.
- X@DataSelection Table
- XThis menu lets you configure which rows and columns will be in the Data
- XTable. When this menu first comes up it will be set to indicate the state
- Xof the Data Table. You may then manipulate the toggle buttons as desired. To
- Xactually change the Data Table to a new configuration select the "Apply"
- Xbutton. "Ok" does the same thing but also closes this menu. "Close" just
- Xcloses this menu without making any permanent changes. In addition to
- Xmanipulating each item individually, each columns includes handy shortcut
- Xcontrols at the top to make changes to column as a whole.
- X
- XThe first column of this menu selects which rows will be present in the Data
- XTable. The planets and the sun and moon are always in this column. If user
- Xdefined objects ObjX or ObjY are defined then they will also be present and
- Xcontrollable from this column. See the help for the "ObjX/Y" menu for more
- Xinformation about user defined objects.
- X
- XEntries in the remaining three columns in this menu control which columns
- Xwill be present in the Data Table. They are grouped into three categories
- Xfor convenience.
- X
- XColumn two controls miscellaneous basic information. The descriptions of
- Xeach entry are as follows:
- X
- X Cns name of the constellation in which the object appears.
- X R_A apparent geocentric right ascension of object, precessed to
- X given epoch, in hours, minutes and decimal minutes.
- X Dec apparent geocentric declination of object, precessed to
- X given epoch, in degrees and minutes.
- X Az degrees eastward of true north for object.
- X Alt degrees up from a horizontal plane that is Elevation feet above
- X sea level.
- X HeLong true heliocentric longitude, in degrees. Earth's is displayed
- X on the sun's line. For the moon this is the geocentric
- X longitude.
- X HeLat true heliocentric latitude, in degrees. For the moon this is
- X the geocentric latitude.
- X EaDst true distance from Earth center to object center, in AU, except
- X distance to the moon is in miles or km depending on the Units
- X preference.
- X SnDst true distance from sun center to object center, in AU.
- X Elong spherical angular separation between sun and given object,
- X calculated from the their geocentric ecliptic coordinates.
- X Note this is not just the difference in ecliptic longitude.
- X The sign, however, is simply sign(obj's longitude - sun's
- X longitude), ie, degrees east. thus, a positive elongation
- X means the object rises after the sun. This field is not
- X generally useful in searching for conjunctions because of
- X the discontinuous sign change that occurs at conjunction.
- X Size angular size of object, in arc seconds.
- X VMag visual magnitude of object.
- X Phase percent of visible surface in sunlight. Note the moon phase
- X is calculated simplistically as just abs(elongation)/180*100
- X which can be a few degrees off... this means that because of
- X how elongation is defined it doesn't say 0 during new moon
- X (or 100 during full) except during close eclipses (maybe
- X that's a "feature"?).
- X
- XColumn three controls information related to rising, transiting, and
- Xsetting. These may be computed according to two options.
- X
- X"StdRefr", which stands for "standard refraction", computes rising and setting
- Xbased on the standard horizon refraction of 32 arc minutes. This agrees well
- Xwill standard publications. "AdpRefr", which stands for "adaptive refraction",
- Xcomputes rising and setting based on a refraction model that used the actual
- Xatmospheric and topocentric circumstances displayed on the Main menu. This
- Xgenerally leads to accuracies well within one minute if all conditions are
- Xcarefully entered.
- X
- X"Limb" means that the rise and set circumstances are based on the location
- Xof the upper limb of the object. "Center" means that the circumstances are
- Xbased on the location of the center of the object. (In fact, these allowances
- Xare only taken into account for the Sun and moon.)
- X
- XFollows is a description of the Data Table columns controlled by the third
- XData Selection column:
- X
- X RiseTm
- X RiseAz The local time and azimuth when the upper limb (or center) of the
- X object rises today.
- X TrnTm
- X TrnAlt The local time and altitude when the object crosses the meridian
- X today, ie, when its azimuth is true south or, if no precession, when
- X the local sidereal time equals the object's right ascension.
- X SetTm
- X SetAz The local time and azimuth when the upper limb (or center) of the
- X object sets today.
- X HrsUp The number of hours the object is up today, that is, the difference
- X between the set and rise times.
- X
- XNote that these times are for the current local day. See the description of
- X"odd ball" circumstances that this definition can produce and how xephem
- Xreports them.
- X
- XThe last column in the Data Table setup menu controls for which objects
- Xangular separation is computed. Each entry in the Data Table will be the
- Xangular separations between each pair of objects, in degrees.
- X
- XThe vantage point for the Separation values may be chosen. "Geocentric"
- Xignores local conditions and gives the separation as seen from Earth
- Xcenter. "Topocentric" uses the local conditions known to xephem. The
- Xchoice is particularly critical for lunar occultations, but the effect can
- Xbe significant for the planets. Geocentric separations between objects and
- Xthe sun will match the magnitude of the elongation given in the Data menu.
- X
- XWhen ObjX or ObjY are defined, these will appear in the last column and
- Xseparations between them and the other objects (in column 1) may be selected
- Xfor display.
- X
- XNote:
- X
- XSearching over a period that will include the rise or set times of either
- Xobject is generally better performed from the geocentric viewpoint. The
- Xrefraction effect of the topocentric viewpoint causes many arcminutes of
- Xrapid whiplash displacement as the objects rise and set that overlays the
- Xsmooth celestial motion of the objects. This rapid position variation can
- Xconfuse the solver algorithms that expect fairly smooth functions.
- X@Mars
- XThis menu displays the central meridian longitude of Mars, that is, the
- XMartian meridian currently facing towards Earth. This value may be selected
- Xfor plotting, listing and searching as described in the help for these
- Xfunctions.
- X
- XAlso included in this menu is a simple schematic display of the Martian
- Xsurface at the current time. I would like to find a map with a bit more
- Xdetail.
- X
- X@Earth
- XThis menu displays a simple map of the Earth oriented so that the subsolar
- Xpoint is centered. The subsolar point is the location on the Earth from which
- Xthe sun appears to be directly overhead. Another way to interpret the display
- Xis to think of it as displaying exactly that portion of the Earth currently in
- Xsunlight. The subsolar point is marked with a cross.
- X
- XThe latitude and longitude of the current subsolar point are displayed and may
- Xbe selected for plotting, listing or searching as described in the help for
- Xthose functions.
- X
- XIt is interesting to set the step size to a few integral number of days and
- Xwatch the change in latitude. Plotting latitude vs. longitude over the
- Xcourse of a year is equivalent to plotting the analemma.
- X
- XRemember that the numeric information is not updated while looping with Pause
- Xset to 0.
- X@Sky View
- XThis menu displays each object currently loaded in the xephem database with
- Xseveral display options, subject to filtering by type and magnitude range. The
- Xcentral display is intended to be similar to a telescopic view. Descriptions
- Xof each function are keyed to the schematic depiction below:
- X
- X _____________________________________________
- X |Alt-Az | | [Alt] [Az] | |
- X |RA-Dec | F | | A |
- X |--------| O | | l |
- X |Grid | V | | t |
- X |--------| | | |
- X |F Mag | | | / |
- X |B Mag | | Sky | |
- X |--------| | | D |
- X |Dots | | | e |
- X |Ecliptic| | | c |
- X |Labels | | | |
- X |--------| | | |
- X |Locate | | | |
- X |--------| | [RA] [Dec] | |
- X | |___|__________________________|___|
- X | | Az / RA |
- X | |__________________________________|
- X | | Date/Time stamp |
- X |________|__________________________________|
- X | Filter Close Help |
- X |___________________________________________|
- X
- XAlt-Az / RA-Dec
- X The radio box in the upper left corner selects whether the display
- X coordinate system is Altitude-Azimuth or Right Ascension-Declination.
- X Whenever the Alt-Az system is used, nothing is displayed that would lie
- X below the current horizon (except trails; see note under Sky).
- X
- X The orientation of the display circle is always without reflections. In
- X Alt-Az mode, left, right, up and down as are they would appear to the
- X otherwise unaided eye. In RA-Dec mode, up is always celestial north, left
- X is always celestial East. The meridian named by the horizontal slider is
- X always the line between the center of the field-of-view and the nearest
- X pole.
- X
- XGrid
- X The toggle button labeled "Grid" controls whether a calibration grid will
- X overlay the display. When the grid is displayed, its graduation is displayed
- X below the toggle button.
- X
- XF Mag / B Mag
- X The two sliders on the left set the brightness range being displayed. Only
- X objects that are currently within the selected range will be shown on the
- X display. Note that sliding either scale beyond its opposite is not permitted
- X but it is permitted to do this by selecting in the slider trough should you
- X really want to do this (to turn off all objects).
- X
- X Note this does not effect trails.
- X
- XDots
- X The toggle on the left labeled "Just Dots" selects how objects are drawn.
- X
- X When the toggle is pushed in, objects of all types are displayed simply as
- X dots. The diameter of the dots equals the difference between its magnitude
- X and the faintest magnitude. In this way the size of the dots can be changed
- X as desired.
- X
- X When the toggle is released, each type of object is displayed with a unique
- X schematic symbol. These symbols may be viewed from the Filter menu. In this
- X case too the size is proportional to magnitude above the faintest limit.
- X
- X In either form, the color of the object is displayed according to the value
- X established for each basic type in the X resource database. See the sample
- X XEphem.ad resource file for examples of setting object colors.
- X
- XEcliptic
- X The toggle on the left labeled "Ecliptic" selects whether a dotted line is
- X drawn along the ecliptic. The ecliptic is the plane of the Earth's orbit
- X or, as seen from Earth, the path of the Sun and the approximate path
- X of the planets across the sky.
- X
- XLabels
- X The toggle on the left labeled "All labels" controls whether the labels
- X for all objects are forced on. This does not effect which objects have
- X their individual "Persistent label" options on.
- X
- XLocate
- X The button labeled "Locate..." will pop up a list of the basic objects and
- X the defined user defined objects, if any. Selecting any of these entries
- X will place a cross-hair over the object. If the object is not within the
- X field of view the object will first be centered, unless Alt-Az mode is
- X currently active and the object is below the horizon. To locate other
- X objects use the ObjX/Y menu.
- X
- XFOV
- X The left vertically-oriented slider controls the field-of-view of the
- X display circle. This can be varied from 1 to 180 degrees.
- X
- X[Alt] [Az] [RA] [Dec]
- X The coordinates of the cursor are tracked and displayed across the bottom
- X and top of the circular display area as long as it is within the circle and
- X the left mouse button is depressed.
- X
- X NOTE: The values displayed during tracking for the coordinate system
- X opposite to the one currently in effect may not agree exactly with
- X the values displayed elsewhere by xephem, particularly for close solar
- X system objects. To understand why recall that in all these other displays
- X xephem computes geocentric RA/Dec and topocentric Alt/Az. Recall further
- X that parallax contributes significantly to the difference between these
- X points of view and parallax depends on the distance to each particular
- X object. Thus, there is no single transformation between these coordinate
- X systems that is correct for all objects. During tracking, the transformation
- X to the coordinate system opposite to the one in current use by the Sky View
- X display is computed without regard to parallax; this is strictly correct
- X only for objects very far away. This has the useful result that while in
- X RA/Dec coordinate mode the tracking values for Alt/Az may be thought of as
- X being geocentric; and while in Alt/Az mode, RA/Dec will be topocentric.
- X
- XSky
- X The center circular area is the sky display of objects. Follows is a
- X description of the operations that may be performed in this area using the
- X pointer.
- X
- X If the pointer is placed near a visible object and the third button is
- X pushed, a popup will appear. This will present several basic data for the
- X object. This data is exactly the same as that which is available in the
- X Data Table menu; see it's Help for more information. If a trailed object is
- X selected, the data will be as it was at the time the position was created.
- X In addition, the popup offers several control operations, as follows:
- X
- X Selecting "Point" from the popup will center the object in the field of
- X view (as well as can be done with the accuracy of the pointing scales
- X anyway).
- X
- X Selecting "Make ObjX/Y" will assign the given object to become ObjX
- X or ObjY, depending on which one is currently being displayed in the
- X ObjX/Y menu. See the help for the ObjX/Y menu for more information on
- X that menu.
- X
- X Selecting "Leave Trail" will start to accumulate all positions of the
- X given object as time is advanced. Each new location will be connected
- X with a line to its previous location. The trails remain correct if the
- X display coordinate system is changed. Trails may be turned on or off
- X without loss of trail information. However, trailing information is
- X discarded if trailing is turned off when a new time step is performed.
- X If any point in a trail is selected the information displayed is as per
- X the object at that time. The fastest way to accumulate trailing
- X information is to turn trailing on and pop the menu down while running.
- X
- X Note that in Alt-Az mode, if an object goes below the horizon the line
- X segments of the trail are displayed but not the actual points.
- X
- X Selecting "Persistent Label" will place the name of the object near it
- X on the display. This will remain until the label is turned off. Note
- X this option is maintained separately for trailed objects and for
- X the untrailed objects; that is, you have independent control over
- X labeling for a trailed object and its currently displayed object
- X since the latter also always appears in the trailed list.
- X
- X The coordinates of the cursor are displayed in the corners of the circular
- X sky area as long as the cursor is within the central circle and the left
- X mouse button is depressed.
- X
- XAlt / Dec
- X The right vertically-oriented slider controls one of two axes that
- X defines the direction in which the display points. In Alt-Az mode this
- X controls altitude and can be varied from 0 to 90 degrees. In RA-Dec mode
- X this controls Declination and can be varied from -90 to +90.
- X
- XAz / RA
- X The bottom horizontally-oriented slider controls one of two axes that
- X defines the direction in which the display points. In Alt-Az mode this
- X controls azimuth and can be varied from 0 to 359 degrees. Azimuth 0 is
- X north and increases eastward. In RA-Dec mode this controls Right Ascension
- X and can be varied from 0 to 23.9 hours.
- X
- XDate/Time Stamp
- X This displays the date and time for which the display is valid.
- X
- XFilter
- X The Filter button along the bottom brings up a menu that controls
- X whether classes of objects are displayed. Using the Filter menu, one may
- X select which classes of objects are desired. Selecting "Apply" updates
- X the sky display according to the desired selection. Selecting "Ok" does
- X the same thing but also closes the filter menu.
- X
- X For reference, the Filter menu also contains the schematic symbol for each
- X type of object, and its code when used in a database file.
- X@Solar System View
- XThis is a graphical representation of the solar system. The Sun is always at
- Xthe center of the screen, marked as a plus (+).
- X
- XThe three sliders at the edges control the position of the observer. The
- Xvertical slider on the left controls the distance from the sun -- you are
- Xcloser as the slider is slid further up. The horizontal slider under the
- Xview controls the heliocentric longitude -- think of it as a rotation about
- Xthe central axis. The vertical slider on the right controls the heliocentric
- Xlatitude -- your angle above the ecliptic plane.
- X
- XAny feature may be identified by pointing near it and clicking the right
- Xmouse button. This will bring down a temporary popup menu with additional
- Xinformation until the button is released. The RA/Dec given for the Earth is
- Xthat of the sun. All RA/Dec info displayed is for the epoch as it was set
- Xon the Main menu when the dot was computed.
- X
- XThe "Leave trails" option can be used to retain old dots. By turning on the
- X"Connect dots" option, these dots are connected by line segments. The
- Xfastest way to accumulate lengthy trail operation is to turn on trailing
- Xand run with the menu popped down.
- X
- XThe planets may be individually turned on and off, without loss of any
- Xdisplay data associated with them, by using the toggle panel near the
- Xbottom. If ObjX or ObjY are defined and are solar system objects then they
- Xwill appear on the display and in the list.
- X
- XThe bottom button marked "Stereo" is used to bring up another image of the
- Xsolar system from a slightly displaced vantage point. Adjusting your gaze to
- Xfuse the two images together will reveal a 3D image. This effect is most
- Xpronounced if trails have been turned for a significant portion of the
- Xorbits of the objects of interest. This effect was designed primarily to
- Xhelp visual the orbits of comets.
- X
- XAt the bottom of the stereo display is a slider to control the location of
- Xthe second vantage point. When the slider is in the center both views are
- Xidentical. Moving the slider to the left will display the scene as though
- Xthe viewer has moved such as to move the objects to the left. Objects closer
- Xto the viewer move more. Moving the slider to the right does the same but in
- Xthe opposite direction. In this way, you may adjust the stereo effect to be
- Xmost comfortable to you, and with or without requiring crossed eyes.
- X
- XClosing the main Solar System menu will close both it and the Stereo menu,
- XIf the Solar System menu is closed while the Stereo menu is on, it will
- Xreappear when the Solar System menu is reactivated. if it is up.
- X@DataBase menu
- XThis menu allows you to inspect and modify the collection of objects that
- Xare currently in memory. These objects form what is referred to as the
- Xxephem database.
- X
- XThe top portion of the menu displays a count of each major type of object in
- Xthe database.
- X
- XXephem supports files that contain descriptions of objects. These files may
- Xbe read into memory either adding to the current database or replacing it.
- XEnter the name of the desired xephem database file in the text area provided
- Xthen select either "Append" or "Replace", respectively.
- X
- XThe default database filename may be specified by setting the X resource
- Xnamed "XEphem*DBPromptD.textString". The internal default name is
- X"ephem.db". The xephem distribution kit includes a sample ephem.db that
- Xcontains more than 15,000 objects of all types.
- X
- XAlso available from the author is the entire Smithsonian Astrophysical
- XObservatory star list. These have been sorted into ten sky regions. There is
- Xone file per region. The entire set is some 11MB.
- X
- XFollows is a description of the format of these database files. This format
- Xremains compatible with the "ephem" dumb-terminal version of xephem for
- Xthose interested.
- X
- XNote that the "Filter" menu accessible from the "Sky View" menu also includes
- Xa list of the type codes for each object, for easy reference.
- X
- X Each object occupies one line. Fields are separated with commas. Some fields
- X are further subdivided into subfields with vertical bars (|). Lines
- X beginning with anything other than a-z, A-Z or 0-9 are ignored and may be
- X used for comets. Objects may be in any order.
- X
- X Where they appear, all date fields may be in either of two forms:
- X
- X 1) month/day/year, where day may contain a trailing decimal portion.
- X examples: 1/1/1993 and 1/1.234/1993
- X NOTE: this is always the format of dates in database files, regardless of
- X the current xephem run-time Data format preference setting.
- X
- X 2) a real-number, such as 1993.123.
- X
- X The first two fields are always Name and Type. Remaining fields depend on the
- X form of the object's motion.
- X
- X The Name field is the object's name.
- X
- X The Type field always starts with a single letter designating the form of
- X the object's motion:
- X f: fixed (no proper motion)
- X e: heliocentric elliptical orbit
- X h: heliocentric hyperbolic orbit
- X p: heliocentric parabolic orbit
- X
- X if "Type" is fixed, an object class code may follow in the next subfield:
- X C: Cluster, globular
- X U: Cluster, with nebulosity
- X O: Cluster, open
- X G: Galaxy, spiral
- X H: Galaxy, spherical
- X A: Cluster of galaxies
- X N: Nebula, bright
- X F: Nebula, diffuse
- X K: Nebula, dark
- X P: Nebula, planetary
- X Q: Quasar
- X T: stellar object
- X B: Star, binary
- X D: Star, double
- X M: Star, multiple
- X S: Star
- X V: Star, variable
- X
- X if class is one of T, B, D, S or V, the spectral class and possibly the
- X numerical subclass designation may follow in the next subfield:
- X O, B, A, F, G, K, M, N, C, S
- X
- X For other object types, the remaining fields are defined as follows:
- X
- X elliptical format (e < 1):
- X i = inclination, degrees
- X O = longitude of ascending node, degrees
- X o = argument of perihelion, degrees
- X a = mean distance (aka semi-major axis), AU
- X n = mean daily motion, degrees per day (computed from a**3/2 if omitted)
- X e = eccentricity,
- X M = mean anomaly (ie, degrees from perihelion),
- X E = epoch date (ie, time of M),
- X D = the equinox year (ie, time of i/O/o).
- X g/k or H/G = magnitude model; select which by preceding the first field
- X with either a "g" or an "H"; H/G is the default if neither is given.
- X s = angular size at 1 AU, arc seconds, optional
- X
- X hyperbolic format (e > 1):
- X T = epoch of perihelion
- X i = inclination, degrees
- X O = longitude of ascending node, degrees
- X o = argument of perihelion, degrees
- X e = eccentricity,
- X q = perihelion distance, AU
- X D = the equinox year (ie, time of i/O/o).
- X g/k = magnitude model
- X s = angular size at 1 AU, arc seconds, optional
- X
- X parabolic format (e == 1):
- X T = epoch of perihelion
- X i = inclination, degrees
- X o = argument of perihelion, degrees
- X q = perihelion distance, AU
- X O = longitude of ascending node, degrees
- X D = the equinox year (ie, time of i/O/o).
- X g/k = magnitude model
- X s = angular size at 1 AU, arc seconds, optional
- X
- X fixed format:
- X RA, hours
- X Declination, degrees
- X magnitude
- X reference epoch
- X s = angular size, arc minutes, optional
- X@Object
- XXephem supports two user-defined objects, denoted ObjX and ObjY. These may
- Xbe fixed objects or objects in elliptical, hyperbolic or parabolic
- Xheliocentric orbits. The ObjX/Y dialog allows you to define these objects.
- X
- XXephem maintains a working copy of these objects for use with the ObjX/Y
- Xmenu that is separate from the real ObjX and ObjY. The ObjX/Y menu always
- Xworks on these working copies. The working copies and the real ObjX/Y only
- Xinteract when using the Ok, Apply and Reset control, as described shortly.
- X
- XThe ObjX/Y menu is always displaying information from one or the other of
- Xthese working copies as indicated by the small radio box in the center of
- Xthe menu at the top. This box may also be used to changed whether ObjX or
- XObjY is being displayed and manipulated. We will refer to the one selected
- Xas the "current working object."
- X
- XThe radio box in the upper left displays the basic type of the current
- Xworking object. This can be changed by selecting another of the collection
- Xof toggle buttons.
- X
- XIn the left and center of the menu is an area that lists each field for the
- Xcurrent working object and its present value. The list is adjusted to
- Xcorrespond to the fields that are associated with the type of the current
- Xworking object. These fields may be changed by selecting the button that
- Xcontains their value. This will bring up a small text entry dialog. A new
- Xentry may be typed into the dialog box and applied by hitting RETURN or
- Xselecting the "Ok" button. The value may be left unchanged by selecting
- X"Cancel".
- X
- XAlong the right edge of the ObjX/Y menu is a list of each object currently
- Xloaded into the xephem database. (See the Help for the "Data Base" menu for
- Xmore information on manipulating this data base.) If there are more than 20
- Xitems then a scroll bar may be used to browse through the list. The entries
- Xare sorted in numeric and alphabetic order for easy selection. If one of
- Xthese objects is selected, then it is copied to the current working object.
- XYou may then further edit the values for this working object as desired.
- X
- XWhen the current working object is as you want it, select "Apply" to copy it
- Xthe real ObjX (or ObjY) used throughout the other functions of xephem. "Ok"
- Xwill do the same thing and also close the ObjX/Y menu.
- X
- XSelecting "Reset" will load the current working object with a copy of the
- Xreal ObjX (or ObjY).
- X
- XSelecting "Sky Point" will move the center of the field of view on the "Sky
- XView" menu so that the current working object is centered and a cross-hair
- Xis drawn over the object. This change in pointing direction and marking will
- Xtake place even if the object is not in the Sky View type filter or within
- Xthe magnitude range. Note that the Sky View display will _not_ be changed if
- Xit is set to Alt-Az mode and the current working object is below the
- Xhorizon.
- X
- XSelecting "Sky Mark" will draw a cross-hair on the Sky View menu at the
- Xlocation of the current working object if it is within the Sky View field of
- Xview. The Sky View menu is never reaimed with this command.
- X
- XFollows is a description of each field for the type of the current working
- Xobject. To get a description of the fields for other types of objects,
- Xchange the type of the current working object and reselect Help.
- X
- X@Fixed Object
- X+Object
- XFixed objects are characterized by five parameters:
- X
- X RA,
- X Dec,
- X magnitude,
- X the reference epoch for the coordinates and
- X angular size in arc seconds, optional
- X
- XNote:
- X
- XIn order to conserve memory usage, xephem stores the RA and Dec for a fixed
- Xobject only once with each object. These values are always precessed _in
- Xplace_ to the current display epoch. Thus, you will find that the RA and Dec
- Xdisplayed for a given object may change if the epoch is changed on the main
- Xmenu and the object information is redisplayed here on the ObjX/Y menu.
- X@Elliptical Object
- X+Object
- XElliptical objects are characterized by 12 parameters: the parameters that
- Xdefine a heliocentric elliptic orbit and the coefficients for either of two
- Xmagnitude models. These elements are the same ones often listed in the
- XAstronomical Almanac. The elements are, in order:
- X
- X i = inclination, degrees
- X O = longitude of ascending node, degrees
- X o = argument of perihelion, degrees
- X a = mean distance (aka semi-major axis), AU
- X n = mean daily motion, degrees per day
- X e = eccentricity
- X M = mean anomaly (ie, degrees from perihelion)
- X E = epoch date (ie, time of M)
- X D = the equinox year (ie, time of i/O/o)
- X g/k or H/G = either of two magnitude models; see below
- X s = angular size at 1 AU, arc seconds, optional
- X
- X
- XYou might have other parameters available that can be converted into these.
- XThe following relationships might be useful:
- X
- X P = sqrt(a*a*a)
- X p = O + o
- X n = 0.9856076686/P
- X T = E - M/n
- X q = a*(1-e)
- X AU = 149,597,870 km = 92,955,621 U.S. statute miles
- X where
- X P = the orbital period, years;
- X p = longitude of perihelion, degrees
- X T = epoch of perihelion (add multiples of P for desired range)
- X q = perihelion distance, AU
- X
- XNote that if you know T you can then set E = T and M = 0.
- X
- XXephem supports two different magnitude models for elliptical objects. One,
- Xdenoted here as g/k, is generally used for comets in elliptical objects. The
- Xother, denoted H/G, is generally used for asteroids in the Astronomical
- XAlmanac.
- X
- X+OBJXY_gkMAGNITUDE
- XWhen using this model for elliptical objects, the first of the two magnitude
- Xfields must be preceded by a letter "g". This applies in both the ephem.db
- Xdatabase file and the corresponding menu elliptical object definition prompt;
- Xotherwise the default magnitude model for elliptical objects is the H/G model.
- X
- X+OBJXY_HGMAGNITUDE
- X
- XThe H/G model is the default magnitude model for elliptical objects but it can
- Xalso be explicitly indicated when the first of the two magnitude fields is
- Xpreceded by a letter "H". This works in both the ephem.db database file and the
- Xcorresponding menu elliptical object definition prompt.
- X@Hyperbolic Object
- X+Object
- XHyperbolic objects are characterized by 10 parameters: the parameters that
- Xdefine a heliocentric hyperbolic orbit and the magnitude model coefficients.
- XThese orbital parameters are, in order:
- X
- X T = epoch of perihelion
- X i = inclination, degrees
- X O = longitude of ascending node, degrees
- X o = argument of perihelion, degrees
- X e = eccentricity,
- X q = perihelion distance, AU
- X D = the equinox year (ie, time of i/O/o).
- X g/k = magnitude model
- X s = angular size at 1 AU, arc seconds, optional
- X
- XAs with elliptical elements, other parameters might be available. The
- Xrelationships are generally the same, except for:
- X
- X q = a*(e-1)
- X
- X+OBJXY_gkMAGNITUDE
- X@Parabolic Object
- X+Object
- XParabolic objects are characterized by 9 parameters: the parameters that
- Xdefine a heliocentric parabolic orbit and the magnitude model coefficients.
- XThese orbital parameters are, in order:
- X
- X T = epoch of perihelion
- X i = inclination, degrees
- X o = argument of perihelion, degrees
- X q = perihelion distance, AU
- X O = longitude of ascending node, degrees
- X D = the equinox year (ie, time of i/O/o).
- X g/k = magnitude model
- X s = angular size at 1 AU, arc seconds, optional
- X
- X+OBJXY_gkMAGNITUDE
- X@OBJXY_gkMAGNITUDE
- XThe g/k magnitude model requires two parameters to be specified. One, the
- Xabsolute magnitude, g, is the visual magnitude of the object if it were one
- XAU from both the sun and the earth. The other, the luminosity index, k,
- Xcharacterizes the brightness change of the object as a function of its
- Xdistance from the sun. This is generally zero, or very small, for inactive
- Xobjects like asteroids. The model may be expressed as:
- X
- X m = g + 5*log10(D) + 2.5*k*log10(r)
- X where:
- X m = resulting visual magnitude;
- X g = absolute visual magnitude;
- X D = comet-earth distance, in AU;
- X k = luminosity index; and
- X r = comet-sun distance.
- X
- XNote that this model does not take into account the phase angle of sunlight.
- X
- X@OBJXY_HGMAGNITUDE
- XThe H/G model also requires two parameters. The first, H, is the magnitude of
- Xthe object when one AU from the sun and the earth. The other, G, attempts to
- Xmodel the reflection characteristics of a passive surface, such as an
- Xasteroid. The model may be expressed with the following code fragment:
- X
- X beta = acos((rp*rp + rho*rho - rsn*rsn)/ (2*rp*rho));
- X psi_t = exp(log(tan(beta/2.0))*0.63);
- X Psi_1 = exp(-3.33*psi_t);
- X psi_t = exp(log(tan(beta/2.0))*1.22);
- X Psi_2 = exp(-1.87*psi_t);
- X m = H + 5.0*log10(rp*rho) - 2.5*log10((1-G)*Psi_1 + G*Psi_2);
- X where:
- X m = resulting visual magnitude
- X rp = distance from sun to object
- X rho = distance from earth to object
- X rsn = distance from sun to earth
- X
- XNote that this model does not take into account the phase angle of sunlight.
- END_OF_FILE
- if test 65231 -ne `wc -c <'xephem.hlp'`; then
- echo shar: \"'xephem.hlp'\" unpacked with wrong size!
- fi
- # end of 'xephem.hlp'
- fi
- echo shar: End of archive 4 \(of 21\).
- cp /dev/null ark4isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 21 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- echo Building ephem.db
- cat > ephem.db.Z.uu ephem.db.Z.uu.?
- uudecode ephem.db.Z.uu
- rm ephem.db.Z.uu ephem.db.Z.uu.?
- uncompress ephem.db.Z
- echo Building skyviewmenu.c
- cat > skyviewmenu.c skyviewmenu.c.?
- rm skyviewmenu.c.?
- echo Building smallfm.xbm
- cat > smallfm.xbm smallfm.xbm.?
- rm smallfm.xbm.?
- else
- echo You still must unpack the following archives:
- echo " " ${MISSING}
- fi
- exit 0
- exit 0 # Just in case...
- --
- // chris@IMD.Sterling.COM | Send comp.sources.x submissions to:
- \X/ Amiga - The only way to fly! |
- "It's intuitively obvious to the most | sources-x@imd.sterling.com
- casual observer..." |
-