Analysis: SCT "Adjust Values" Operation
Phil Weinstein -- 4-15-2010; edit 4-16-2010.

Original Request:

Utility in SCT to select certain ranges of time for all (or selected - but not if this is hard) TS slots and change the values by a percentage or a specific amount.

Note: "TS Slot" means "Time Series Slot", not "Table Series Slot". This is not an important clarification in this context, because the SCT supports both Series Slots and Table Series Slot Columns in a similar way.

Discussion:

There are two options for selecting "certain ranges" of time for this operation:

  1. Make use of the SCT's current cell selection mechanism.
  2. Provide two Date/Time Spinners to identify the timestep range to be effected. There is, unfortunately, an ambiguity in the definition of "selected" Slots in the SCT -- Is it only those Slots that are fully selected, or those which have at least one timestep cell selected? Actually, the answer is the latter, for certain Slot-related operations. But since this really is a Slot-value related operation, I recommend against this option.

Assuming that the adjustment operation is applied to the SCT's current cell selection (i.e. the first option, above), development of this feature can be accomplished easily by integrating into the SCT the GUI component and mechanism used for this operation in the Open Slot Dialogs (see screenshots below), and making use of existing mechanisms to iterate over the cells within the SCT's cell selection.

There are no constraints on the "geometry" of the SCT's cell selection for the purpose of operations on individual Slot/Timestep cells. The set of selected cells can be disjoint, and does not have to be rectangular. Furthermore, the "aggregation" views within the SCT allow for easy selection of typical complex cell selections, e.g. weekend timesteps in a daily model, or all "January" timesteps in a daily or monthly model.

The Open Slot Dialog supports the "Adjust Values..." operation on all subclasses of Series Slots and Table Slots (excluding the Statistical Table Slot) ...

The major development tasks are:

  1. Add an "Adjust Values..." menu item to the SCT's Edit menu (under the Interpolate operation). This menu item should be enabled only if the current cell selection contains at least one writeable cell, and no read-only cells.
  2. Integrate the "Adjust Selected Slot Values" dialog with this SCT operation. The interface to this dialog is very simple. It incorporates only a Units string and another simple parameter. It does not have any "Open Slot Dialog" selection-specific information.
  3. In response to activation of this operation (with the OK button in the "Adjust Selected Slot Values" dialog), apply that operation to the set of selected cells (Series Slot timesteps) within the SCT.

Additional Notes:

In the currently-implemented "Adjust Values" operation in the Open Slot dialog, Slot timesteps having a NaN are not effected in either operation mode (i.e. proportional or absolute modes). An alternative is to treat NaNs as zeros, conceivably for both modes, or possibly only for absolute adjustments.

---