0001 function compareSampleTraj(rxnNames,samples,models,nBins)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 if (nargin < 4)
0017 [tmp,nSamples] = size(samples{1});
0018 bins = round(nSamples/25);
0019 end
0020
0021 if (~iscell(rxnNames))
0022 rxnNameList{1} = rxnNames;
0023 else
0024 rxnNameList = rxnNames;
0025 end
0026
0027 nRxns = length(rxnNameList);
0028 nX = ceil(sqrt(nRxns));
0029
0030 nY = ceil(nRxns/nX);
0031
0032 for j = 1:nRxns
0033
0034 clear counts;
0035 currLB = 1e6;
0036 currUB = -1e6;
0037 for i = 1:length(models)
0038 id = findRxnIDs(models{i},rxnNameList{j});
0039 if (isempty(id))
0040 id = findRxnIDs(models{i},[rxnNameList{j} '_r']);
0041 if (isempty(id))
0042 error('Reaction does not exist');
0043 end
0044 end
0045 currLB = min(currLB,min(samples{i}(id,:)'));
0046 currUB = max(currUB,max(samples{i}(id,:)'));
0047 end
0048
0049 bins = linspace(currLB,currUB,nBins);
0050
0051 for i = 1:length(models)
0052 sampleSign = 1;
0053 id = findRxnIDs(models{i},rxnNameList{j});
0054 if (isempty(id))
0055 id = findRxnIDs(models{i},[rxnNameList{j} '_r']);
0056 sampleSign = -1;
0057 end
0058 traj(:,i) = sampleSign*samples{i}(id,:)';
0059 end
0060
0061 subplot(nY,nX,j);
0062 plot(traj,'-');
0063 axis([0 length(traj) currLB currUB]);
0064
0065 end