0001 function [Flux FBAsolution model]= testPathway(model, MetIn,MetOut,AdditionalMetsInorOut,ObjectiveOption)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 if ~iscell(MetIn)
0024 Met = MetIn; clear MetIn; MetIn{1} = Met;
0025 end
0026 if ~iscell(MetOut)
0027 Met = MetOut; clear MetOut; MetOut{1} = Met;
0028 end
0029 if nargin > 3
0030 if ~iscell(AdditionalMetsInorOut)
0031 Met = AdditionalMetsInorOut; clear AdditionalMetsInorOut; AdditionalMetsInorOut{1} = Met;
0032 end
0033
0034 for i = 1:length(AdditionalMetsInorOut)
0035 model = addReaction(model,cat(2,'Tempsink_',AdditionalMetsInorOut{i}),{AdditionalMetsInorOut{i} },-1 ,true);
0036 end
0037 end
0038 if nargin <5,ObjectiveOption=1;end
0039
0040 for i = 1:length(MetIn)
0041 model = addReaction(model,cat(2,'TempInput_',MetIn{i}),{MetIn{i} },1 ,false);
0042 end
0043 model = addReaction(model,cat(2,'TempOutput_',MetOut{1}),{MetOut{1} },-1 ,false);
0044 if ObjectiveOption==1,model = changeObjective(model,cat(2,'TempOutput_',MetOut{1}));end
0045 FBAsolution = optimizeCbModel(model,'max');
0046 Flux = FBAsolution.f;
0047 if ~isempty(FBAsolution.x)
0048 printFluxVector(model,FBAsolution.x);
0049 else display('zero flux in network')
0050 end