⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sigmerge.m

📁 最新时频分析处理软件
💻 M
字号:
function sig=sigmerge(x1,x2,ratio);%SIGMERGE Add two signals with given energy ratio in dB.%	SIG=SIGMERGE(X1,X2,RATIO) adds two signals so that a given%	energy ratio expressed in deciBels is satisfied.% %	X1, X2 : input signals.%	RATIO  : Energy ratio in deciBels	(default : 0 dB).%	X      : output signal.%	X= X1+H*X2, such that 10*log(Energy(X1)/Energy(H*X2))=RATIO%%	Example : %	 sig=fmlin(64,0.01,0.05,1); noise=hilbert(randn(64,1));%	 SNR=15; x=sigmerge(sig,noise,SNR);%	 Esig=mean(abs(sig).^2); Enoise=mean(abs(x-sig).^2);%	 10*log10(Esig/Enoise)%	F. Auger, July 1995.%	Copyright (c) 1996 by CNRS (France).%%	------------------- CONFIDENTIAL PROGRAM -------------------- %	This program can not be used without the authorization of its%	author(s). For any comment or bug report, please send e-mail to %	f.auger@ieee.org if (nargin<2) error('At least two parameters are required');elseif nargin==2, ratio=0;end;[x1row,x1col] = size(x1);[x2row,x2col] = size(x2);if (x1col~=1)|(x2col~=1), error('X1 and X2 must have only one column');elseif (x1row~=x2row), error('X1 and X2 must have the same number of rows');elseif (length(ratio)~=1), error('RATIO must be a scalar');elseif (ratio==inf), sig = x1;else Ex1=mean(abs(x1).^2); Ex2=mean(abs(x2).^2); h=sqrt(Ex1/(Ex2*10^(ratio/10))); sig=x1+h*x2;end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -