Testing an ORViewer-generated load

Load Testing Web Page Topics:

February, 2021 Update: Test NLET files
    - How To Create a Dated NonLoadTrackedEvents.txt File
    - How To Use the Test NLET file in your lr run
June, 2017 Update: testing of ORViewer-generated load products.
Testing Mirror Loads
Testing Super Schedule Loads

February, 2021 Update: Test NLET files

Because non-load events can now occur in any type of load, One has to be careful about which Non Load Event tracking file one is using.

For production runs of lr, the default NLET file that is used is:

/data/acis/LoadReviews/NonLoadTrackedEvents.txt

This file has the latest and greatest non-load events stored within it.

However, the fact that non-load events can occur in any load type means that lr must search for events WITHIN the start/stop time of the review load and include them in the thermal history.

But when you are reviewing a new weekly load, no such events within the load yet exist. After that load was approved and uploaded, non-load event may have occurred during the load execution aboard the spacecraft. These events are added to the production NonLoadTrackedEvents.txt file, and the time stamp of the event(s) will be within the start and stop time of the executing load.

So if, later on, you are testing a load that was reviewed and executed in the past, you must be certain that you use a copy of NonLoadTrackedEvents.txt as it existed at the time of initial review.

A collection of dated NonLoadTrackedEvents.txt files has been assembled in the directory:

/data/acis/LoadReviews/TEST_NLET_FILES/

By "dated" we mean that the naming convention used in this directory is:

[Load_week|load letter].NonLoadTrackedEvents.txt

For example: DEC2418B_NonLoadTrackedEvents.txt

The load letter is required in order to differentiate between A, B and C (etc.) loads.

How To Create a Dated NonLoadTrackedEvents.txt File

There are two ways of creating the dated NLET files:
  1. Automatic recording when running lr for production
  2. By Hand
Automatic recording when running lr for production
Starting early March, 2021, every time you run lr where:
  1. You are not using the -T switch, and
  2. You ARE using the production NLET file
...a dated copy of the production NLET file is placed in the /data/acis/LoadReviews/TEST_NLET_FILES/ directory/ for you automatically - you needn't do anything. There will be one NLET file for each letter load of that load week you review.
Creating a test NLET file by hand
When you are going to test an old load and the load date is prior to the FEB221A load, you must check the /data/acis/LoadReviews/TEST_NLET_FILES/ directory to determine if a dated test NLET file exists for that exact load. If it does, use it.

If it does not you will have to create one. This is very simple:

Let's say you are testing the DEC1817A load, and no dated NLET file exists. The steps are:

  1. cd into /data/acis/LoadReviews/TEST_NLET_FILES.
  2. Copy /data/acis/LoadReviews/NonLoadTrackedEvents.txt to DEC1817A_NonLoadTrackedEvents.txt.
  3. Determine the time of first command or RLTT of the production DEC1817A (the load announcement email will have this).
  4. Delete every event that occurs AFTER the Time of First Command/RLLT.

There are a couple of quirks regarding NLET files which I will eliminate the next time I modify the Backstop History Software:

  1. There can be no blank lines in the file
  2. The last line in the file must end with a # and NO carriage return
Be sure to include the load letter in the file name and be sure to make one for each "letter" load: if there was an A, B and C load for the FEB0120 load week then you must have 3 NLET files in the directory, assuming you will want to test all three letter loads.

Of course if you only need the A load and not the B or C load for your particular tests you can just create the A test NLET file. But the next person who comes along to do testing may growl.

Using a test NLET file in your lr run

This is an excerpt from the lr Perl code showing you the available switches:

GetOptions('break' => \$break, #run lr_break options,
	   's=s' => \$server, #to be passed to acisparams.pl
	   'n=s' => \$hostname, #to be passed to run_PSMC.pl
	   'nolucky' => \$skiplucky, # acquire backstop manually
	   'clean' => \$easy_clean,
	   't=s' => \$test_dir,      # Test dirctory
           'nlet_file=s' => \$nlet_file); #NLET file name
To use an NLET file other than the production file you use the --nlet-file switch.

NOTE:You have to give the full path to the file.

So in our DEC1817A example above, you include the switch in the lr command line:

lr........ --nlet_file /data/acis/LoadReviews/TEST_NLET_FILES/DEC1817A_NonLoadTrackedEvents.txt .........

Back To Top

Update for June, 2017 testing of ORViewer-generated load products.

A new round of testing started in May 2017. This round includes two kinds of test loads:

  1. Mirror of the official Weekly Loads

  2. Super Schedules

So in reality we have 3 different kinds of LR runs these days. Two of the runs use the production OCAT server. The three test types and the servers they use (in parenthesis) are:

  1. Official Production Weekly Loads (ocatsqlsrv)

  2. Mirror of the official Weekly Loads (ocatsqlsrv)

  3. Super Schedules (SYBASE)

Weekly Mirror loads: These loads are built using the new ORviewer DOT generator and mirrors the observations for the week's official load. Use the production OCAT for processing this load. This load will appear before the official OFLS-generated load. Process this load first, using the MIRROR_LR version of lr (see below). When the Official OFLS load appears, process it using the Production version of lr.

Super Schedule loads: These Super Schedule loads are fictitious loads which are tested using the Test OCAT. There is no attempt to adhere to thermal planning limits, or populate a full week's worth of observations. Process these loads using the SS_LR version of lr (see below).

Important General Notes


NOTE: Use The T Switch

It is CRITICAL that you use the -t switch for the Mirror and Super Schedule TEST loads:

NOTE: ACIS-Continuity.txt files

Ever since the introduction of the NLET system, in early 2017, ACIS-Continuity.txt files have appeared in every ofls directory you make. The file is created by lr and is based upon the lr command line, and answers you supply lr if you used the --break switch. However this started with the JAN3017 load. Any load prior to that Does Not Have those continuity files. The thermal models will fail unless they exist.

When you are asked to run lr on a test load, the load itself may be fictitious but you have to supply the name of the continuity load - the load that was running prior to the start of the load you are reviewing. And for that you have to use an existing load. And if the load you are testing occurs before the JAN3017 load then you must determine the load types (Normal, TOO, SCS-107, STOP) of the continuity loads and edit in an ACIS-Continuity.txt file in the Continuity load directories.

lr will create the ACIS-Continuity.txt file for the Test load in the Test Load directory.

NOTE: The Test load type may be totally different from the original load it was taken from. For example the JUN2716T load was a full stop load whereas the actual JUN2716 load was Normal.

So the drill is to:

  1. cd into the ofls of the continuity load
  2. Determine whether that load was Normal, TOO, SCS-107, STOP
  3. Create the appropriate ACIS-Continnuity.txt file in the ofls directory.

You can determine the type of load the Continuity load was by looking at the load review announcement.

The ACIS-Continuity.txt file consists of 2 lines:

  1. the full path to the Continuity file for the load being reviewed
  2. Type of the load being reviewed (either Normal, TOO, SCS-107, STOP) and the interrupt time (if appropriate)

So for example, suppose you are reviwing the MAR2519 load. This was a normal load which follows the MAR1819 load. So the contents of the MAR2519 ACIS-Continuity.txt file are:

/data/acis/LoadReviews/2019/MAR1819/ofls
Normal

The first line tells NLET and lr where to go next to backchain the history of the MAR2519 load. Note that it is a full path.
The second line tells you that the MAR2519 load is a Normal load.

Another example is the OCT2118 load. This was the Return to Science load after the Full Stop of the 2018:283 event. It interrupted the OCT0818 load at 2018:283:13:54:39.00.

So the OCT2118 ACIS-Continuity.txt file contents are:

/data/acis/LoadReviews/2018/OCT0818/ofls
STOP 2018:283:13:54:39.00

If the OCT2118 load was a TOO interrupt load you'd put TOO instead of STOP at the start of the second line. You'd have the Time of First Command as the time stamp on the second line.

For SCS-107 events - where the science load has stopped but the maneuver load continues - the second line would begin with SCS-107, and the time stamp would be the interrupt time.

The process entails going back to look at the Continuity loads and inserting the ACIS-Continuity.txt file on THOSE directories.

NOTE: Target Directory Location

2017/MIRROR for the weekly Mirror loads

2016/SUPER for the Super schedule loads. This is assuming the Super Schedule load is a 2016 load.

You can call the subdirectory under MIRROR or SUPER anything you like. I include my initals to show who ran the load and the load name (e.g. JUN0117L). An example in MIRROR is G4_MAY2217L.

NOTE: Soft Link to point to the Resultant Directory

We would like to keep the Production directory fairly clean of test subdirectories.
However, from time to time the directory you just created with the LR run must be used as the Continuity load for a subsequent Test Load..

So create a soft link in the appropriate (2016 or 2017) directory so that the MIRROR or SUPER
directory can be used as a continuity file. The LR format for the soft link name must be followed:

ABCXXYY

ABC represents the month (e.g. JAN, APR, SEP etc); XX the day of month
and YY the year (16 or 17). However you want to be able to distinguish
between these test loads in the 2016 (or 2017) directory and the real thing.
So put something different in the first of the three letters. You can use the "letter" of the load.
So for example, if you are testing the JUL0116U load,
the link can be UUN0116. Just be sure that the starting
letter is not one used for a normal month (e.g. M).

NOTE: Backstop File Location

When you run lr, it tries to help you get the backstop file by printing out a line with the "get". However for MIRROR LOADS this line is in error:

For example, for the JUN1917L load the line it prints out is:

    get /home/SOT_Transfer/JUN1917/JUN1917L_backstop.tar.gz

But that's NOT where the backstop file is located. It will be found here:

    /home/SOT_Transfer/JUN1917L/JUN1917L_backstop.tar.gz

The directory after SOT_Transfer in these mirror loads will have the Load letter ("L" in this case) as part of the name.

When you're done, symlink your test directory to something like XCT1016 so the next person through this way knows what to link to.

Back To Top



How To Run The TEST version of LR When Testing Weekly Mirror Loads

To execute the test LR you :

  • Sign on as acisdude
  • cd /data/acis/LoadReviews/script/MIRROR_LR
  • Run the lr command
  • Create the Soft Link from the 2016 (or 2017) directory to the MIRROR/ directory you just created.

Suppose you are testing the ORviewer Mirror load JUN1917L. The LR command looks like this:

    lr JUN1917L JUN1217 -t MIRROR/G4_JUN1917L |& tee /...wherever.../MLR_JUN1917L.log

NOTE: Be sure you copy the log file into the resultant test directory.

Back To Top



How To Run The TEST version of LR When Testing Super Schedule Loads

To execute the Super Schedule Load test LR you :

  • Sign on as acisdude
  • Set the Chandra.stk and Sun.txt links to the ones indicated in the Load Announcement.
  • cd /data/acis/LoadReviews/script/SS_LR
  • Run the lr command
  • Create the Soft Link from the 2016 (or 2017) directory to the newly created directory under SUPER/.
  • Reset the Chandra.stk and Sun.txt links to their original values

Ephemeris symlinks: (IMPORTANT UPDATE - Ephemeris files no longer necessary to update, but this section is preserved in case we need to play with ephemerides down the road.)

The first thing to do is to adjust the Ephemeris Symlinks to the ones
specified by the Load Review Announcement. The symlinks in question are here:

/data/acis/LoadReviews/data

with names Chandra.stk and Sun.txt.

The raw files are of the form Chandra_YYDDD_YYDDD.stk (and likewise Sun*.txt), with begin and end dates.
The .stk file is specified in the announcement e-mail:

STK Ephemeris Used: Chandra_16154_16336

The Sun.txt file format will have similar numbers though the begin and end dates will be one higher and one lower respectively. For example:

Chandra_16154_16336.stk
Sun_16155_16335.txt

The LR command:

The LR command looks like this:

lr -s SYBASE MAY2217L MAY1517 -t SUPER/TAY2217 | & tee /....wherever.../SS_MAY2217L.log

NOTE: Again, be watchful of the directory that LR suggests to help you find the the location of the backstop file.

Create the soft link from the 2016 (or 2017) directory to the newly created load directory, as described in the Notes above.


JUN2716S Super Schedule


This Super Schedule assumes an SCS-107 has been run.

Given the Time of the 107:

(Assumed) Time of 107 execution: 2016:179:00:00:00.000

And the time of the first command:

First command Time: 2016:179:09:22:40.000

This schdule is interupting the JUN2016B load. The interrupted Obsid (which is the last in the load) is 17510.

Start and stop time for this Obsid is:

2016:178:16:18:00.416 5101315 ACISPKT XTZ0000005
====> CHANDRA STATUS ARRAY=(ACIS-I,HETG-OUT,LETG-OUT,50924,OORMPEN,CSELFMT2,ENAB)
2016:178:16:19:20.416 5101627 MP_OBSID 17510
2016:179:03:13:58.416 5254907 ACISPKT AA00000000

So the 107 occurs during this observation. Therefore the status line is:

HRC-S,HETG-OUT,LETG-OUT,17510,OORMPEN,CSELFMT2,ENAB

Note that the status line in the load has the Obsid at 50924. However change to Obsid 17510 occurs before the SCS-107. Therefore the inputs to lr -break are:

lr -s SYBASE --break JUN2716S JUN2016 -T SUPER/GG_SS_A_JUN2716

Was this load already approved once, and the replan has the same name? (1=no, 2=yes) ex: NOV1102 was already approved last week, but the replan is also called NOV1102.
1

If not the A load, is the interrupt time the same as the A load? (1=no, 2=yes)
1

IMPORTANT!Please answer these questions: Has the Spacecraft autonomously put HRC-S in the focal plane? (1=no 2=yes)
2

Please enter the interrupt time in format YYYY:DOY:HH:MM:SS.SS

2016:179:09:22:40.00

Back To Top