📄 getscalejump.m
字号:
% function scaleJumpMats = getScaleJump(G)%% get the matrix that is an indicator that shows which states% jump from one scale to a neighbouring scale (ignoring boundary% states), and stays at the same state% first matrix is timeJump=0, second is timeJump=1function scaleJumpMat = getScaleJump(G)%dbstop%% sets of states that have non-boundary scale states, grouped by %% scalescaleRange=2:(G.numScales-1);for ii=scaleRange scaleStateSets{ii}=find(G.stateToScaleTau(:,1)==ii);endscaleDiffs=[0,1]; %permissible scale transitionsnzmax = (G.numScales-2)*G.numTaus*2;for sd=1:length(scaleDiffs) clear tempMat; %tempMat=logical(sparse([],[],[],G.numStates,G.numStates,nzmax)); %tempMat=logical(sparse(G.numStates,G.numStates)); tempMat=logical(zeros(G.numStates,G.numStates)); %tempMat=zeros(G.numStates,G.numStates); %tempMat=logical(zeros(G.numStates,G.numStates)); %for ii=1:length(genericScaleStates) for thisScale=scaleRange sc=scaleStateSets{ii}; validStates = find(abs(G.stateToScaleTau(:,1)-thisScale)==scaleDiffs(sd)); %tic; tempMat(sc,validStates)=1; %toc; end scaleJumpMat{sd}=sparse(tempMat);; %scaleJumpMat{sd}=logical(sparse(tempMat));endreturn;for ii=1:length(scaleDiffs) length(find(scaleJumpMat{ii}))end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -