Location: Reproducibility of the computational model of induced pluripotent stem-cell derived cardiomyocytes @ 63554fa72b7c / Fig11 / fig11-test.py

Author:
nima <nafs080@aucklanduni.ac.nz>
Date:
2021-10-13 17:22:04+13:00
Desc:
Updated Documentation
Permanent Source URI:
https://models.cellml.org/workspace/702/rawfile/63554fa72b7ca4c4e2bab44f0a05f8334c95f4a1/Fig11/fig11-test.py

import scipy.io as sio
import numpy as np
import os

import matplotlib.pyplot as plt

import opencor as opencor


data = sio.loadmat('Param_Ik1')

xK1_spont= data['all_parameters_spont'][:,16:22]

all_params_XK1= data['all_parameters'][:,16:22]
variations= len(xK1_spont[:, 0])
vm_plot = np.arange(-150,101,1)
cell2plot=8000
if (cell2plot>variations):
        cell2plot = variations
else:
        pass


def ik1_IV (var, vm):
    Ki=148
    Ko = 5.4
    R = 8.314472
    T = 310.0
    F = 96.4853415
    E_K = R*T/F*np.log(Ko/Ki)
    g_k1 = var[:, 0]
    # ik1_list = {}
    ik1_list = np.zeros((251, 5380))
    for v in vm:
        # ik1_list[v] = []
        alpha = var[:,1]*np.exp((vm[v] +var[:,3])/var[:,2])
        beta = np.exp((vm[v] +var[:,5])/var[:,4])
        x_inf = alpha/(alpha+beta)
        ik1= g_k1*np.sqrt(Ko/5.4)*x_inf*(vm[v] -E_K)
        ik1_list[v] = ik1
        # ik1_list[v].append(ik1)

    return ik1_list



if __name__ == "__main__":
    ik1_plot = ik1_IV(xK1_spont, vm_plot)

    plt.plot(vm_plot, ik1_plot)
    plt.ylim(-50, 10)
    plt.xlim(-150,100)
    plt.show()