- Author:
- Alan Garny <agarny@hellix.com>
- Date:
- 2021-06-11 09:51:39+12:00
- Desc:
- Removed CSV that can be regenerated.
Figure1.csv and Figure2.csv can be generated by running Figure1.sedml and Figure2.sedml, respectively, and then exporting the simulation results to CSV. So, no need for those CSV files to be tracked.
- Permanent Source URI:
- https://staging.physiomeproject.org/workspace/648/rawfile/4e662cb87f8569d10d40251b876798d0d92f68f7/Figure7.py
# To reproduce the data needed for Figure 3 in associated
# Physiome paper, execute this script in the Python console
# in OpenCOR. This can be done with the following commands
# at the prompt in the OpenCOR Python console:
# In [1]: cd path/to/folder_this_file_is_in
# In [2]: %run Figure7.py
import opencor as opencor
import numpy as np
# load the reference model
simulation = opencor.open_simulation("HumanSAN_Fabbri_Fantini_Wilders_Severi_2017.sedml")
data = simulation.data()
data.set_ending_point(2.5)
data.set_point_interval(0.001)
simulation.reset(True)
results = np.zeros((25, 2501))
for i in range(0,1):
simulation.run()
ds = simulation.results().data_store()
results[0] = ds.voi_and_variables()["environment/time"].values()
for i in range(0,25):
simulation.run()
simulation.clear_results()
simulation.run()
ds = simulation.results().data_store()
results[1] = ds.voi_and_variables()["Membrane/V"].values()
results[4] = ds.voi_and_variables()["i_NaK/i_NaK"].values()
results[7] = ds.voi_and_variables()["Membrane/i_tot"].values()
results[10] = ds.voi_and_variables()["i_Ks/i_Ks"].values()
results[13] = ds.voi_and_variables()["i_f/i_f"].values()
results[16] = ds.voi_and_variables()["i_KACh/i_KACh"].values()
results[19] = ds.voi_and_variables()["i_CaL/i_CaL"].values()
results[22] = ds.voi_and_variables()["Ca_intracellular_fluxes/j_up"].values()
simulation.reset(True)
for i in range(0,14):
data.constants()["Rate_modulation_experiments/ACh"] = 1e-5
simulation.run()
simulation.clear_results()
simulation.run()
ds = simulation.results().data_store()
results[2] = ds.voi_and_variables()["Membrane/V"].values()
results[5] = ds.voi_and_variables()["i_NaK/i_NaK"].values()
results[8] = ds.voi_and_variables()["Membrane/i_tot"].values()
results[11] = ds.voi_and_variables()["i_Ks/i_Ks"].values()
results[14] = ds.voi_and_variables()["i_f/i_f"].values()
results[17] = ds.voi_and_variables()["i_KACh/i_KACh"].values()
results[20] = ds.voi_and_variables()["i_CaL/i_CaL"].values()
results[23] = ds.voi_and_variables()["Ca_intracellular_fluxes/j_up"].values()
simulation.reset(True)
for i in range(0,13):
data.constants()["Rate_modulation_experiments/Iso_1_uM"] = 1
simulation.run()
simulation.clear_results()
simulation.run()
ds = simulation.results().data_store()
results[3] = ds.voi_and_variables()["Membrane/V"].values()
results[6] = ds.voi_and_variables()["i_NaK/i_NaK"].values()
results[9] = ds.voi_and_variables()["Membrane/i_tot"].values()
results[12] = ds.voi_and_variables()["i_Ks/i_Ks"].values()
results[15] = ds.voi_and_variables()["i_f/i_f"].values()
results[18] = ds.voi_and_variables()["i_KACh/i_KACh"].values()
results[21] = ds.voi_and_variables()["i_CaL/i_CaL"].values()
results[24] = ds.voi_and_variables()["Ca_intracellular_fluxes/j_up"].values()
np.savetxt("Fig07.csv", results[:25].T, fmt='%.4e', delimiter=',')