Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

complex

Create complex array

Syntax

Description

example

z = complex(a,b) creates a complex output, z, from two real inputs, such that z = a + bi.

The complex function provides a useful substitute for expressions, such as a + 1i*b or a + 1j*b, when

  • a and b are not double or single

  • b is all zeros

example

z = complex(x) returns the complex equivalent of x, such that isreal(z) returns logical 0 (false).

  • If x is real, then z is x + 0i.

  • If x is complex, then z is identical to x.

Examples

collapse all

Use the complex function to create the complex scalar, 3 + 4i.

z = complex(3,4)
z =

   3.0000 + 4.0000i

Create a complex uint8 vector from two real uint8 vectors. The size of z, 4-by-1, is the same as the size of the input arguments.

a = uint8([1;2;3;4]);
b = uint8([2;2;7;7]);

z = complex(a,b)
z =

  4×1 uint8 column vector

   1 +   2i
   2 +   2i
   3 +   7i
   4 +   7i

Create a complex scalar with zero imaginary part.

z = complex(12)
z =

  12.0000 + 0.0000i

Verify that z is complex.

isreal(z)
ans =

  logical

   0

Input Arguments

collapse all

Real component, specified as a scalar, vector, matrix, or multidimensional array.

The size of a must match the size of b, unless one is a scalar. If either a or b is a scalar, MATLAB® expands the scalar to match the size of the other input.

a and b must be the same data type with the following exceptions:

  • single can combine with double.

  • scalar double can combine with an integer data type.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Imaginary component, specified as a scalar, vector, matrix, or multidimensional array.

The size of b must match the size of a, unless one is a scalar. If either a or b is a scalar, MATLAB expands the scalar to match the size of the other input.

a and b must be the same data type with the following exceptions:

  • single can combine with double.

  • scalar double can combine with an integer data type.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Input array, specified as a scalar, vector, matrix, or multidimensional array.

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Complex Number Support: Yes

Output Arguments

collapse all

Complex array, returned as a scalar, vector, matrix, or multidimensional array.

The size of z is the same as the input arguments.

The following describes the data type of z, when a and b have different data types.

  • If either a or b is single, then z is single.

  • If either a or b is an integer data type, then z is the same integer data type.

More About

collapse all

Tall Array Support

This function fully supports tall arrays. For more information, see Tall Arrays.

Tips

  • If b contains only zeros, then z is complex and the value of all its imaginary components is 0. In contrast, the addition a + 0i returns a strictly real result.

See Also

| | | | | | |

Introduced before R2006a

Was this topic helpful?