求在matlab中不用conv函数直接实现离散卷积的编程写一个函数,达到等效于conv的目的.只有20财富,全部贡献啦function coresult = conv_my(A,B) C=fliplr(B);length1 = length(A); length2 = length(C);if length1 = length2 if l

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 00:00:16
求在matlab中不用conv函数直接实现离散卷积的编程写一个函数,达到等效于conv的目的.只有20财富,全部贡献啦function coresult = conv_my(A,B) C=fliplr(B);length1 = length(A); length2 = length(C);if length1 = length2 if l

求在matlab中不用conv函数直接实现离散卷积的编程写一个函数,达到等效于conv的目的.只有20财富,全部贡献啦function coresult = conv_my(A,B) C=fliplr(B);length1 = length(A); length2 = length(C);if length1 = length2 if l
求在matlab中不用conv函数直接实现离散卷积的编程
写一个函数,达到等效于conv的目的.只有20财富,全部贡献啦
function coresult = conv_my(A,B)
C=fliplr(B);
length1 = length(A);
length2 = length(C);
if length1 = length2
if length1 > length2
C = [C zeros(1,length1-length2)];
else
A = [A zeros(1,length2-length1)];
end
end
N = length(A);
coresult = zeros(1,2*N-1);
for k = 1:N
temp{k} = A*C(k);
end
for k = 1:N
temp{k} = [zeros(1,2*N-1-k+1-N) temp{k} zeros(1,k-1)];
end
for k = 1:N
coresult = coresult+temp{k};
end
这是我前两天写的,测试结果是正确的,但是首尾的0去不掉

求在matlab中不用conv函数直接实现离散卷积的编程写一个函数,达到等效于conv的目的.只有20财富,全部贡献啦function coresult = conv_my(A,B) C=fliplr(B);length1 = length(A); length2 = length(C);if length1 = length2 if l
function a=myconv(b,c)
bs=size(b);
cs=size(c);
i=any(bs-cs);
if i
error('error')
end
i=any(~(bs-1));
if i
error('error')
end
ko=0;
if bs(1)>bs(2)
b=b';
c=c';
ko=1;
end
bs=size(b);
cs=size(c);
ss=2*bs(2)-1;
a=zeros(1,ss);
for i=1:cs(2)
q=zeros(1,i-1);
p=zeros(1,ss-cs(2)+1-i);
ba=[q,c,p];
ma=b(i)*ba;
a=a+ma;
end
if ko
a=a';
end
end
测试了一下,跟conv计算的结果偏差很小(我测试的结果是10^-15左右),执行效率略低(用cputime 测试rand(1,99),差了0.2964) 商业软件就是牛啊 真想知matlab中这个函数的源代码

求在matlab中不用conv函数直接实现离散卷积的编程写一个函数,达到等效于conv的目的.只有20财富,全部贡献啦function coresult = conv_my(A,B) C=fliplr(B);length1 = length(A); length2 = length(C);if length1 = length2 if l matlab中filter和conv函数有什么区别? matlab中conv什么意思 matlab利用函数conv(),求多项式x4+8x3-10与多项式2x2-x+3的乘积如题,在matlab中要怎么输啊,为什么总是显示Undefined function or variable 'x' matlab中 conv表示卷积?gggfconv?ggfconv? Matlab软件中conv的用法以及如何将矩阵变为多项式?函数conv(P1,P2)用于求多项式P1和P2的乘积.这里,P1、P2是两个多项式系数向量.利用函数conv(),求多项式x4+8x3-10与多项式2x2-x+3的乘积.例如求多项式2 matlab 怎样用conv()函数求 sin(t)和cos(t)的卷积conv求卷积老是出错,不知道为什么,请好心者示范一下,谢谢了 在matlab中,有没有直接求代数余子式的函数 matlab 不用conv求卷积随便定义两个序列,假设为n1,n2,想实现两个序列卷积,翻折,移位,相乘是自己写的函数,前面都没问题,就是在for循环两个序列相乘得到新的序列,将新的序列求和,将和赋值到一 我的matlab里怎么没有卷积conv函数 怎样用matlab求离散卷积但不能用conv函数拜托各位大神怎样用matlab求离散卷积但不能用conv函数?例如:求x(n)*h(n) 在matlab中实现正弦信号和门函数的卷积这是一段程序,但实现不了,在最后一句 g2=conv(y,g1);报错了.t=-40:0.01:40;g1=[(t>0)&(t matlab中什么函数进行两个因式相乘?比如(0.67S+1)*(0.01S^2+0.08S+1)=知道了,用conv函数就可以了 Matlab中有没有直接求矩阵中各元素和的函数呀? matlab关于conv函数求解?x(n)=[3,11,7,0,-1,4,2],-3 在matlab中求函数 的三阶导数 在matlab中求函数值,为什么会求得复数 在MATLAB中有没有求余数的函数