RRI Function (Calligra Sheets)
Find equivalent compound growth with Calligra RRI. Reconstruct the endpoint ratio and check its periods-at-least-one rule, fractional periods and sign limits.
Verification status: 21 selected formulas were executed through the Calligra Sheets 25.04.2 calculation engine library. Exact outputs, mathematical references and source limitations are documented separately. Version 26.08.2 was source-checked only; no GUI-cell or import claim. How formula examples are checked
Period restriction: the implementation rejects periods below 1, including 0.5. Other missing checks allow Infinity or NaN for some zero or opposite-sign values in the tested 25.04.2 engine.
Quick answer: =RRI(10;100;200) gives approximately 0.071773462536 in the tested Calligra calculation engine.
Availability and version history
- Introduced: First release not established; the name is present in Calligra 2.4.0 source.
- Supported in: Calligra Sheets 26.08.2, with no retirement established.
- Scope: Desktop Sheets with the Financial module. Examples use English semicolon-separated formulas.
- Checked: October 14, 2026. Selected formulas ran through the official 25.04.2 engine library. Source and independent mathematics were checked. This is engine evidence, with no GUI-cell or import verification; 26.08.2 was source-checked only.
What RRI returns
RRI calculates (futureValue/presentValue)^(1/periods)-1, the constant compound rate linking two values. It has no intervening cash flows or payment argument. The result’s period unit is the unit used for the period count. Function-specific official reference.
Syntax and arguments
=RRI(periods;presentValue;futureValue)
All three arguments are required. Periods must be at least 1 under the actual guard, despite the source comment suggesting only positivity. For the ordinary growth model, use positive present and future values and a clearly defined time unit. Registration and implementation.
Reproducible engine examples
The engine and mathematical columns are separate. Results are rounded to twelve decimal places, or thirteen significant digits in scientific notation for very small or large values. This is a display choice, not an accuracy guarantee.
| Formula | Engine result | Independent mathematical reference |
|---|---|---|
=RRI(10;100;200) |
0.071773462536 |
0.071773462536 |
=RRI(5;100;161.051) |
0.1 |
0.1 |
=RRI(1;100;110) |
0.1 |
0.1 |
=RRI(2;100;121) |
0.1 |
0.1 |
=RRI(3;100;100) |
0 |
0 |
=RRI(2;100;81) |
-0.1 |
-0.1 |
=RRI(1.5;100;121) |
0.135508127002 |
0.135508127002 |
=RRI(4;500;1000) |
0.189207115003 |
0.189207115003 |
Practical worksheet
Growing 100 to 200 over ten years gives approximately 0.071773462536, or 7.1773462536% per year. The advanced reconstruction 100*(1+RRI(10;100;200))^10 returns approximately 200.
A change from 100 to 81 over two periods gives −0.1, a 10% decline per period. Equal positive values give zero. The function reports compound growth rather than an arithmetic average of observed annual changes.
Advanced interpretation and checks
Fractional counts at least 1 are retained: 1.5 periods from 100 to 121 gives approximately 0.135508127002. A half-period count is nevertheless rejected by the explicit lower bound. Do not infer acceptance of all positive counts from the algebra alone.
Multiplying both positive endpoint values by the same nonzero scale leaves their ratio and rate unchanged. The calculation assumes one initial and one final value; intervening deposits and withdrawals require a cash-flow model instead of applying this endpoint ratio directly.
The executed advanced check was:
=100*(1+RRI(10;100;200))^10
Its engine result was 200.
Boundaries and troubleshooting
Zero, negative and sub-one periods give #VALUE!. Zero present value with positive future value produced numeric Infinity; opposite signs produced numeric NaN, including the tested three-period case. These outputs had no engine error flag and are not usable finite rates.
Two negative values with a positive ratio are accepted arithmetically, and a zero future value returns −1. Numeric period text is parsed; nonnumeric period text becomes zero and errors. Incorrect arity gives #VALUE!. Validate meaningful endpoint values and finite output before formatting the result as a percentage.
| Formula | Engine result |
|---|---|
=RRI(0;100;200) |
#VALUE! |
=RRI(.5;100;200) |
#VALUE! |
=RRI(-1;100;200) |
#VALUE! |
=RRI(2;0;100) |
+Infinity |
=RRI(2;100;0) |
-1 |
=RRI(2;-100;-121) |
0.1 |
=RRI(2;-100;121) |
NaN |
=RRI(3;-100;121) |
NaN |
=RRI("2";100;121) |
0.1 |
=RRI("abc";100;121) |
#VALUE! |
=RRI(2;100) |
#VALUE! |
=RRI(2;100;121;0) |
#VALUE! |
Official evidence and precision scope
The financial module and value-calculation helpers are byte-identical between the inspected 25.04.2 and 26.08.2 sources. That comparison supports the source discussion but does not establish later-version execution, GUI-cell behavior or other locales.