matlab conv实例,有关matlab中conv的使用 大家帮看看是哪里错了

这篇博客讨论了在MATLAB中使用conv函数时遇到的问题。作者在尝试使用conv进行卷积运算时遇到了'conv2'未定义的错误。问题在于conv函数不适用于三个或更多变量的操作。解决方案是将操作分解为多个两个变量之间的conv函数调用。博客提供了代码示例和错误信息,并包含了正确的使用方式。
摘要由CSDN通过智能技术生成

有关matlab中conv的使用 大家帮看看是哪里错了

mip版  关注:134  答案:2  悬赏:0

解决时间 2021-02-24 09:25

35b6a21cdffb7640cdb20de8851d63b4.png

已解决

2021-02-23 19:18

t=[-2:0.01:2]; %Generate sampling time.

e=(t>-1&t<1); %Define a square wave with width of 2.

h=(t>-0.5&t<0.5);

%Define a square wave with width of 1.

[r1,t1]=cconv1(e,t,h,t);

%Call ‘cconv1’ to finish convolution integral.

subplot(3,1,1);plot(t,e);axis([-2 2 -0.2 1.2]);title('e(t)');

subplot(3,1,2);plot(t,h);axis([-2 2 -0.2 1.2]);title('h(t)');

subplot(3,1,3);plot(t1,r1);axis([-4 4 -0.2 1.2]);title('r(t)');

Undefined function 'conv2' for input arguments of type 'char'.

Error in conv (line 39)

c = conv2(a(:),b(:),shape);

Error in cconv1 (line 6)

w=T*conv(u,v); %Calculate (6) via function ‘conv’.

function[w,tw]=cconv1(u,tu,v,tv)

% u and v are two vectors to be convoluted, and tu and tvare their sampling times respectively.

%w is the convolution result and tw is w’s sampling time.

T=tu(2)-tu(1); %Get sample interval.

w=T*conv(u,v); %Calculate (6) via function ‘conv’.

tw=tu(1)+tv(1)+T*[0:length(u)+length(v)-2]';

%Distribute sample time for w.

最佳答案

3dd37b3039131ddde5f5128be00a3537.png

2021-02-23 20:53

一个conv 只能用于两者两者之间的运算,不能三者或以上。如果有多个,则要用多个conv。

全部回答

d3c19a482dfbadae1114aa37477c5258.png

1楼

2021-02-23 22:26

你想实现什么功能?就目前信息来看,conv的内容必须是数字不是逻辑符号,ra和rb是logical类型。

我要举报

如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

点此我要举报以上信息!

推荐资讯

大家都在看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值