matlab中sign函数的使用(提取符号)

仅用于记录自己学习过程中遇到的函数
matlab中sign函数的使用,提取符号

一、语法

Y = sign(x) 返回与 x 大小相同的数组 Y,其中 Y 的每个元素是:
1,前提是 x 的对应元素大于 0。
0,前提是 x 的对应元素等于 0。
-1,前提是 x 的对应元素小于 0。
x./abs(x),前提是 x 为复数。

二、举例

1. 求符号函数

求数字的符号函数。

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

2. 绘制符号函数

绘制符号函数,并显示其在过零点处的行为。使用 eps 表示略高于或低于 0 的值。

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

matlab中sign函数的使用(提取符号)_第1张图片

3. 绘制符号函数的实部和虚部

在-3 首先,使用 meshgrid 创建 -3 < x < 3 和 -3 < y < 3 范围内的值的网格。然后使用 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')

matlab中sign函数的使用(提取符号)_第2张图片

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

matlab中sign函数的使用(提取符号)_第3张图片

你可能感兴趣的:(Matlab,matlab,开发语言)