- Author:
- nima <nafs080@aucklanduni.ac.nz>
- Date:
- 2021-09-27 12:28:40+13:00
- Desc:
- Modular "act"
- Permanent Source URI:
- https://models.cellml.org/workspace/702/rawfile/f81bb62d74dcd126e659316afbec97799c01edd3/Fig7/fig7.py
import os
import matplotlib
matplotlib.use('agg')
import matplotlib.pyplot as plt
import numpy as np
import opencor as opencor
# To reproduce Figure 7 in the associated Physiome paper,
# execute this script from the command line:
#
# cd [PathToThisFile]
# [PathToOpenCOR]/pythonshell fig7.py
root = "C:/Nima/ABI/Physiome Journal/pluripotent stem cell/src/cellml/I_Ks/"
def load_sedml(filename):
return opencor.open_simulation(os.path.join(root, filename))
def get_data(filename):
data = filename.data()
data.set_ending_point(100)
data.set_point_interval(1)
return data
def run_sim(data, filename, var1):
alpha_list = []
beta_list = []
list1 = []
voltage = np.arange(-100, 101, 1)
for v in voltage:
file = load_sedml(filename)
file.reset(True)
file.clear_results()
data.constants()["main/v"] = v
file.run()
ds = file.results().data_store()
alpha_list.append(ds.voi_and_variables()["main/alpha"].values())
beta_list.append(ds.voi_and_variables()["main/beta"].values()[-1])
list1.append(ds.voi_and_variables()["main/%s" % var1].values()[-1])
return list1
if __name__ == '__main__':
act_inf_ma_file = "act_inf_Ma_IKs.sedml"
act_inf_Mawei_patint_file = "act_inf_Mawei_patint.sedml"
act_inf_Mawei_icell_file = "act_inf_Mawei_icell.sedml"
act_inf_baseline_IKs_file = "act_inf_baseline_IKs.sedml"
act_inf_ma = load_sedml(act_inf_ma_file)
act_inf_Mawei_patint = load_sedml(act_inf_Mawei_patint_file)
act_inf_Mawei_icell = load_sedml(act_inf_Mawei_icell_file)
act_inf_baseline_IKs = load_sedml(act_inf_baseline_IKs_file)
data1 = get_data(act_inf_ma)
data2 = get_data(act_inf_Mawei_patint)
data3 = get_data(act_inf_Mawei_icell)
data4 = get_data(act_inf_baseline_IKs)
#
act_inf_ma_list = run_sim(data1, act_inf_ma_file, 'act_inf_ma')
act_inf_mawei_p_list = run_sim(data2, act_inf_Mawei_patint_file, 'act_inf_mawei')
act_inf_mawei_i_list = run_sim(data3, act_inf_Mawei_icell_file, 'act_inf_mawei')
act_inf_baseline_IKs_list = run_sim(data4, act_inf_baseline_IKs_file, 'act_inf_baseline')
tau_act_inf_ma_list = run_sim(data1, act_inf_ma_file, 'tau_act_ma')
tau_act_inf_mawei_p_list = run_sim(data2, act_inf_Mawei_patint_file, 'tau_act_mawei')
tau_act_inf_mawei_i_list = run_sim(data3, act_inf_Mawei_icell_file, 'tau_act_mawei')
tau_act_inf_baseline_IKs_list = run_sim(data4, act_inf_baseline_IKs_file, 'tau_act_baseline')
voltage = np.arange(-100, 101, 1)
plt.figure(figsize= (14,10))
plt.subplot(1,2,1)
plt.plot(voltage, act_inf_ma_list, color='blue', linewidth= 4)
plt.plot(voltage, act_inf_mawei_p_list, color='orange', linewidth=4)
plt.plot(voltage, act_inf_mawei_i_list, color='purple', linewidth=4)
plt.plot(voltage, act_inf_baseline_IKs_list, color='black', linewidth= 4)
plt.xlabel('Voltage (mV)', fontsize= 14)
plt.ylabel('Normalized I$_{Ks}$', fontsize= 14)
plt.xlim(-100,100,50)
plt.ylim(0,1,0.5)
plt.subplot(1,2,2)
plt.plot(voltage, tau_act_inf_ma_list, color='blue', linewidth= 4)
plt.plot(voltage, tau_act_inf_mawei_p_list, color='orange', linewidth=4)
plt.plot(voltage, tau_act_inf_mawei_i_list, color='purple', linewidth=4)
plt.plot(voltage, tau_act_inf_baseline_IKs_list, color='black', linewidth= 4)
plt.xlabel('Voltage (mV)', fontsize= 14)
plt.ylabel('Tau$_{act},I_{Ks}$ (ms)', fontsize= 14)
plt.xlim(-100,100,50)
plt.ylim(0,1000,500)
plt.show()