isreal

Определите, действителен ли массив

Синтаксис

tf = isreal(A)

Описание

пример

tf = isreal(A) возвращает логический 1 (true), когда числовой массив A не имеет мнимой части и логического 0 (false) в противном случае.

Примеры

свернуть все

Задайте матрицу 3 на 4, A.

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

Определите, действителен ли массив.

tf = isreal(A)
tf = logical
   0

Поскольку A содержит комплексные элементы, isreal возвращает false.

Используйте функцию complex, чтобы создать скаляр, A, с мнимой частью с нулевым знаком.

A = complex(12)
A = 12.0000 + 0.0000i

Определите, действителен ли A.

tf = isreal(A)
tf = logical
   0

A не действителен, потому что он имеет мнимую часть, даже при том, что значением мнимой части является 0.

Определите, содержит ли A какие-либо элементы с мнимой частью с нулевым знаком.

~any(imag(A))
ans = logical
   1

A содержит элементы с мнимой частью с нулевым знаком.

Задайте два комплексных скаляра, x и y.

x=3+4i;
y=5-4i;

Определите, действительно ли сложение двух комплексных скаляров, x и y.

A = x+y
A = 8

MATLAB® пропускает нулевую мнимую часть.

isreal(A)
ans = logical
   1

A действителен, поскольку он не имеет мнимой части.

Создайте массив ячеек.

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 = 6x1 cell array
    {[          3.1416]}
    {'John Doe'        }
    {[2.0000 + 4.0000i]}
    {[               0]}
    {3x3 double        }
    {[5.0000 + 0.0000i]}

C является 1 6 массивом ячеек.

Цикл по элементам массива ячеек, чтобы различать действительные и комплексные элементы.

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

x
x = 6x1 logical array

   1
   1
   0
   1
   1
   0

Все кроме C{3,1} и C{6,1} - действительные массивы.

Входные параметры

свернуть все

Входной массив, заданный как скалярный, векторный, матричный или многомерный массив.

  • Для типов числовых данных, если A не имеет мнимой части, isreal возвращает true; если A действительно имеет мнимую часть, isreal возвращает false.

  • Для logical и типов данных char, isreal всегда возвращает true.

  • Для string, table, cell, struct, datetime, function_handle и типов данных object, isreal всегда возвращает false.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char | string | struct | table | cell | datetime | function_handle
Поддержка комплексного числа: Да

Советы

  • Чтобы проверять, действителен ли каждый элемент массива A, используйте A == real(A).

  • isreal(complex(A)) всегда возвращает false, даже когда мнимая часть является всеми нулями.

  • ~isreal(x) обнаруживает массивы, которые имеют мнимую часть, даже если это - все нули.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

| | | | | |

Представлено до R2006a

Для просмотра документации необходимо авторизоваться на сайте