www.gusucode.com > mbcmodels 工具箱 matlab 源码程序 > mbcmodels/@mbcinputfactor/ChannelMatch.m
function obj= ChannelMatch(obj,S,CopyRanges) %CHANNELMATCH match signals for model inputs % % [obj,MD]= ChannelMatch(obj,S,CopyRanges) % Copyright 2007-2010 The MathWorks, Inc. if nargin<3 CopyRanges= false; end nf= length(obj); VarNames= get(S,'Name'); Units= get(S,'Units'); % find exact matches InputNames = cell(1,nf); for i=1:nf if isempty(obj(i).Name) %use symbol if no name is defined InputNames{i}= obj(i).Symbol; else InputNames{i}= obj(i).Name; end end MatchInd = mbcMatchNames(InputNames, VarNames,'MatchLevel',0); vars = cell(1,nf); for i=1:nf obj(i).Name = VarNames{MatchInd(i)}; obj(i).Units = Units{MatchInd(i)}; vars{i} = obj(i).Name; end if CopyRanges % set coding from data obj = DataRange(obj,S(:,vars)); end