isreal - Determine whether array uses complex storage - MATLAB (original) (raw)

Determine whether array uses complex storage

Syntax

Description

tf = isreal([A](#bt4oz5d-1-A)) returns logical1 (true) when numeric array A does not have an imaginary part, and logical 0 (false) otherwise. isreal returns logical 0 (false) for complex values that have zero imaginary part, since the value is still stored as a complex number.

example

Examples

collapse all

Define a 3-by-4 matrix, A.

A = [7 3+4i 2 5i;... 2i 1+3i 12 345;... 52 108 78 3];

Determine whether the array is real.

Since A contains complex elements, isreal returns false.

Use the complex function to create a scalar, A, with zero-valued imaginary part.

Determine whether A is real.

A is not real because it has an imaginary part, even though the value of the imaginary part is 0.

Determine whether A contains any elements with zero-valued imaginary part.

A contains elements with zero-valued imaginary part.

Define two complex scalars, x and y.

Determine whether the addition of two complex scalars, x and y, is real.

MATLAB® drops the zero imaginary part.

A is real since it does not have an imaginary part.

Create a cell array.

C{1,1} = pi; % double C{2,1} = 'John Doe'; % char array C{3,1} = 2 + 4i; % complex double C{4,1} = ispc; % logical C{5,1} = magic(3); % double array C{6,1} = complex(5,0) % complex double

C=6×1 cell array {[ 3.1416]} {'John Doe' } {[2.0000 + 4.0000i]} {[ 0]} {3×3 double } {[5.0000 + 0.0000i]}

C is a 1-by-6 cell array.

Loop over the elements of a cell array to distinguish between real and complex elements.

for k = 1:6 x(k,1) = isreal(C{k,1}); end

x

x = 6×1 logical array

1 1 0 1 1 0

All but C{3,1} and C{6,1} are real arrays.

Input Arguments

collapse all

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

Data Types: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | struct | table | cell | datetime | duration | calendarDuration | function_handle
Complex Number Support: Yes

Tips

Extended Capabilities

expand all

The isreal function fully supports GPU arrays. To run the function on a GPU, specify the input data as a gpuArray (Parallel Computing Toolbox). For more information, see Run MATLAB Functions on a GPU (Parallel Computing Toolbox).

Version History

Introduced before R2006a