matlab 怎么计算sinad
答案:2 悬赏:10 手机版
解决时间 2021-01-20 09:19
- 提问者网友:酱爆肉
- 2021-01-20 00:30
matlab 怎么计算sinad
最佳答案
- 五星知识达人网友:躲不过心动
- 2021-01-20 00:36
在matlab关于sinad的帮助文档中有说明和示例,这是一个正弦信号+谐波+噪声的例子
n = 0:159;
x = cos(pi/4*n)+0.025*sin(pi/2*n);
rng default;
y = cos(pi/4*n)+0.025*sin(pi/2*n)+0.05*randn(size(n));
r = sinad(x)
powfund = 1;
powharm = 0.025^2;
thSINAD = 10*log10(powfund/powharm)
r =
32.0412
thSINAD =
32.0412
-----------------------到这为止是不计噪声,只计算由正弦信号和谐波组成信号的sinad,直接采用函数sinad与分别用两部分信号幅值平方的比值求分贝数得到的结果相同。
r = sinad(y)
varnoise = 0.05^2;
thSINAD = 10*log10(powfund/(powharm+varnoise))
r =
23.6793
thSINAD =
25.0515
-----------------到这是在原来的基础上再加上标准差为0.05的高斯噪声,用0.05^2带入计算分贝数,与sinad函数计算结果相近。
n = 0:159;
x = cos(pi/4*n)+0.025*sin(pi/2*n);
rng default;
y = cos(pi/4*n)+0.025*sin(pi/2*n)+0.05*randn(size(n));
r = sinad(x)
powfund = 1;
powharm = 0.025^2;
thSINAD = 10*log10(powfund/powharm)
r =
32.0412
thSINAD =
32.0412
-----------------------到这为止是不计噪声,只计算由正弦信号和谐波组成信号的sinad,直接采用函数sinad与分别用两部分信号幅值平方的比值求分贝数得到的结果相同。
r = sinad(y)
varnoise = 0.05^2;
thSINAD = 10*log10(powfund/(powharm+varnoise))
r =
23.6793
thSINAD =
25.0515
-----------------到这是在原来的基础上再加上标准差为0.05的高斯噪声,用0.05^2带入计算分贝数,与sinad函数计算结果相近。
全部回答
- 1楼网友:英雄的欲望
- 2021-01-20 01:52
就版本软件不支持,需要R2013b以上
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯