Documentation Center

  • Trial Software
  • Product Updates


Sign of the imaginary part of a complex number

Use only in the MuPAD Notebook Interface.

This functionality does not run in MATLAB.




signIm(z) represents the sign of Im(z).

signIm(z) indicates whether the complex number z lies in the upper or in the lower half plane: signIm(z) yields 1 if Im(z) > 0, or if z is real and z < 0. At the origin: signIm(0)=0. For all other numerical arguments, - 1 is returned. Thus, signIm(z)=sign(Im(z)) if z is not on the real axis.

If the position of the argument in the complex plane cannot be determined, then a symbolic call is returned. If appropriate, the reflection rule signIm(-x) = -signIm(x) is used.

The functions diff and series treat signIm as a constant function. Cf. Example 2.

The following relation holds for arbitrary complex z and p:


Further, for arbitrary complex z:



Environment Interactions

Properties of identifiers set via assume are taken into account.


Example 1

For numerical values, the position in the complex plane can always be determined:

signIm(2 + I), signIm(- 4 - I*PI), signIm(0.3), signIm(-2/7),
signIm(-sqrt(2) + 3*I*PI)

Symbolic arguments without properties lead to symbolic calls:

signIm(x), signIm(x - I*sqrt(2))

Properties set via assume are taken into account:

assume(x, Type::Real): signIm(x - I*sqrt(2))

assume(x > 0): signIm(x)

assume(x < 0): signIm(x)

assume(x = 0): signIm(x)


Example 2

signIm is a constant function, apart from the jump discontinuities along the real axis. These discontinuities are ignored by diff:

diff(signIm(z), z)

Also series treats signIm as a constant function:

series(signIm(z/(1 - z)), z = 0)



An arithmetical expression representing a complex number

Return Values

Either , 0, or a symbolic call of type "signIm".

Overloaded By


Was this topic helpful?