Contact

IMPOWER Function (Calligra Sheets)

Engineering Intermediate Calligra Sheets

Raise complex values to real or complex powers with Calligra Sheets IMPOWER, including principal branches and engine-only zero-base cautions.

Verification status: Selected formulas were executed through the Calligra Sheets 25.04.2 calculation engine library. Complex outputs are reported as components, not GUI-cell display. Version 26.08.2 was source-checked only. How formula examples are checked

Quick answer: =IMPOWER(COMPLEX(3;4);COMPLEX(2;0)) gives (-7,24) in the tested Calligra calculation engine. The pair gives the real and imaginary components, not worksheet display text.

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 Engineering module. Examples use English semicolon-separated formulas.
  • Checked: October 14, 2026. Formulas were executed through the official 25.04.2 engine library and checked against source and independent mathematics. This is not GUI-cell or workbook-import evidence; 26.08.2 was source-checked, not executed.

What IMPOWER returns

IMPOWER raises a complex base to a complex exponent in the inspected implementation. For a nonzero base, the ordinary principal-power model is EXP(exponent×principal LN(base)). Integer powers also agree mathematically with repeated multiplication, but floating-point methods can leave small residuals. Function help.

Syntax and arguments

=IMPOWER(base;exponent)

Exactly two arguments are required: base and exponent. The help syntax omits the exponent, while registration and implementation require it. Both arguments pass through complex conversion, so the tested exponent is not restricted to a real number. Registration and implementation, with versioned help.

Reproducible engine examples

Results are shown as (real,imaginary) component pairs, rounded to twelve decimal places, not a literal cell format. A component rounded to zero is shown as 0; the stored value may still contain a tiny residual or signed zero. NaN means not-a-number; infinity and NaN are not finite results.

Formula Engine result
=IMPOWER(COMPLEX(3;4);COMPLEX(2;0)) (-7,24)
=IMPOWER(COMPLEX(3;-4);COMPLEX(2;0)) (-7,-24)
=IMPOWER(COMPLEX(-1;0);COMPLEX(0.5;0)) (0,1)
=IMPOWER(COMPLEX(0;1);COMPLEX(2;0)) (-1,0)
=IMPOWER(COMPLEX(2;0);COMPLEX(-1;0)) (0.5,0)
=IMPOWER(COMPLEX(1;0);COMPLEX(0;1)) (1,0)
=IMPOWER(COMPLEX(0;1);COMPLEX(0;1)) (0.207879576351,0)
=IMPOWER(COMPLEX(0.5;0.25);COMPLEX(3;0)) (0.03125,0.171875)

Practical worksheet

=IMPOWER(COMPLEX(3;4);2) gives approximately −7+24i. Direct multiplication gives real component 3²−4²=−7 and imaginary component 2×3×4=24. The recorded real component differs from −7 only in the final stored digits.

For a negative real exponent, =IMPOWER(COMPLEX(2;0);-1) gives 0.5+0i. A fractional exponent selects a branch: the tested square-root power of −1+0i is approximately +i. Do not interpret a single returned power as all possible roots.

Advanced interpretation and checks

A complex exponent can produce a real result. The executed =IMPOWER(COMPLEX(-1;0);COMPLEX(0;1)) returned approximately 0.043213918264, equal to e^(−π) for the principal logarithm of −1. The table also includes i^i=e^(−π/2), approximately 0.207879576351.

Because powers depend on a selected logarithm, familiar real identities involving nested fractional powers can fail without branch restrictions. For example, taking a principal square root after squaring a negative real value can lose its original sign. State the intended branch when a model needs more than the principal result.

Input boundaries and cautions

The tested zero-base cases were nonfinite: IMPOWER(0;0) exposed NaN in both components, while IMPOWER(0;−1) exposed positive infinity and NaN. The engine error flag stayed false. Do not replace these with a conventional 1 or a guessed spreadsheet error; GUI-cell behavior was not tested.

Invalid base text became zero, while invalid exponent text became zero and made IMPOWER(2;“abc”) return 1. This can conceal malformed data. The one-argument and three-argument calls produced #VALUE!. Validate both components of both inputs before interpreting the result.

Formula Engine result
=IMPOWER("3+4i";2) (-7,24)
=IMPOWER("3+4j";2) (-7,24)
=IMPOWER("abc";2) (0,0)
=IMPOWER(2;"abc") (1,0)
=IMPOWER(0;0) (NaN,NaN)
=IMPOWER(0;-1) (+Infinity,NaN)
=IMPOWER(TRUE();2) (1,0)
=IMPOWER(2) #VALUE!
=IMPOWER(2;3;4) #VALUE!

Conversion evidence

The complex conversion helper explains the text and Boolean cases above. The inspected Engineering module and complex converter are byte-identical between 25.04.2 and 26.08.2. That source comparison does not establish every locale, import path or extreme-value case.

Use COMPLEX to construct values from numeric components, IMABS for magnitude, and IMARGUMENT for principal phase.