代謝シミュレーションの実行
2015/8/27-8
山口大学集中講義2
内容
1. Octaveのインストール
2. Woctave+OpenCOBRAのインストール 3. E. coli Core Model
4. FBAの実行 5. 目的関数の変更 – 理論最大収率の計算 6. フラックスの上限下限の変更 – 培養条件の変更(好気、嫌気) – 1遺伝子破壊の実行 7. 代謝反応の追加 8. 網羅的1遺伝子破壊の実行 – 必須遺伝子 – コハク酸生産 9. 網羅的2重遺伝子破壊の実行 – コハク酸生産
インストールするソフトウェアなど
• GNU Octave
– 数値解析ソフトウェア – 商用ソフトMatlabに類似• Woctave
– OctaveにGUI環境を付与• COBRA toolbox
– FBAに使用するプログラム群• E.coli core model
4
配布データリスト
• Octave-3.6.4-vs2010-setup.exe – Octaveインストールファイル • 「WOctave_1_5_0_bin」フォルダ – WOctaveプログラム – 「program」フォルダ • 実習で使用するプログラム類 • 「cobra」フォルダ – シミュレーション用toolbox • 「function」フォルダ – 清水研自作プログラム類 – 「Helper フォルダ」 • vcredist_x64.exe – Octaveのインストールでエラーが生じたときにインストール(windows 64bit用) • vcredist_x86.exe – Octaveのインストールでエラーが生じたときにインストール(windows 32bit用)Octaveのダウンロード (0)
• USBメモリからコピーする場合
– octave-3.6.4-vs2010-setup.exe
– をデスクトップにコピー
– =>Octaveのインストール(1)までスキップ
• HPからダウンロードする場合
• =>Octaveのダウンロード(1)から
6
Octaveのダウンロード (1)
• 阪大 清水研で検索
Octaveのダウンロード (2)
8
Octaveのダウンロード (3)
Octave-3.6.4-vs2010-setup.exeダウンロード
Octaveのダウンロード (4)
クリックすると自動出来に
ダウンロードが始まる
10
Octaveのインストール (1)
•
ダウンロードしたファイル「octave-3.6.4-vs2010-setup.exe」を実行
Octaveのインストール (2)
• インストール先は変更化
• パス上に日本語が含まれない方がトラブルが生
じにくい
12
Octaveのインストール (3)
Octaveのインストール (4)
ここにコマンドを
打つ
1+1 [リターン]
quit [リターン]
14
WOctave, OpenCOBRA のダウンロード(0)
• USBメモリからコピーする場合
– USBメモリのWOctave_1_5_0_binを
– C:¥にコピーする。
– WOctave, OpenBobra のインストール(1)までスキッ
プ
• HPからダウンロードする場合
• WOctave, OpenBobra のダウンロード(1)からWoctave+COBRAのダウンロード(1)
WOctave + COBRAtoolbox + 演習用スクリプト
16
Woctave+COBRAのインストール(1)
• Woctave_1.5.0.zipファイルをダブルクリック
• ファイルを全て展開
WOctaveのインストール(2)
• C:¥WOctave1_5_0_bin となるようにする。
C: ドライブ直下
18
WOctaveのインストール(3)
• 「C:¥WOctave_1_5_0_bin¥bin」の、
「
WOctave」を実行
WOctaveのインストール(4)
• Octaveの保存場所が指定されていないというエ
ラーが出る
20
WOctaveのインストール(5)
• Octaveのパスを設定し、再起動
WOctaveのインストール(6)
(1)クリック
(2) 「bin」を
選択
(3) 「OK」をクリックし、
プログラムを手動で
再起動
22
WOctaveのインストール(7)
フォルダ
変数
入力場所
コマンド
openCOBRA
• openCOBRA
– The COnstraints Based Reconstruction and Analysis (COBRA) • http://opencobra.sourceforge.net/openCOBRA/ – ゲノムスケール代謝モデルを用いたシミュレーションに関連する プログラム • MatlabとPython用 – Octaveでは一部の関数について使用可能 • 代謝モデルのインポート(Octave一部非対応) • 遺伝子破壊シミュレーション • 代謝反応の追加
24
COBRAのインストール(1)
実習で使用する関数と
COBRA toolboxを
使用するために
1. 下記フォルダに移動
– WOctave_1_5_0_bin¥program
クリック
C:¥WOctave_1_5_0_
bin¥program
を選んで
OK
26
実習で使用する関数と
COBRA toolboxを
使用するために
addpath(genpath(pwd)) と入力してリターン addpath : Octaveの認識パス(フォルダ)に新しい パスを追加 genpath : サブフォルダを含むパスを取得 pwd : 現在のフォルダのパス Warning がでても無視実習で使用する関数と
COBRA toolboxを
使用するために
changeCobraSolver('glpk')と入力してリターン 下記の結果が得られればOK
28
実習で使用する関数と
COBRA toolboxを
使用するために
program1 と入力してリターン
代謝モデル:
E. coli core model
• E. coli core model
– 大腸菌の中枢代謝経路を中心とした小スケールのモ
デル
• 解糖系、TCA回路、アミノ酸代謝etc.. • 95代謝反応、72代謝物質–
http://sbrg.ucsd.edu/Downloads/EcoliCore
• ecoli_core_model.xls – 代謝反応、代謝物質リスト • ecoli_core_model.xml – SBML形式で記述された代謝モデル • ecoli_core_model.mat – xlsやSBML形式で記述された代謝モデルを Matlab/Octaveで読み込んだデータ 「WOctave_1_3_2_bin¥program」 フォルダ内にダウンロード済み30
E. coli core modelのエクセルファイル
• ecoli_core_model.xls
– Metabolites
• 代謝物質リスト
– Reactions
• 代謝反応リスト
– rxn max and min
• 各代謝反応の代謝フラックスの上限下限 • 目的関数の情報
– Ecoli_core_S
• 代謝モデルの量論係数行列• 代謝マップEcCore.xlsx
– シミュレーション結果を代謝マップでみるためのファイ
ル
代謝シミュレーションの流れ
1. 代謝モデルを読み込む
– load(‘ecoli_core_model.mat’);
2. シミュレーション条件を設定する
– 目的関数の設定
• model = changeObjective(model, ‘Biomass_Ecoli_core_w_GAM’); – グルコース取込み速度の設定
• model = changeRxnBounds(model, ‘EX_glc(e)’, -10, ’b’) – 酸素供給条件の設定 (option)
• model = changeRxnBounds(model, ‘EX_o2(e)’, -5, ’b’) – 遺伝子破壊 (option)
• model = changeRxnBounds(model, ‘ALCD2x’, 0, ’b’);
3. シミュレーションを実行する
– result = optimizeCbModel(model);
4. シミュレーション結果を解析する
32
代謝モデルの読み込み
(1)
• WOctaveで下記コマンドを入力 • 変数 – model • 代謝モデルの情報を含む変数、構造体であり下記の変数を含む – 「model.rxn」と入力することで各変数にアクセス可能 • rxns – 反応の名前 • mets – 代謝物質の名前 • S – 化学量論係数行列 – 行:代謝物質、列:代謝反応 • lb – 各反応のフラックスの下限値 • ub – 各反応のフラックスの上限値 • c – 目的関数の設定load(‘ecoli_core_model.mat’)
エクセルファイル情報を Octave/Matlabのデータ形式に 変更したファイル代謝モデルの読み込み
(2)
確認したい変数を ダブルクリック
変数を選択することで、 中身を確認可能
34
代謝シミュレーションの実行
(1)
• 代謝シミュレーションを実行する
エラーが生じなければ、
代謝モデル使いの仲間入りです!!
• 初期計算条件 – グルコース取込み速度 • 10 mmol/gDCW/h – 酸素供給速度 • 制限無し (好気条件) ・下記のエラーが出た場合「error: ‘error: No solver found. call changeCobraSolver(solverName)」 ・対処
「changeCobraSolver(‘glpk’) 」を実行
load(‘ecoli_core_model.mat’)
代謝シミュレーションの実行
(2)
• FBAsolution = optimizeCbModel(model, osenseStr, minNorm, allowLoops) • 入力 – model • 代謝モデルの変数 – osenseStr • 目的関数を最大にするか最小にするかを指定 • 最大化:‘max’ (デフォルト)、最小化:‘min’ • 出力 – FBAsolution • 代謝シミュレーションの結果が入力される変数 • x – 全ての代謝フラックスの値 • f – 目的関数のフラックスの値 – デフォルトの場合は、増殖速度
36
計算結果の確認
(1)
• 計算結果を出力し、エクセルで確認する
– flux2txt(fileName, result.x)
• fileName: 出力のテキストファイルの名前 • result.x: FBAの結果のフラックスデータ 1. 下記を実行すると「test.txt」ファイルができる • flux2txt(‘test.txt’, result.x) 2. ファイルを開き、全てコピー 3. 「Ecoli_core_model.xls」ファイルの「reactions (result)」シート の右端の列に貼り付け計算結果の確認
(2)
(1)貼り付け vss (Gur = -10, O2ur = -1000)
38
計算結果を代謝マップ上で確認
(1)
1. 「test.txt」ファイルファイルを開き、全てコピー 2. 「代謝マップEcCore.xlsx」ファイルの「代謝マップ」シートの「Flux1」 の列に貼り付け (1)貼り付け計算結果を代謝マップ上で確認
(2)
代謝フラックスの 計算結果
40
目的関数の変更
(1)
• 目的関数の変更
– 目的生産物質に変更し、理論最大収率を計算
– モデルの構築時に、基質(グルコースなど)から目的代
謝物質に至る代謝反応が完全につながっているかを
確認
• 使用関数
– changeObjective
• 使用プログラムファイル
– program2_1.m
– program2_2.m
目的関数の変更
(2)
• model = changeObjective(model,rxnNameList,objectiveCoeff) • 入力 – model • model変数 – rxnNameList • 新しい目的関数にする反応名 (model.rxnsに対応する反応名) – objectiveCoeff (※オプション) • 目的関数の係数(重み付け) Default = 1• 例) Biomassに1:Objective function = 1 x Biomass • Biomassに1、コハク酸に0.01
• Objective function = 1 x Biomass + 0.01 x Succinate
• 出力
– model
42
目的関数の変更
(3)
• 例題
– 目的関数を「コハク酸」に変更して、理論最大収率を計算する # program2_1 clear load('ecoli_core_model.mat'); changeCobraSolver('glpk'); # 目的関数の変更:コハク酸model = changeObjective(model,'EX_succ(e)');
# 目的関数の係数が'1'となっている反応がコハク酸か確認 ind = find(model.c ~= 0); disp(model.rxns(ind)) # FBAを実行 result = optimizeCbModel(model); # コハク酸生産速度の表示 disp(result.f) #対糖収率(c-mol)の表示 disp((result.f * 4) / (-result.x(28) * 6)*100) #対糖収率(グラム)の表示 disp((result.f * 118.09) / (-result.x(28) * 180.16)*100) 1. flux2txt(‘suc.txt’, result.x) 2. 「suc.txt」ファイルを開き、全てコピー 3. 「Ecoli_core_model.xls」ファイルの 「reactions (result)」シートの右端の 列に貼り付け 4. 「代謝マップEcCore.xlsx」ファイルの 「代謝マップ」シートの「Flux1」の列に 貼り付け
目的関数の変更
(4)
• 例題
– 目的関数を「コハク酸」に変更して、理論最大収率を計算する #実行結果 { [1,1] = EX_succ(e) }Production rate (mmol/gDCW/h) # コハク酸生産速度(mmol/gDCW/h) 16.384
Yield (c-mol/cmol%) # 対糖コハク酸収率(c-mol) 109.23
Yield (g/g%) # 対糖コハク酸収率(グラム) 107.39
44
目的関数の変更
(4)
• 練習問題
– 目的関数を「乳酸」に変更して、理論最大収率を計算する
– 乳酸の排出反応は「'EX_lac_D(e)'」
– 乳酸の分子量:「90.08」
• 回答
• program2_2.m
フラックスの上限・下限の変更
(1)
• フラックスの上限下限の変更
– 遺伝子破壊、発現抑制、過剰発現を表現する • 例) 遺伝子破壊:上限/下限共に「0」 – 培養環境を入力する • 例) 酸素供給速度• 使用関数
– changeRxnBounds• 使用プログラム
– program3_1 – program3_2 – program3_3 – program3_446
フラックスの上限・下限の変更
(2)
• model = changeRxnBounds(model,rxnNameList,value,boundType) • 入力 – model • コブラ形式の代謝モデル – rxnNameList • 変更対象の反応名 – value • フラックスの制限値 – boundType • 制限の種類 • ‘u’ – 上限のみ, ‘l’ – 下限のみ, ‘b’ – 両方(Default = 'b') • 出力 – model • フラックスの上限・下限が更新された代謝モデル47
培養条件の変更
(1)
• 例題 – 酸素取込み速度を変更し、生産物の変化を調べる。 – 条件1:完全好気「制限無し」 – 条件2:微好気「5」 – 条件3:完全嫌気「0」 グルコース取込み速度 10 mmol/gDCW/h # program3_1 clear load('ecoli_core_model.mat'); changeCobraSolver('glpk'); # 好気条件 model = changeRxnBounds(model,'EX_o2(e)',1000,'u'); model = changeRxnBounds(model,'EX_o2(e)',-1000,'l'); result1 = optimizeCbModel(model); # 微好気条件 model = changeRxnBounds(model,'EX_o2(e)',-5,'b'); result2 = optimizeCbModel(model); # 完全嫌気条件 model = changeRxnBounds(model,'EX_o2(e)',0,'b'); result3 = optimizeCbModel(model);48
培養条件の変更
(2)
酸素供給が設定通り に変化している 酢酸生産速度が変化 エタノールとギ酸の 生産速度が増加 # 計算結果の確認 1. flux2txt('test3_1.txt', [result1.x,result2.x,result3.x]) 2. 「test3_1.txt」ファイルを開き、「Ecoli_core_model.xls」ファイルの 「reactions (result)」シートの右端の列に貼り付け培養条件の変更
(4)
• 酸素取込み速度を細かく変化させ、生産する物
質の変化を
Figureに描画する。
# program3_2 clear load('ecoli_core_model.mat'); changeCobraSolver('glpk'); # 酸素取込み速度の最小値と最大値を設定 minOUR = 0; maxOUR = 25;fOxygen(model, minOUR, maxOUR);
– グルコース取込み速度 • 10 mmol/gDCW/h – 酸素取込み速度 • 「0~25 mmol/gDCW/h」の間で「1」ずつ変化 – 生産物質の解析 • エタノール、乳酸、酢酸、ギ酸、コハク酸
50
培養条件の変更
(5)
# fOxygen
function result = fOxygen(model, minOUR, maxOUR); # 解析範囲の酸素取込み速度 oxy = [minOUR:1:maxOUR]; # 結果を確認したい代謝物質を設定 exMets=[{'Biomass_Ecoli_core_w_GAM'},{'EX_ac(e)'},{'EX_etoh(e)'},{'EX_for(e)'},{'EX_lac_D(e)'}, {'EX_succ(e)'}]; # 計算結果において結果を確認したい代謝物質のインデックスを獲得 indExMets=findRxnIDs(model,exMets); # 酸素濃度を変更し、FBAを実行 for i=1:size(oxy,2) model=changeRxnBounds(model,'EX_o2(e)',-oxy(i),'b'); result{i}=optimizeCbModel(model); products(:,i) = result{i}.x(indExMets); end # 結果をグラフに記述 figure; plot(oxy,products,'.-'); legend(model.rxns(indExMets));
xlabel('Oxygen uptake rate (mmol/gDCW/hr)') ylabel('Production rate (mmol/gDCW/h)')
培養条件の変更
(6)
• 酸素供給速度と物質生産の関係
エタノール 酢酸 ギ酸 Biomass 乳酸とコハク酸酸素供給速度
物質生産速度
嫌気
好気
52
Figureの操作方法
Figureを クリップボードに コピー Figureのサイズを 変更したときに、 図の描写を最適化 Figureの 縮尺を戻す 「右クリックとドラッグ」で 選択範囲を拡大可能遺伝子破壊
(1)
• 遺伝子破壊の影響を予測する。
– 対象の反応のフラックスの範囲を上限・下限とも「0」に設定
• 例)
– alcohol dehydrogenaseの破壊
• model = changeRxnBounds(model, ‘ALCD2x’ ,0,’b’); • ALCD2x
– [c] : etoh + nad <==> acald + h + nadh – コハク酸取込み反応の破壊
• model = changeRxnBounds(model, ‘SUCCt2_2’ ,0,’b’); • SUCCt2_2
54
遺伝子破壊
(2)
• 嫌気条件下で生産される代謝物質の合成反応の破壊の
影響を調べる。
• 計算条件
– 通気条件 • 完全嫌気 – 計算対象 1. 野生型株 2. pfl破壊株– pyruvate formate lyase
– [c] : coa + pyr --> accoa + for
– 計算条件
– グルコース取込み速度 • 10 mmol/gDCW/h – 酸素取込み速度
55
遺伝子破壊
(3)
# program3_3
clear load('ecoli_core_model.mat'); changeCobraSolver('glpk'); # 完全嫌気条件 model = changeRxnBounds(model,'EX_o2(e)',0,'b'); # 野生型株 result1 = optimizeCbModel(model); # pfl破壊 model = changeRxnBounds(model,'PFL',0,'b'); result2 = optimizeCbModel(model); # pfl破壊株の酸素取込み速度の影響を解析 fOxygen(model, 0, 25); title('delta-pfl') # データのエクスポート flux2txt('test3_3.txt', [result1.x,result2.x]); 1. 「test3_3.txt」ファイルを開き、全てコ ピー 2. 「Ecoli_core_model.xls」ファイルの 「reactions (result)」シートの右端の 列に貼り付け 3. 「代謝マップEcCore.xlsx」ファイルの 「代謝マップ」シートの「Flux1」の列に 貼り付け遺伝子破壊
(3)
56
遺伝子破壊
(4)
•
pfl
破壊により代謝状態が変化
エタノール 酢酸 ギ酸 酢酸 エタノール 野生型株 pfl破壊株遺伝子破壊
(5)
• 練習問題
– 嫌気条件下でのコハク酸生産を目指す。 – 完全嫌気条件下において、生産速度が高い物質の生産に関す る遺伝子を順に破壊し、コハク酸生産が増加する遺伝子破壊株 を予測する。• 計算条件
– グルコース取込み速度 • 10 mmol/gDCW/h – 通気条件 • 完全嫌気• 回答
• program3_4.m58
反応を代謝モデルに追加
(1)
• 大腸菌が元来生産しない物質について異種生物の生産経路を付与し、 生産性を向上する破壊対象の遺伝子を発見したい • 使用する関数 – addReaction_Octave – COBRA toolboxの関数addReactionを、Octave用に微修正した もの反応を代謝モデルに追加
(2)
• model = addReaction_Octave(model, addRxnNames, addRxnList) • 入力 – model • 代謝モデル – addRxnNames • 追加する反応の名前 – addRxnList • 追加する反応のリスト • A + B -> C + D • C <==> 2 D など • 出力 – model • 新しい反応が追加された代謝モデル
60
反応を代謝モデルに追加
(3)
• n-Butanol生合成反応を追加
反応名(略称) 反応名 反応式
Btoh1 Acetyl-CoA acetyltransferase 2 accoa[c] -> aacoa[c] + coa[c]
Btoh2 3-hydroxyacyl-CoA dehydrogenase aacoa[c] + h[c] + nadh[c] -> 3hbcoa[c] + nad[c] Btoh3 3-hydroxyacyl-CoA dehydratase 3hbcoa[c] -> b2coa[c] + h2o[c]
Btoh4 btcoa dehydrogenase b2coa[c] + nadh[c] + h[c] -> btcoa[c] + nad[c] Btoh5 Butanal dehydrogenase btcoa[c] + nadh[c] + h[c] -> btal[c] + coa[c] + nad[c] Btoh6 Butanol dehydrogenase btal[c] + nadh[c] + h[c] -> btoh[c] + nad[c] Btoh_t Butanol transport reaction btoh[c] + h[c] <==> btoh[e] + h[e]
EX_btoh(e) Butanol exchange reaction btoh[e] ->
accoa aacoa 3hbcoa b2coa btcoa
btal btoh
btoh[e]
accoa coa NAD
NADH H H2O NAD NADH H NAD CoA NADH H NADH H NAD H H
反応を代謝モデルに追加
(4)
# program_addReaction_1 clear load('ecoli_core_model.mat'); changeCobraSolver('glpk'); % モデルに追加する代謝反応名リスト addRxnNames = {'Btoh1‘,'Btoh2‘,'Btoh3‘,'Btoh4‘,'Btoh5‘,'Btoh6‘,'Btoh_t''EX_btoh(e))'}; % モデルに追加する代謝反応式addRxnList = { '2 accoa[c] -> aacoa[c] + coa[c]‘, 'aacoa[c] + h[c] + nadh[c] -> 3hbcoa[c] + nad[c]‘, '3hbcoa[c] -> b2coa[c] + h2o[c]', 'b2coa[c] + nadh[c] + h[c] -> btcoa[c] + nad[c]‘, 'btcoa[c] +
nadh[c] + h[c] -> btal[c] + coa[c] + nad[c]‘, 'btal[c] + nadh[c] + h[c] -> btoh[c] + nad[c]‘, 'btoh[c] + h[c] <==> btoh[e] + h[e]‘, 'btoh[e] ->'};
% 新しい代謝反応を代謝モデルに付加
model = addReaction_Octave(model, addRxnNames, addRxnList); model.description = 'Ecoli_core_butanol_model'; % 付け加えた代謝反応にフラックスが流れるかを確認 model = changeObjective(model,model.rxns,0); model = changeObjective(model,'EX_btoh(e)',1); result = optimizeCbModel(model); disp(result.f)
62
反応を代謝モデルに追加
(5)
• n-Butanol生合成反応をまとめてしまう
反応名(略称) 反応名 反応式
Btoh Acetyl-CoA acetyltransferase 2 accoa[c] + 4 NADH[c] + 4 H[c] -> btoh[c] + 4 NAD[c] + 2 coa[c] + h2o[c] Btoh_t Butanol transport reaction btoh[c] + h[c] <==> btoh[e] + h[e]
EX_btoh(e) Butanol exchange reaction btoh[e] ->
accoa btoh btoh[e]
accoa 4NAD 2coa H2O 4NADH 4H H H
反応を代謝モデルに追加
(6)
# program_addReaction_2 clear load('ecoli_core_model.mat'); changeCobraSolver('glpk'); % モデルに追加する代謝反応名リスト addRxnNames = {'Btoh‘,'Btoh_t''EX_btoh(e))'}; % モデルに追加する代謝反応式 addRxnList = {'2 accoa[c] + 4 nadh[c] + 4 h[c] -> btoh[c] + 4 nad[c] + 2 coa[c] + h2o[c]‘ 'btoh[c] + h[c] <==> btoh[e] + h[e]‘
'btoh[e] ->‘ };
% 新しい代謝反応を代謝モデルに付加
model = addReaction_Octave(model, addRxnNames, addRxnList); model.description = 'Ecoli_core_butanol_model'; % 付け加えた代謝反応にフラックスが流れるかを確認 model = changeObjective(model,model.rxns,0); model = changeObjective(model,'EX_btoh(e)',1); result = optimizeCbModel(model); disp(result.f)
64
反応を代謝モデルに追加
(7)
• 1,3-Propanediol生合成反応
反応名(略称) 反応名 反応式
13PD_1 glyc3P dehydrogenase dhap[c] + h[c] + nadph[c] -> glyc3p[c] + nadp[c]
13PD_2 glyc3p phosphatase glyc3p[c] + h2o[c] -> glyc[c] + pi[c]
13PD_3 Glycerol dehydratase glyc[c] -> 3hpa[c] + h2o[c]
13PD_4 13PD dehydrogenase 3hpa[c] + nadh[c] + h[c] -> 13pd[c] + nad[c]
13PD_t 13PD transport reaction 13pd[c] -> 13pd[e]
EX_13pd(e) 13PD exchange reaction 13pd[e] ->
• Isobutanol生合成反応
反応名(略称) 反応名 反応式
iBtoh_1 alac synthase 2 pyr[c] + h[c] -> alac[c] + co2[c]
iBtoh_2 23dhmb reductoisomerase alac[c] + nadph[c] + h[c] -> 23dhmb[c] + nadp[c]
iBtoh_3 23dhmb dehydratase 23dhmb[c] -> 3mob[c] + h2o[c]
iBtoh_4 3mob decarboxylase 3mob[c] + h[c] -> ibtal[c] + co2[c]
iBtoh_5 iBtoh dehydrogennase ibtal[c] + nadh[c] + h[c] -> ibtoh[c] + nad[c]
iBtoh_t iBtoh transport reaction ibtoh[c] + h[c] -> ibtoh[e] + h[e]
反応を代謝モデルに追加
(8)
• 作成した代謝モデルを保存したい時
save ファイル名 save : データを保存する関数 ファイル名: 保存するときのファイル名 save ファイル名 変数名 save : データを保存する関数 ファイル名: 保存するときのファイル名 変数名: 指定した変数のみを保存66
反応を代謝モデルに追加
(9)
• 結果の例:n-Butanol生産に有効な3重破壊株の探索
# of KO 生産速度[mmol/gDW/h] 破壊反応(1) 破壊反応(2) 破壊反応(3) 1 0.92 EX_etoh(e)/ ALCD2x/ETOHt2r 0.92 ACALD 2 (他 の解 もあ る)6.73 EX_etoh(e)/ ALCD2x/ETOHt2r EX_ac(e)/ACKr/ ACt2r/PTAr 6.73 ACALD EX_ac(e)/ACKr/ ACt2r/PTAr 5.55 EX_etoh(e)/ ALCD2x/ETOHt2r PGI
3 (他 の解 もあ る)
8.51 EX_etoh(e)/ ALCD2x/ETOHt2r CYTBD/O2t/ EX_o2(e) FORt2,FORti 8.51 EX_etoh(e)/ ALCD2x/ETOHt2r CYTBD/O2t/ EX_o2(e) PFL
8.51 ACALD CYTBD/O2t/ EX_o2(e) FORt2,FORti
Ethanol生合成経路 Acetate生合成経路 Formate 生合成経路 Cytochrome oxydase
付録
68
COBRAのインストール(1)
COBRAのインストール(2)
70
OctaveでCOBRA toolboxを使用するために (1)
1. Zipファイルを解凍しWOctaveのフォルダに移す
– WOctave_1_5_0_bin¥program¥cobra
2. 下記フォルダに移動
– WOctave_1_5_0_bin¥cobra¥external¥toolboxes¥glp
kmex
3. 「glpk.m」のファイル名を「_glpk.m」に変更
– Octaveには、もともとglpkが含まれているため
71
Overview of the COBRA toolbox
Schellenberger et al. Quantitative prediction of cellular metabolism with constraint-based models: the COBRA Toolbox v2.0. Nat Protoc. 2011; 6(9): 1290–1307.