знак

Знаковая функция (сигнум-функция)

Синтаксис

sign(x)

Описание

пример

Y = sign(x) возвращает массив Y тот же размер как x, где каждый элемент Y:

  • 1, если соответствующий элемент x больше, чем 0.

  • 0, если соответствующий элемент x равняется 0.

  • -1, если соответствующий элемент x является меньше, чем 0.

  • x. / abs (x), если x является комплексным.

Примеры

свернуть все

Найдите знаковую функцию числа.

sign(2)
ans = 1

Найдите знаковую функцию значений вектора.

V = [-11 0 1.5 Inf NaN];
sign(V)
ans = 1×5

    -1     0     1     1   NaN

Найдите знаковую функцию значений матрицы.

M = magic(3) - 5;
sign(M)
ans = 3×3

     1    -1     1
    -1     0     1
    -1     1    -1

Найдите знаковую функцию комплексного числа.

z = 4 - 3*i;
sign(z)
ans = 0.8000 - 0.6000i

Постройте график знаковой функции и покажите ее поведение при пересечении нулем. Использование eps чтобы получить значения чуть выше и чуть ниже 0.

x = [-5 -eps(1) 0 eps(1) 5];
y = sign(x);
plot(x,y)
ylim([-2 2])
grid on

Постройте график действительных и мнимых частей знаковой функции и.

Во-первых, создайте сетку значений по -3 < x < 3 и -3 < y < 3 с помощью meshgrid. Затем создайте комплексные числа из этих значений с помощью z = x + 1i*y.

v = -3:0.1:3;
[x, y] = meshgrid(v);
z = x + 1i*y;

Найдите действительные и мнимые части знаковой функции z.

s = sign(z);
re = real(s);
im = imag(s);

Постройте график действительных и мнимых частей.

surf(x,y,re)
title('Real part of sign function')
xlabel('x')
ylabel('y')

figure(2)
surf(x,y,im)
title('Imaginary part of sign function')
xlabel('x')
ylabel('y')

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

свернуть все

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

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический
Поддержка комплексного числа: Да

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

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

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

| | |

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

Была ли эта тема полезной?