使用waverec对近似系数进行完全重构
aa=waverec(a,99951,'coif5');
报错:
错误使用 appcoef
需要的 N 应为具有值 <= -1 的标量。
出错 appcoef (line 59)
validateattributes(n,{'numeric'},...
出错 waverec (line 23)
x = appcoef(c,l,varargin{:},0);
出错 coif_ana (line 6)
aa=waverec(a,99951,'coif5');
这种情况N是哪里来的?怎么在源代码里面解决?
根据错误提示,appcoef 函数需要一个标量 $N$,并且 $N$ 的值应该小于等于 -1。这个函数在 waverec 函数内部被调用,用于计算各个尺度上的近似系数。
在调用 waverec 函数时,第二个参数应该是一个长度为 $N$ 的向量,而不是一个整数。根据你的代码,a 是一个长度为 99951 的向量,因此第二个参数应该是 99951,而不是字符串 'coif5'。
因此,正确的调用方式是:
aa = waverec(a, 99951, 'coif5');
这样应该就可以成功进行完全重构了。