构建一个matlab反例证明y[n]=n*x[n]是不可逆的
时间: 2023-11-29 07:04:56 浏览: 57
Numpy 中的矩阵求逆实例
要证明 $y[n] = nx[n]$ 是不可逆的,需要找到一个反例,即找到两个不同的输入序列 $x_1[n]$ 和 $x_2[n]$,使得它们的输出相同,即 $y_1[n] = y_2[n]$,但是输入序列不同,即 $x_1[n] \neq x_2[n]$。
考虑以下两个输入序列:
$x_1[n] = 1$ 和 $x_2[n] = \delta[n]$
其中 $\delta[n]$ 表示单位脉冲序列,即 $\delta[n] = 1$ 当 $n=0$,否则 $\delta[n] = 0$。
对应的输出分别为:
$y_1[n] = n x_1[n] = n$ 和 $y_2[n] = n x_2[n] = n\delta[n]$
可以发现,$y_1[n] = y_2[n]$,但是 $x_1[n] \neq x_2[n]$,因此 $y[n] = nx[n]$ 是不可逆的。
下面是 MATLAB 代码实现,用于验证 $y[n] = nx[n]$ 是不可逆的:
```matlab
% 定义输入序列 x1[n] 和 x2[n]
n = 0:10;
x1 = ones(1, length(n));
x2 = [1, zeros(1, length(n)-1)];
% 计算对应的输出序列 y1[n] 和 y2[n]
y1 = n.*x1;
y2 = n.*x2;
% 判断是否满足可逆性质
if y1 == y2 && x1 ~= x2
disp('该系统是不可逆的')
else
disp('该系统是可逆的')
end
```
运行这段代码,输出的结果为“该系统是不可逆的”。
阅读全文