Skip to content

Commit

Permalink
feat: onserved moieties (#459)
Browse files Browse the repository at this point in the history
* feat: left_nullspace for conserved moieties

* feat: including data structure and assertions for conserved moieties

* feat: data structure for conserved moieties

* change np array to df

* feat: initialised at fraction of sampled pool size and added ODE solver

* bug: error in order of conserved moiety groups

* fix: add change penalty term

* fix: change penalty term to abs based on #434

* feat: include example of conserved moieties

* feat: including printout of moeity pools and sorting check

* fixing out_of_sample_model

* including corrected arviz branch, fix next arviz release

* including corrected arviz branch, fix next arviz release

* fix: sort properly the conserved_moieties to match their existence

* bug: correcting ordering of conserved moiety pool indexes

* test: fixing example odes and moving new ode example

* test: include json files

* chore: cleanup new conserved moiety example

---------

Co-authored-by: carrascomj <[email protected]>
  • Loading branch information
NicholasCowie and carrascomj authored Jun 24, 2024
1 parent 9747fe6 commit 1a749d3
Show file tree
Hide file tree
Showing 27 changed files with 1,028 additions and 684 deletions.
9 changes: 9 additions & 0 deletions maud/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,15 @@ def do_simulate(data_path, output_dir, n):
.unstack()
.T
)
print("\n\nSimulated conserved moiety pools:")
if "conc_moiety_pool_train" in idata.posterior.keys():
print(
idata.posterior["conc_moiety_pool_train"]
.mean(dim=["chain", "draw"])
.to_series()
.unstack()
.T
)
print("\n\nSimulated fluxes:")
print(
idata.posterior["flux_train"]
Expand Down
4 changes: 0 additions & 4 deletions maud/data/example_inputs/example_ode/experimental_setup.toml

This file was deleted.

2 changes: 1 addition & 1 deletion maud/data/example_inputs/example_ode/inits.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"dgf": [10.0, 2.0, 5.0, 0.0], "dgf_free": [10.0, 2.0, 5.0, 0.0], "km": [0.5, 1.0, 2.0, 0.5, 1.0, 2.0, 0.5, 2.0, 1.0, 3.0000000000000004], "log_km_z": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "ki": [1.0], "log_ki_z": [0.0], "kcat": [0.5, 2.0, 1.0, 2.0, 1.0], "log_kcat_z": [0.0, 0.0, 0.0, 0.0, 0.0], "dissociation_constant": [0.3, 0.9], "log_dissociation_constant_z": [0.0, 0.0], "transfer_constant": [1.0, 1.0], "log_transfer_constant_z": [0.0, 0.0], "kcat_pme": [], "log_kcat_pme_z": [], "drain_train": [[]], "drain_train_z": [[]], "drain_test": [[]], "drain_test_z": [[]], "conc_enzyme_train": [[1.0, 2.0, 3.0000000000000004, 2.0, 3.0000000000000004]], "log_conc_enzyme_train_z": [[0.0, 0.0, 0.0, 0.0, 0.0]], "conc_enzyme_test": [[1.0, 2.0, 3.0000000000000004, 2.0, 3.0000000000000004]], "log_conc_enzyme_test_z": [[0.0, 0.0, 0.0, 0.0, 0.0]], "conc_unbalanced_train": [[4.999999999999999, 0.5]], "log_conc_unbalanced_train_z": [[0.0, 0.0]], "conc_unbalanced_test": [[4.999999999999999, 0.5]], "log_conc_unbalanced_test_z": [[0.0, 0.0]], "conc_pme_train": [[]], "log_conc_pme_train_z": [[]], "conc_pme_test": [[]], "log_conc_pme_test_z": [[]], "psi_train": [0.0], "psi_train_z": [0.0], "psi_test": [0.0], "psi_test_z": [0.0]}
{"dgf": [10.0, 2.0, 5.0, 0.0], "dgf_free": [10.0, 2.0, 5.0, 0.0], "km": [0.5, 1.0, 2.0, 0.5, 1.0, 2.0, 0.5, 2.0, 1.0, 3.0000000000000004], "log_km_z": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0], "ki": [1.0], "log_ki_z": [0.0], "kcat": [0.5, 2.0, 1.0, 2.0, 1.0], "log_kcat_z": [0.0, 0.0, 0.0, 0.0, 0.0], "dissociation_constant": [0.3, 0.9], "log_dissociation_constant_z": [0.0, 0.0], "transfer_constant": [1.0, 1.0], "log_transfer_constant_z": [0.0, 0.0], "kcat_pme": [], "log_kcat_pme_z": [], "drain_train": [[]], "drain_train_z": [[]], "drain_test": [[]], "drain_test_z": [[]], "conc_enzyme_train": [[1.0, 2.0, 3.0000000000000004, 2.0, 3.0000000000000004]], "log_conc_enzyme_train_z": [[0.0, 0.0, 0.0, 0.0, 0.0]], "conc_enzyme_test": [[1.0, 2.0, 3.0000000000000004, 2.0, 3.0000000000000004]], "log_conc_enzyme_test_z": [[0.0, 0.0, 0.0, 0.0, 0.0]], "conc_unbalanced_train": [[4.999999999999999, 0.5]], "log_conc_unbalanced_train_z": [[0.0, 0.0]], "conc_unbalanced_test": [[4.999999999999999, 0.5]], "log_conc_unbalanced_test_z": [[0.0, 0.0]], "conc_pme_train": [[]], "log_conc_pme_train_z": [[]], "conc_pme_test": [[]], "log_conc_pme_test_z": [[]], "psi_train": [0.0], "psi_train_z": [0.0], "psi_test": [0.0], "psi_test_z": [0.0]}
2 changes: 1 addition & 1 deletion maud/data/example_inputs/example_ode/input_data_train.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"N_mic": 4, "N_edge_sub": 5, "N_edge_prod": 5, "N_edge": 5, "N_unbalanced": 2, "N_enzyme": 5, "N_er": 5, "N_phosphorylation": 0, "N_pme": 0, "N_competitive_inhibition": 1, "N_allostery": 2, "N_allosteric_enzyme": 2, "N_drain": 0, "N_km": 10, "N_sub_km": 5, "N_prod_km": 5, "S": [[-1, -1, -1, 0, 0], [1, 0, 0, -1, 0], [0, 1, 1, 0, -1], [0, 0, 0, 1, 1]], "N_reaction": 4, "N_metabolite": 4, "balanced_mic_ix": [2, 3], "unbalanced_mic_ix": [1, 4], "ci_mic_ix": [4], "edge_type": [1, 1, 1, 1, 1], "edge_to_enzyme": [1, 2, 3, 4, 5], "edge_to_er": [1, 2, 3, 4, 5], "edge_to_tc": [0, 1, 2, 0, 0], "edge_to_drain": [0, 0, 0, 0, 0], "edge_to_reaction": [1, 2, 2, 3, 4], "water_stoichiometry": [0.0, 0.0, 0.0, 0.0, 0.0], "transported_charge": [0.0, 0.0, 0.0, 0.0, 0.0], "mic_to_met": [1, 2, 3, 4], "subunits": [1, 1, 1, 1, 1], "sub_by_edge_long": [1, 1, 1, 2, 3], "sub_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "prod_by_edge_long": [2, 3, 3, 4, 4], "prod_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "sub_km_ix_by_edge_long": [1, 3, 5, 7, 9], "sub_km_ix_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "prod_km_ix_by_edge_long": [2, 4, 6, 8, 10], "prod_km_ix_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "ci_ix_long": [1], "ci_ix_bounds": [[1, 1], [2, 1], [2, 1], [2, 1], [2, 1]], "allostery_ix_long": [1, 2], "allostery_ix_bounds": [[1, 0], [1, 1], [2, 2], [3, 2], [3, 2]], "allostery_type": [1, 2], "allostery_mic": [3, 3], "phosphorylation_ix_long": [], "phosphorylation_ix_bounds": [[1, 0], [1, 0], [1, 0], [1, 0], [1, 0]], "phosphorylation_type": [], "phosphorylation_pme": [], "N_dgf_fixed": 0, "dgf_fixed": [], "ix_dgf_free": [1, 2, 3, 4], "ix_dgf_fixed": [], "priors_km": [[-0.6931471805599453, 0.0, 0.6931471805599453, -0.6931471805599453, 0.0, 0.6931471805599453, -0.6931471805599453, 0.6931471805599453, 0.0, 1.0986122886681098], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]], "priors_ki": [[0.0], [0.2]], "priors_kcat": [[-0.6931471805599453, 0.6931471805599453, 0.0, 0.6931471805599453, 0.0], [0.2, 0.2, 0.2, 0.2, 0.2]], "priors_dissociation_constant": [[-1.2039728043259361, -0.10536051565782628], [0.2, 0.2]], "priors_transfer_constant": [[0.0, 0.0], [0.2, 0.2]], "priors_kcat_pme": [[], []], "priors_drain_train": [[[]], [[]]], "priors_conc_enzyme_train": [[[0.0, 0.6931471805599453, 1.0986122886681098, 0.6931471805599453, 1.0986122886681098]], [[0.2, 0.2, 0.2, 0.2, 0.2]]], "priors_conc_unbalanced_train": [[[1.6094379124341003, -0.6931471805599453]], [[0.2, 0.2]]], "priors_conc_pme_train": [[[]], [[]]], "priors_psi_train": [[0.0], [2.0]], "prior_loc_dgf": [10.0, 2.0, 5.0, 0.0], "prior_cov_dgf": [[0.2, 0.0, 0.0, 0.0], [0.0, 0.2, 0.0, 0.0], [0.0, 0.0, 0.2, 0.0], [0.0, 0.0, 0.0, 0.2]], "N_experiment_train": 1, "N_flux_measurement_train": 2, "N_enzyme_measurement_train": 0, "N_conc_measurement_train": 2, "N_enzyme_knockout_train": 0, "N_pme_knockout_train": 0, "temperature_train": [298.15], "enzyme_knockout_train_long": [], "enzyme_knockout_train_bounds": [[1, 0]], "pme_knockout_train_long": [], "pme_knockout_train_bounds": [[1, 0]], "yconc_train": [0.323117, 3.02187], "sigma_yconc_train": [0.1, 0.1], "experiment_yconc_train": [1, 1], "mic_ix_yconc_train": [2, 3], "yflux_train": [0.421816, 2.11674], "sigma_yflux_train": [0.01, 0.01], "experiment_yflux_train": [1, 1], "reaction_yflux_train": [3, 4], "yenz_train": [], "sigma_yenz_train": [], "experiment_yenz_train": [], "enzyme_yenz_train": [], "likelihood": 1, "drain_small_conc_corrector": 1e-06, "reject_non_steady": 1, "penalize_non_steady": 0, "steady_state_threshold_abs": 1e-08, "steady_state_threshold_rel": 0.001, "steady_state_penalty_rel": 1e-08, "rel_tol_ode": 1e-09, "abs_tol_ode": 1e-09, "max_num_steps_ode": 1000000000, "rel_tol_alg": 1e-07, "abs_tol_alg": 1e-07, "max_num_steps_alg": 1000000, "conc_init": [[0.323117, 3.02187]]}
{"N_mic": 4, "N_pool": 0, "N_edge_sub": 5, "N_edge_prod": 5, "N_edge": 5, "N_unbalanced": 2, "N_independent": 2, "N_dependent": 0, "N_enzyme": 5, "N_er": 5, "N_phosphorylation": 0, "N_pme": 0, "N_competitive_inhibition": 1, "N_allostery": 2, "N_allosteric_enzyme": 2, "N_drain": 0, "N_km": 10, "N_sub_km": 5, "N_prod_km": 5, "S": [[-1, -1, -1, 0, 0], [1, 0, 0, -1, 0], [0, 1, 1, 0, -1], [0, 0, 0, 1, 1]], "left_nullspace_independent": [[]], "N_reaction": 4, "N_metabolite": 4, "independent_bal_ix": [2, 3], "dependent_bal_ix": [], "unbalanced_mic_ix": [1, 4], "ci_mic_ix": [4], "edge_type": [1, 1, 1, 1, 1], "edge_to_enzyme": [1, 2, 3, 4, 5], "edge_to_er": [1, 2, 3, 4, 5], "edge_to_tc": [0, 1, 2, 0, 0], "edge_to_drain": [0, 0, 0, 0, 0], "edge_to_reaction": [1, 2, 2, 3, 4], "water_stoichiometry": [0.0, 0.0, 0.0, 0.0, 0.0], "transported_charge": [0.0, 0.0, 0.0, 0.0, 0.0], "mic_to_met": [1, 2, 3, 4], "subunits": [1, 1, 1, 1, 1], "sub_by_edge_long": [1, 1, 1, 2, 3], "sub_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "prod_by_edge_long": [2, 3, 3, 4, 4], "prod_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "sub_km_ix_by_edge_long": [1, 3, 5, 7, 9], "sub_km_ix_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "prod_km_ix_by_edge_long": [2, 4, 6, 8, 10], "prod_km_ix_by_edge_bounds": [[1, 1], [2, 2], [3, 3], [4, 4], [5, 5]], "ci_ix_long": [1], "ci_ix_bounds": [[1, 1], [2, 1], [2, 1], [2, 1], [2, 1]], "allostery_ix_long": [1, 2], "allostery_ix_bounds": [[1, 0], [1, 1], [2, 2], [3, 2], [3, 2]], "allostery_type": [1, 2], "allostery_mic": [3, 3], "phosphorylation_ix_long": [], "phosphorylation_ix_bounds": [[1, 0], [1, 0], [1, 0], [1, 0], [1, 0]], "phosphorylation_type": [], "phosphorylation_pme": [], "N_dgf_fixed": 0, "dgf_fixed": [], "ix_dgf_free": [1, 2, 3, 4], "ix_dgf_fixed": [], "priors_km": [[-0.6931471805599453, 0.0, 0.6931471805599453, -0.6931471805599453, 0.0, 0.6931471805599453, -0.6931471805599453, 0.6931471805599453, 0.0, 1.0986122886681098], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]], "priors_ki": [[0.0], [0.2]], "priors_kcat": [[-0.6931471805599453, 0.6931471805599453, 0.0, 0.6931471805599453, 0.0], [0.2, 0.2, 0.2, 0.2, 0.2]], "priors_dissociation_constant": [[-1.2039728043259361, -0.10536051565782628], [0.2, 0.2]], "priors_transfer_constant": [[0.0, 0.0], [0.2, 0.2]], "priors_kcat_pme": [[], []], "priors_drain_train": [[[]], [[]]], "priors_conc_enzyme_train": [[[0.0, 0.6931471805599453, 1.0986122886681098, 0.6931471805599453, 1.0986122886681098]], [[0.2, 0.2, 0.2, 0.2, 0.2]]], "priors_conc_unbalanced_train": [[[1.6094379124341003, -0.6931471805599453]], [[0.2, 0.2]]], "priors_conc_pme_train": [[[]], [[]]], "priors_psi_train": [[0.0], [2.0]], "prior_loc_dgf": [10.0, 2.0, 5.0, 0.0], "prior_cov_dgf": [[0.2, 0.0, 0.0, 0.0], [0.0, 0.2, 0.0, 0.0], [0.0, 0.0, 0.2, 0.0], [0.0, 0.0, 0.0, 0.2]], "N_experiment_train": 1, "N_flux_measurement_train": 2, "N_enzyme_measurement_train": 0, "N_conc_measurement_train": 2, "N_enzyme_knockout_train": 0, "N_pme_knockout_train": 0, "temperature_train": [298.15], "enzyme_knockout_train_long": [], "enzyme_knockout_train_bounds": [[1, 0]], "pme_knockout_train_long": [], "pme_knockout_train_bounds": [[1, 0]], "yconc_train": [0.323117, 3.02187], "sigma_yconc_train": [0.1, 0.1], "experiment_yconc_train": [1, 1], "mic_ix_yconc_train": [2, 3], "yflux_train": [0.421816, 2.11674], "sigma_yflux_train": [0.01, 0.01], "experiment_yflux_train": [1, 1], "reaction_yflux_train": [3, 4], "yenz_train": [], "sigma_yenz_train": [], "experiment_yenz_train": [], "enzyme_yenz_train": [], "likelihood": 1, "drain_small_conc_corrector": 1e-06, "penalize_non_steady": 0, "steady_state_threshold_abs": 1e-08, "steady_state_threshold_rel": 0.001, "steady_state_penalty_abs": 1e-12, "rel_tol_ode": 1e-09, "abs_tol_ode": 1e-09, "timepoint": 10000.0, "max_num_steps_ode": 1000000000, "rel_tol_alg": 1e-07, "abs_tol_alg": 1e-07, "max_num_steps_alg": 1000000, "conc_init": [[0.323117, 3.02187]]}
File renamed without changes.
22 changes: 22 additions & 0 deletions maud/data/example_inputs/example_ode_2/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name = "test-ode"
kinetic_model_file = "kinetic_model.toml"
priors_file = "priors.toml"
experiments_file = "experiments.toml"
likelihood = true

[cmdstanpy_config]
iter_warmup = 200
iter_sampling = 100
chains = 4
refresh = 1
adapt_init_phase = 20
metric = "dense_e"
adapt_metric_window = 5

[ode_config]
rel_tol = 1e-12
abs_tol = 1e-12
timepoint = 1e4

[quench_config]
quench_timepoints = [1e-8, 1e-6, 1e-4, 1e-2, 1e0, 1e1]
189 changes: 189 additions & 0 deletions maud/data/example_inputs/example_ode_2/experiments.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,189 @@
[[experiment]]
id = "condition1"
is_train = true
is_test = false
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.447, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 3.76, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.417, error_scale = 0.042 },
{ target_type = "flux", reaction = "r4", value = 0.750, error_scale = 0.075 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.5 },
{ metabolite = "C", compartment = "c", value = 3.5 },
]

[[experiment]]
id = "condition2"
is_train = true
is_test = false
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.271, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 2.44, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.423, error_scale = 0.042 },
{ target_type = "flux", reaction = "r4", value = 1.31, error_scale = 0.13 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.3 },
{ metabolite = "C", compartment = "c", value = 2.5 },
]

[[experiment]]
id = "condition3"
is_train = true
is_test = false
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.798, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 4.69, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.161, error_scale = 0.016 },
{ target_type = "flux", reaction = "r4", value = 0.553, error_scale = 0.055 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.8 },
{ metabolite = "C", compartment = "c", value = 4.7 },
]

[[experiment]]
id = "condition4"
is_train = true
is_test = false
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.461, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 3.50, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.875, error_scale = 0.088 },
{ target_type = "flux", reaction = "r4", value = 0.736, error_scale = 0.074 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.5 },
{ metabolite = "C", compartment = "c", value = 3.5 },
]

[[experiment]]
id = "condition5"
is_train = true
is_test = false
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.252, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 12.0, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.467, error_scale = 0.047 },
{ target_type = "flux", reaction = "r4", value = 0.453, error_scale = 0.045 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.3 },
{ metabolite = "C", compartment = "c", value = 12 },
]

[[experiment]]
id = "condition6"
is_train = false
is_test = true
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.361, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 11.4, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.242, error_scale = 0.024 },
{ target_type = "flux", reaction = "r4", value = 0.721, error_scale = 0.072 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.4 },
{ metabolite = "C", compartment = "c", value = 11 },
]

[[experiment]]
id = "condition7"
is_train = false
is_test = true
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.323, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 3.02, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.421, error_scale = 0.042 },
{ target_type = "flux", reaction = "r4", value = 2.11, error_scale = 0.21 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.3 },
{ metabolite = "C", compartment = "c", value = 3 },
]

[[experiment]]
id = "condition8"
is_train = false
is_test = true
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 7.98, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 1.35, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.721, error_scale = 0.072 },
{ target_type = "flux", reaction = "r4", value = 2.04, error_scale = 0.20 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 8 },
{ metabolite = "C", compartment = "c", value = 1 },
]

[[experiment]]
id = "condition9"
is_train = false
is_test = true
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.377, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 7.8, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.462, error_scale = 0.046 },
{ target_type = "flux", reaction = "r4", value = 0.690, error_scale = 0.069 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 4 },
{ metabolite = "C", compartment = "c", value = 8 },
]

[[experiment]]
id = "condition10"
is_train = false
is_test = true
temperature = 298

measurements = [
{ target_type = "mic", metabolite = "B", compartment = "c", value = 0.447, error_scale = 0.1 },
{ target_type = "mic", metabolite = "C", compartment = "c", value = 3.76, error_scale = 0.1 },
{ target_type = "flux", reaction = "r3", value = 0.209, error_scale = 0.021 },
{ target_type = "flux", reaction = "r4", value = 0.375, error_scale = 0.038 },
{ target_type = "conserved_moiety", moiety_group = ["X1_c", "X2_c"], moiety_id = "X", value = 1, error_scale = 0.1}
]

initial_state = [
{ metabolite = "B", compartment = "c", value = 0.45 },
{ metabolite = "C", compartment = "c", value = 4 },
]
Loading

0 comments on commit 1a749d3

Please sign in to comment.