WARNING! This section is ``advanced'' PaPCo!
If you are adding a module for a new mission, say EQUATOR-S, then you might want to be able to choose your time range by orbit number. This has so far been implemented for CRRES and POLAR.
With this release of PaPCo the read by orbit functionality has been rewritten and modularized, so it becomes simple to add another satellite mission to this feature.
The way this works is simple. The user needs to write a routine that can compile a list of orbit start/end times based on his/her set of ephemeris data for the mission. Typically there will be a set of files per day with ephemeris information available, like for POLAR. PaPCo provides a template for such a routine (see Section B.3). You need to put that information into a PaPCo structure, the rest is then handled by PaPCo.
For CRRES, the ephemeris is read from the CRRES ephemeris files (which are
already per orbit) and the POLAR_orbits.info file resides in that
directory. For POLAR, the ephemeris is read from the POLAR ephemeris file, and
the CRRES_orbits.info file resides in the POLAR ephemeris data directory. So
if you want to use this feature, you need to have these files, and include in
your papco_set_variables.pro file under your papco_user_XX the
environmental variables that point to the location of these files. For the
PaPCo installation at LANL, these settings are:
papco_setenv, /FS, 'POLAR_ORBITS=/n/leadbelly/belly15/data/polar/eph' papco_setenv, /FS, 'CRRES_ORBITS=/n/leadbelly/belly15/data/crres/eph'
Obviously, if you add a new mission to this scheme, you need to set a new
environmental variable called MISSION_ORBITS.
The PaPCo read by orbit feature allows you to update your orbit list for you mission from within PaPCo, for ongoing missions, as new ephemeris files become available. For this to work, you of course need all the ephemeris files to be available too. Refer to the CRRES modules (maintained by MPAe Lindau).
Including a new satellite in this scheme is not a difficult task, but requires changes to the PaPCo core and is considered advanced PaPCo. If you do add a new mission please let the author of this document know so that is can be included in future PaPCo releases.
The routines handling the ``read by orbit'' feature widgets and functionality
are contained in papco_XX/papco/papco_orbitinfo.pro. They are written
generally and should work for any mission.
The only routine that needs to be written by the user is
mission_createorbitinfo.pro where ``mission'' needs to be replaced by
the name of the satellite. This routine creates the file of orbit information
needed by PaPCo. It has to reside in the PaPCo core directory
papco_XX/papco/. A template for this is included under
papco_XX/papco_lib (see Section B.3)
To use the template (mission_createorbitinfo.pro), this is what you
do:
mission_createorbitinfo.pro to the PaPCo core
directory papco_XX/papco.
mission in the file name and in the
file to the actual name.
papco_set_variables.pro file under your papco_user_XX.
mission_createorbitinfo.pro to the
papco_init.pro file under papco_XX/papco so that it gets
compiled on startup.
By reading through existing mission_createorbitinfo.pro files and the
routines contained in papco_XX/papco/papco_orbitinfo.pro the user
should have no problem in adding a new mission.
PaPCo on startup automatically searches through it's core directory for any
mission_createorbitinfo.pro files to include ``mission'' in it's list
of satellites for the read by orbit function.