In Polaris, the formulas you use in line items can affect the sparsity or density of your models.

Within Polaris, a sparser model is more memory-efficient than a dense one. This means you should design formulas and models to help preserve sparsity where possible.

A formula can increase, decrease, or maintain the current level of sparsity. The Calculation Complexity column within Blueprint can contain one of three values, which explains the effect of a formula upon sparsity. These values are One-to-One, One-to-Many, and All cells:

Calculation complexityDescriptionExample

One-to-One

The most efficient type of formula.

One-to-One formulas maintain sparsity because the results only ever calculate values for the same number or fewer cells than the source data.

A formula that multiplies one set of numeric values by another.

Because the result only calculates values for cells that contain a non-zero value, the number of cells calculated in the result is the same as in the source. 

One-to-Many

Less efficient than One-to-One, but more efficient than All cells.

One-to-Many formulas decrease sparsity because they calculate results for a greater number of cells than make up the source data.

The fan-out factor is a multiplier that measures the increase in the count of the populated source cells, against the count of cells that populate in the target. The higher this factor is, the less efficiently the formula scales. 

A formula that aggregates values from a parent time period into child time periods.

A One-to-many calculation populates child cells with from the parent cell, which increases the number of calculations required.

All cells

The least efficient type of formula.

All cells formulas decrease sparsity because they calculate results for all cells within the dimensionality of the resultant line item.

A formula that adds a constant to all values in a line item.

Every cell in the result requires calculation, even those that were originally blank or evaluated to zero.

In Polaris, Populated Cell Count and Memory Used columns display in Blueprint. You can also use these to monitor the effect on memory of your line items and formulas.

In Polaris, if you update a formula and it decreases calculation efficiency, the changes may take a long time to calculate. If you initiated the update or are a workspace administrator, and a change temporarily blocks a Polaris model, you can select Cancel changes in the banner that displays at the top of the screen.