Math & numeric
Overview
Use this category when you need numeric transformations and helpers in formulas. These functions change values and support element-wise adjustments such as adding a constant to each cell.
Start here if…
You want to use common numeric helpers (rounding, caps/floors, sign, modulo).
You want to apply an element-wise constant change (add a constant or a node per cell)
You need powers, roots, or logarithms.
You need controlled multiplication/division with optional mismatch validation.
Not here if…
You want to reshape output granularity → see Dimensionality & hierarchies
You want conditions, comparisons, or branching logic → see Logical functions
You want time comparisons or projections → see Compare periods or Rollforward & time series
Mental model
Most functions in this category apply row-wise / element-wise and do not intentionally change dimensionality.
Constants are 0-dimensional; if
+ 1produces unexpected aggregation effects, preferADDEACHfor an explicit element-wise adjustment.
Common patterns
Add a constant to every cell →
ADDEACH('Sales', 1)
Use when you want an element-wise change without aggregation side effects.Compute a ratio while keeping only shared dimensions →
RATIO('Gross Profit', 'Revenue')
Use when you want a division that retains only the joint dimensionality of both inputs (instead of expanding across the full combined dimension set).Cap / floor values →
MAX('Margin', 0)orMIN('Node1', 'Node2')
Use when you need simple thresholds without IF logic.Round for reporting →
ROUND('Revenue')
Use when you need stable rounding for display or downstream steps.Safe divide or multiply with validation →
DIVIDE('Node1', 'Node2', "FailOnMissingFirst")
Use when you want clearer mismatch feedback instead of raw/or*.Transform with logs and powers →
LN('Node'),LOG('Node1', 'Node2'),POWER('Node1', 'Node2'),SQRT('Node')
Use when your method requires non-linear scaling.
Functions in this category
Function | Description |
|---|---|
Returns the absolute value of each value in the node. | |
Adds the specified amount to each row in the node without aggregation. | |
Divides the first input by the second with optional validation that provides detailed errors on mismatches. | |
Multiplies inputs with optional validation that provides detailed errors on mismatches. | |
Calculates e raised to the power of the input values. | |
Returns the factorial of each input value. | |
Returns the natural logarithm of the input. | |
Returns the logarithm of a value with respect to a specified base. | |
Returns the row-wise maximum of two nodes. | |
Returns the row-wise minimum of two nodes. | |
Returns the remainder after dividing the first input by the second. | |
Raises values from the first node to exponents from the second input. | |
Divides the first node by the second while retaining only joint dimensions; not usable in nodes referenced by other nodes. | |
Rounds each value to a specified number of decimal digits. | |
Returns the sign of each number: 1 for positive, −1 for negative, 0 for zero. | |
Returns the square root of each value in the node. |
Choosing between similar functions
ADDEACH vs
+ constantUse
ADDEACHwhen you want an explicit element-wise adjustment.Use
+only if you intentionally want the behavior of combining a node with a 0-dimensional constant.
DIVIDE/DIVISION vs RATIO
Use
DIVISION(/) for general division.Use
DIVIDEfor general division with optional mismatch validation.Use
RATIOwhen you explicitly want to retain only joint dimensions and accept its usage restriction (mainly for KPI node calculations like margins).
MIN/MAX vs IF
Use
MIN/MAXfor simple caps/floors.Use
IFwhen the rule is conditional beyond a numeric bound.
LN vs LOG vs EXP
Use
LNfor natural logarithm.Use
LOGwhen you need a specific base.Use
EXPfor exponentiation with base e.
Pitfalls & troubleshooting
Unexpected aggregation after adding a constant: replace
+ 1style adjustments withADDEACH.RATIO breaks downstream usage: check whether the node is referenced by other nodes (RATIO has restrictions).
Division looks wrong: spot-check denominators for zero or missing values and validate both inputs at the same intersections.
LN/LOG/SQRT return missing results: confirm the input domain (negative values or zeros where not supported).
Apply ROUND late: use rounding in presentation/KPI nodes rather than early in intermediate calculations to avoid drift in totals.
Related sections
Operators arithmetic used around numeric functions
Formula basics constants, evaluation order, and notation
Logical functions conditions and branching with IF
Dimensionality & hierarchies when calculations change shape unexpectedly
Troubleshooting guide missing values and alignment pitfalls