好吧,让我切入追逐。
我正在尝试使用MATLAB (i)基于已知系数及其后生成傅里叶级数 (ii)确定脉冲已知时的输出函数。
到目前为止,我使用此代码来获取傅里叶级数:
clear all
syms x k L n
evalin(symengine,'assume(k,Type::Integer)');
a = @(f,x,k,L) (2/(pi*k))* sin((pi*k)/(2 * L));
fs = @(f,x,n,L) (1/2*L) + symsum(a(f,x,k,L)*cos(k*2*pi*x/L),k,1,n);
f = x;
pretty(fs(f,x,11,1))
这可以按预期工作。现在脉冲响应如下:
h = heaviside(x) * exp(-5*x);
现在,为了获得该功能,我们需要使用各自的函数执行卷积。但是当我输入以下内容时,我得到错误:
x1 = fs(f,x,1,1);
conv(h,x1)
Undefined function 'conv2' for input arguments of type 'sym'.
Error in conv (line 38)
c = conv2(a(:),b(:),shape);
任何帮助将不胜感激
答案 0 :(得分:0)