Typically, user-defined time ranges allow users to scope data which spans an interval of time not covered by the model calendar. However, the Polaris calculation engine interacts with time ranges differently from Classic. The main differences and similarities are described in this document.
Time ranges are a type of dimension that is used in modules and line items to enable the analysis of time-based data and, overall, maintain the same role in both Classic and Polaris calculation engines.
Note: Consider that a function makes a reference across different time ranges if at least one of its arguments is a line item with a time dimension which is based on a different time range from the time dimension of the line item it's used on.
Polaris maintains these functional similarities with Classic:
- Use of the same interface to create and manage time ranges.
- Non-time series functions can make references across different time ranges.
- There is only one time data type per time scale, which spans the whole interval of time periods between the earliest and latest periods in both the model calendar and user defined time ranges.
Differences between Polaris and Classic
While sparsity isn't the main consideration when you use the Polaris calculation engine, there are some functional differences for time ranges in Polaris.
Classic | Polaris |
The only time series functions allowed to make a reference across different time ranges are PREVIOUS, NEXT, and TIMESUM. | Every function can make a reference across different time ranges. |
Functions that can make references across different time ranges always operate across the entire model timeline. | Functions only operate across the target time dimension. See Operate along the target time dimension in the examples, below. |
Examples
Non-time series functions
Operate along the target time dimension
Workaround for other functions