makepeak.m

来自「Continuous Profile Models (CPM) Matlab T」· M 代码 · 共 31 行

M
31
字号
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function tmpSig = makePeak(position,width,height,signalLength,noise,baseValue,dataScale)numPeaks=length(position);tmpSignal = makeFlat(signalLength,noise,baseValue);tmpSig = tmpSignal;for pk=1:numPeaks  ht = dataScale*height(pk);  tmpPeak = mkGaussian([1,width(pk)],sqrt(width(pk)));  tmpPeak = tmpPeak*ht/max(tmpPeak);  left = round(position(pk) - (length(tmpPeak)/2));  right = round(left + length(tmpPeak)-1);  tmpSig(left:right)=tmpPeak + tmpSig(left:right);end% figure, plot(tmpSig,'+-');%% now add noisetmpSig = tmpSig + randn(size(tmpSig))*noise;tmpSig(tmpSig<0)=baseValue;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%function tmpSignal = makeFlat(signalLength,noise,baseValue)%% make flat bit:tmpSignal = randn(1,signalLength);tmpSignal = tmpSignal*noise + baseValue;

⌨️ 快捷键说明

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