# Documentation

### This is machine translation

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

라이선스가 부여된 사용자만 번역 문서를 볼 수 있습니다. 번역 문서를 보려면 로그인하십시오.

# complex

Create complex array

## Syntax

• ``z = complex(a,b)``
example
• ``z = complex(x)``
example

## 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.

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.