matlab计算两函数卷积
时间: 2023-07-08 12:36:29 浏览: 178
nadjb,matlab 卷积函数源码,matlab源码网站
假设有两个函数 $f(t)$ 和 $g(t)$,它们的卷积为:
$$h(t) = f(t) * g(t) = \int_{-\infty}^{\infty} f(\tau) g(t-\tau) d\tau$$
在 MATLAB 中,可以使用 conv 函数来计算两个函数的卷积。具体步骤如下:
1. 定义两个函数 $f(t)$ 和 $g(t)$,并将它们存储为向量,例如:
```
t = -5:0.1:5;
f = exp(-t.^2);
g = sin(t);
```
2. 使用 conv 函数计算卷积:
```
h = conv(f, g);
```
3. 绘制卷积结果:
```
figure;
subplot(3,1,1);
plot(t, f);
title('Function f(t)');
subplot(3,1,2);
plot(t, g);
title('Function g(t)');
subplot(3,1,3);
plot(h);
title('Convolution h(t) = f(t) * g(t)');
```
完整代码如下:
```
t = -5:0.1:5;
f = exp(-t.^2);
g = sin(t);
h = conv(f, g);
figure;
subplot(3,1,1);
plot(t, f);
title('Function f(t)');
subplot(3,1,2);
plot(t, g);
title('Function g(t)');
subplot(3,1,3);
plot(h);
title('Convolution h(t) = f(t) * g(t)');
```
执行上述代码后,可以得到两个函数的卷积结果。其中,第一个子图显示了函数 $f(t)$,第二个子图显示了函数 $g(t)$,第三个子图显示了函数 $h(t)$。
阅读全文