?? qdblink.m
字號:
function [randStringAvg] = QDBlink(mOn,mOff,numTimeSteps,numPerStep);
minTime = 1;
maxTime = numTimeSteps*numPerStep;
randPowerOn = @(sizeRan,minTime,maxTime) round((rand(sizeRan)/(minTime).^mOn).^-(1/mOn));
randPowerOff = @(sizeRan,minTime,maxTime) round((rand(sizeRan)/(minTime).^mOff).^-(1/mOff));
% randPowerOn = @(sizeRan,minTime,maxTime) round((rand(sizeRan)/sqrt(minTime)+1/sqrt(1000000)).^-(1/mOn));
% randPowerOff = @(sizeRan,minTime,maxTime) round((rand(sizeRan)/sqrt(minTime)+1/sqrt(1000000)).^-(1/mOff));
totalTimeSteps = maxTime;
randString = zeros(totalTimeSteps,1) - 1;
stringIndex = 1;
while randString(end) == -1
% On time
numToAdd = min([randPowerOn(1,minTime,maxTime) maxTime]);
randString(stringIndex:stringIndex+numToAdd) = 1;
stringIndex = stringIndex+numToAdd;
% Off time
numToAdd = min([randPowerOff(1,minTime,maxTime) maxTime]);
randString(stringIndex:stringIndex+numToAdd) = 0;
stringIndex = stringIndex+numToAdd;
end
% Crops series if it's too long
randString(totalTimeSteps+1:end) = [];
% Reshapes matrix to average it
randStringAvg = reshape(randString,numPerStep,numTimeSteps);
randStringAvg = mean(randStringAvg,1);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -