Build Atom Transition Multigraph

tutorial_initConservedMoietyPaths
projectDir = '~/work/sbgCloud/programExperimental/projects/tracerBased'
dataDir = '~/work/sbgCloud/programExperimental/projects/tracerBased/data/'
softwareDir = '~/work/sbgCloud/programExperimental/projects/tracerBased/software/'
visDataDir = '~/work/sbgCloud/programExperimental/projects/tracerBased/data/visualisation/'
resultsDir = '~/work/sbgCloud/programExperimental/projects/tracerBased/results/iDopaNeuro1_ConservedMoieties/'
rxnfileDir = '~/work/sbgCloud/code/fork-ctf/rxns/atomMapped'
if ~recompute
load([resultsDir modelName '_dATM.mat'])
return
end
Load the model and input data
switch modelName
case 'DAS'
load('DAS.mat')
otherwise
load([dataDir 'models' filesep modelName '.mat'])
model = iDopaNeuro1;
end

Find the flux consistent subset

%% Identify the flux consistent set
paramConsistency.epsilon = 1e-5;
paramConsistency.method = 'fastcc';
[~, fluxConsistentRxnBool] = findFluxConsistentSubset(model, paramConsistency);
%remove any flux inconsistent reactions and the corresponding metabolites
%and coupling constraints if necessary
model = removeRxns(model, model.rxns(~fluxConsistentRxnBool),'metRemoveMethod','exclusive','ctrsRemoveMethod','infeasible');

1.2.1. Atom transition multigraph

Calculate the atom transition multigraph in order to follow the path of all the atoms in the network (this may take some time).
options.directed=0;
options.sanityChecks=1;
currentDir=pwd;
cd(rxnfileDir)
dATM = buildAtomTransitionMultigraph(model, rxnfileDir, options);
Atom mappings found for 910 model reactions. Generating atom transition network for reactions with atom mappings.
Error using buildAtomTransitionMultigraph (line 237)
Transition 3 in reaction 5 maps between atoms of different elements
cd(resultsDir)
save([resultsDir modelName '_dATM.mat'],'dATM')