我试图像这样运行此功能:calcSQNRA(0,4,6)
并且我收到了这些错误:
???使用==>时出错mtimes内部矩阵尺寸必须一致。
==>中的错误calcSQNRA> @(x)x。^ 2 * e。^( - x)at 6 f = @(x)x。^ 2 * e。^( - x);
==>中的错误quad y at 70 y = feval(f,x,varargin {:}); y = y(:)。&#39 ;;
==>中的错误calcSQNRA在7 x = 10 * log10(3 * 4 ^ t * quadl(F,XMIN,XMAX));
function [x] = calcSQNRA(xmin, xmax, N)
e = exp(1);
t = log2(N);
f = @(x) x.^2 * e.^(-x);
x = 10 * log10(3 * 4^t * quadl(f,xmin,xmax));
在统一量化之后,该函数试图计算指数分布的SQNR(如果我正确地想到它)。请注意,如果我从f中删除e.^(-x)
,它实际上会产生结果。有什么想法吗?
答案 0 :(得分:4)
我杀了15分钟调试quadl
和feval
函数。在这个过程中如此深入,我只想到这个简单的事情:
如果我以这种方式在您的.
匿名函数中设置f
,它就会起作用:
f = @(x) x.^2 .* e.^(-x);
然后
calcSQNRA(0,4,6)
给出结果:22.1635
。
这是你想要达到的目标吗?