A mathematical model of evoked calcium dynamics in astrocytes (Handy et al 2017)

 Download zip file 
Help downloading and running models
" ...Here we present a qualitative analysis of a recent mathematical model of astrocyte calcium responses. We show how the major response types are generated in the model as a result of the underlying bifurcation structure. By varying key channel parameters, mimicking blockers used by experimentalists, we manipulate this underlying bifurcation structure and predict how the distributions of responses can change. We find that store-operated calcium channels, plasma membrane bound channels with little activity during calcium transients, have a surprisingly strong effect, underscoring the importance of considering these channels in both experiments and mathematical settings. ..."
1 . Handy G, Taheri M, White JA, Borisyuk A (2017) Mathematical investigation of IP3-dependent calcium dynamics in astrocytes. J Comput Neurosci 42:257-273 [PubMed]
Model Information (Click on a link to find other models with that property)
Model Type: Glia;
Brain Region(s)/Organism:
Cell Type(s):
Channel(s): Ca pump; I_SERCA; I Calcium;
Gap Junctions:
Receptor(s): IP3;
Simulation Environment: MATLAB; XPP;
Model Concept(s): Calcium dynamics; Oscillations; Bifurcation;
Implementer(s): Handy, Gregory [handy at math.utah.edu]; Taheri, Marsa ;
Search NeuronDB for information about:  IP3; I Calcium; I_SERCA; Ca pump;
function [IP3Amount, IP3PkLoc, IP3Amp, IP3TrueDur]=IP3Dyn_model_TH(x,t)
% Copyright: Marsa Taheri and Gregory Handy, 2016
% This code was used to simulate the mathematical model of Astrocyte 
% IP3-dependent Ca responses in 2 papers submitted in Nov 2016.
%Given the IP3 trace and corresponding time, it finds several IP3
%characteristics: total amount (area under curve), peak time, peak
%amplitude, and total IP3 duration (from start to where IP3 reached <0.005).
%Multiple things will need to change in this function if the baseline [IP3] 
%is not set at 0.

[IP3Amp, IP3PkLocTemp] = findpeaks(x);
IP3PkLoc = t(IP3PkLocTemp);

IP3AmountTemp = cumsum(x);
IP3Amount = IP3AmountTemp(end)/length(x)*t(end); %This is fine for IP3 amount
%because the baseline is 0. If that changes, then may need to change this (like Ca).
%IP3Amount = trapz(x)/length(x)*t(end);

if isempty(IP3PkLocTemp)==0
    t_end = t(IP3PkLocTemp + find(x(IP3PkLocTemp:end)<0.005, 1,'first') - 1);
    t_end =[];

t_start = t(find(x>0, 1,'first')); %1st point where IP3>0
if isempty(t_end)==0 %if there is an end to the IP3 dynamics
    IP3TrueDur = t_end - t_start;
    IP3TrueDur = t(end); %assume the IP3 is for the duration of the entire
    %simulation (including the time before any IP3 was applied!)


Loading data, please wait...