Contact

IMSQRT Function (Calligra Sheets)

Engineering Intermediate Calligra Sheets

Find principal complex square roots with Calligra Sheets IMSQRT. Includes negative real inputs, component examples, branch choices and native engine checks.

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: =IMSQRT(COMPLEX(3;4)) gives (2,1) 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 IMSQRT returns

IMSQRT returns the principal complex square root. Squaring that value recovers the original number in exact arithmetic. Except at zero, there are two square roots; the function selects one rather than returning both. Function help.

Syntax and arguments

=IMSQRT(complexValue)

Exactly one complex value is required. Real numbers are accepted as values with zero imaginary component. The examples use COMPLEX to specify both components explicitly. 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
=IMSQRT(COMPLEX(3;4)) (2,1)
=IMSQRT(COMPLEX(3;-4)) (2,-1)
=IMSQRT(COMPLEX(-3;4)) (1,2)
=IMSQRT(COMPLEX(-3;-4)) (1,-2)
=IMSQRT(COMPLEX(1;0)) (1,0)
=IMSQRT(COMPLEX(0;1)) (0.707106781187,0.707106781187)
=IMSQRT(COMPLEX(-1;0)) (0,1)
=IMSQRT(COMPLEX(0.5;0.25)) (0.727673345113,0.171780374861)

Practical worksheet

=IMSQRT(COMPLEX(3;4)) gives 2+i because (2+i)²=3+4i. For 3−4i it returns 2−i. The corresponding negative roots also square to the same inputs, but are not the selected principal outputs.

A negative real input is valid for this complex function: =IMSQRT(COMPLEX(-1;0)) returned i. That is different from treating the task as a real-only square root. Keep the output as a complex value if later calculations need its imaginary component.

Advanced interpretation and checks

The executed reconstruction =IMPRODUCT(IMSQRT(COMPLEX(3;4));IMSQRT(COMPLEX(3;4))) returned (3,4). For other inputs, compare real and imaginary residuals with tolerances rather than expecting exact equality after rounding.

For z=a+bi with magnitude r, a useful component check is u=√((r+a)/2) and |v|=√((r−a)/2), with the imaginary sign chosen consistently with the input and branch. At 3+4i, r=5 gives u=2 and v=1. The principal branch has nonnegative real part; points on the negative real axis require attention to the approached side or signed zero.

Input boundaries and cautions

Invalid text and an empty string became zero and therefore produced a zero square root. TRUE became 1. These accepted coercions do not establish that an imported input was correctly recognized. Prefer explicit numeric components for data that has not already been validated.

Zero is valid and returned (0,0). Zero arguments and two arguments produced #VALUE!. Do not assume √(z²)=z for every complex z: the principal-root choice can return −z instead. For example, squaring −1 gives 1 and its principal square root is +1.

Formula Engine result
=IMSQRT("3+4i") (2,1)
=IMSQRT("3+4j") (2,1)
=IMSQRT("abc") (0,0)
=IMSQRT("") (0,0)
=IMSQRT(TRUE()) (1,0)
=IMSQRT(0) (0,0)
=IMSQRT() #VALUE!
=IMSQRT(1;2) #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.