Home
Joel Keizer
Contributors
Table of Contents
Teaching Materials
Known Errors
Order Online
Editors
Links
Most of the MATLAB computer codes were provided by Dr. Carol Lucas in Biomedical Engineering at the University of North Carolina at Chapel Hill, and are available as a single ZIP file, or by chapter. The Goldbeter model codes in Chapter 9, however, were provided by Maxime Dechesne at Montefiore Institute, University of Liège.

Chapter 1 - Dynamic Phenomena in Cell

F1_10.m - Demonstrates different solutions of equation 1.13 as demonstrated in Figure 1.10. The operator can pick parameters [tau ninf noinitial h time] or use defaults be just hitting return at prompt. In all cases, plots are given for a simple euler simulation, the exact solution, and a Matlab ODE call, provided through the subroutine “nofun”.
nofun.m -Called by F1_10. State Space function for Matlab ODE call: ndot=(noinf-n)/tau;

Chapter 2 - Voltage Gated Ionic Currents

AppendixA_Dem.m - Demonstrates the idea of two equation linear state-space equations of form: xdot=Ax+I. Systems with different eigenvalues are show and simulated. Phase plane with nullclines are plotted. Needs “odenullcline” and “clode2”
odenullcline.m - The computing subroutine for AppendixA_Dem. Calls “clode2” for Matlab ODE
clode2.m - Called by odenullcline to simulate system:
F2_6.m - Plots graphs shown in Figure 2.6. The operator can pick parameters [Voa Soa Voi Soi phi].or use defaults by just hitting return at prompt.
F2_7_VoltageClamp.m - Creates the voltage clamp studies shown in Figure 2.7. Calls “vcfun” to do the simulation with Matlab ODE.
vcfun.m - Called by F2_7 to simulate voltage clamp study.
GMorris_Lecar_Init.m - This model was run using globals for the many parameters. The init file starts everything out with the values shown in Table 2.4, plus I=150, Vinit=-60 and Winit=.01. See problem 2.8. The operator can change any variable in the command window.
GMorris_Lecar.m - This program can be used to generate pictures as shown in Figure 2.9 A, B and C. Though designed for one set of parameters, by opting “not to erase”, the figures will be superimposed. The program calls: “ Gmlfun” to simulate system, “GMorris_Lecar_Jac” to plot the phase plane and nullclines, which will be shown in an individual plot (Figure 3) with values for the intersections and eigenvalues, and vector_field to draw little two second arrows at start of simulation.
GMorris_Lecar_Jac.m - Subroutine designed to plot nullclines of system and find intersection points and eigenvalues. Solution is done in symbolic language – which can be slow. Calls “Intersect” to find intersection points.
Intersect.m - Subroutine to find the intersection point of the nullclines. . Solution is done in symbolic language – which at times has difficulty with very complicated equations such as these tend to be. Particularly has trouble between I=270 and 290 on this example.
GMorris_Lecar_Bif.m - Calculates bifurcation plot shown in Fig 2.9 D by brute force. Calls “Intersect” to get the steady state solution if it were to exist. Calls “Gmlfun” to find out what maximum and minimum values are.
Gmlfun.m - Called by programs listed above whenever the Matlab ODE simulation is to be performed.
vector_field.m - plots initial 2 seconds for a simulation.
GMorris_Lecar_fW.m - Computes graph like that shown in Figure 2.10A. The operator can enter a separate “fixed w value.” The default is w=.35 as demonstrated in the figure. Other parameters are set as above, e.g., set I=150 in the command window to get the figure shown. Go back to GMorris_Lecar to get Figure 2.10B (by changing phi from .04 to .004).
F2_9.m - Just a demo script to show how one might use the above to get figures like 2.9
F2_11.m - Just a demo script to show how one might use the above to get figures like 2.11
GHodgkin_Huxley_Init.m - Gets the parameters for the Hodgkin_Huxley Model in the system
GHodgkin_Huxley.m - Runs the model based on the parameters in the system. Operator has the option of erasing graphs or letting them build up. Calls “Ghhfun” to do simulation.
Ghhfun.m - Simulation program for Hodgkin_Huxley
F2_13.m - Just a demo script to show how one might use the above to get figures like 2.13
GFitz_Nag_Init.m - Gets starting parameters for the FitzHugh-Nagumo model, starts with gamf=5, which is overdamped. Try gamf=2 for underdamped, and gamf=1 for oscillatory.
GFitz_Nag.m - Runs the model based on global parameters in the system. Operator has the option of erasing graphs or letting them build up. Calls “GFNfun” to do the simulation. Calls GFitz_Jac to get nullclines and eigenvalues (which calls “Intersect” – though not necessary since intersection is at origin with no applied current)
GFitz_Nag_Jac.m - Called by GFitz_Nag_Init to do phase plane and nullcline stuff.
GFNfun.m - Simulation program for FitzHugh-Nagumo model

Chapter 3 - Transporters and Pumps

P3_9.m - Simulates the 4 state glucose model in Figure 3.1 for the Eadie-Hofstee plots. Does it both with analytical solutions based on linear system and with simulations. Calls “glucfun” to do simulations
glucfun.m - Simulation program for exercise 3.9 or 4 state glucose model
P3_10.m - Shows using analytic method the 11 directed diagrams needed for this problem.

Chapter 4 - Reduction of Scale

F4_3.m - Demos the concepts in early part of chapter based on L-type calcium channels. Calls LCfullfun to compute second order model as well as the first order “fast” and “slow” modifications. Calls Lctsfun to demonstrate time scaling, ie, 1 dimensionless unit for 200 seconds of real time. A plot of calcium current is shown to compare to figure 4.1. Values come from E 4_3.
LCfullfun.m - Matlab ODE simulation for 3 models (full, fast, slow) for L-Type channels.
LCtsfun.m - Matlab ODE Simulation for time scaled L-Type channels
F4_6.m - Demonstrates the concept of figure 4.6 using a range of glucose values – goes through whole range of states. Each iteration calls GlucInsModel_Init to initiate the variables and GlucInsModel to run the model.
GlucInsModel_Init.m - Routine that initializes all the variables for the glucose model in figure 4.5
GlucInsModel.m - This is the model for F4.5. It calls three functions and compares results: glucfun4 is full model, glucfun2 is reduced two equation model, glucfunnorm is the normalized model.
glucfun4.m - Matlab ODE simulation of the full 4 equation model of glucose-dependent insulin secretion
glucfun2.m - Matlab ODE simulation of the reduced 2 equation model of glucose-dependent insulin secretion
glucfunnorm.m - Matlab ODE simulation of the normalized version of glucfun2
F4_11.m - Demonstration of figure 4.11
P4_1.m - Problem 4.1. Shows analytic and simulated solutions. Calls P4_1fun for ODE
P4_1fun.m - ODE for system in P 4_1
P4_5.m - Simulation for Problem 4.5. Calls LcfullE5fun for ODE
LcfullE5fun.m - ODE function for P4_5

Chapter 5 - Whole Cell Models

Fanal.m - Function called to pick out beats (frequency analysis) from vector x. Uses simple zero crossing technique. Returned variables are: beat = length of time for the beat, tb=time selected for start of beat, xvalue at that time
F5_6A.m - Demonstrates Figure 5.6A for full model with jumps in C. Call subroutine klfun.
klfun.m - Full Keizer-Levine Model. Called by F5_6A and F5_6A_Full_Reduced. Allows a jump in Calcium. cfinal is the height of the step jump. tjump is the time of the jump.
F5_6A_Full_Reduced.m - Comparison of full Keizer-Levine Model and reduced model for Figure 5.6A. Calls klfun and klfunpo.
klfunpo.m - Reduced Keizer-Levine Model. Comparable to klfun with jump capabilities.
F5_6B.m - Does the steady-state analysis of Keizer-Levine (reduced) for a range of Ca valules.
F5_7A.m - Generates nullclines for three different values of CT – as shown in Figure 5.7A. Calls on klclosejac to produce graphs – one at a time and then the composite. Calls klclose_anal to do simulations.
klclosejac.m - Subroutine to get nullclines (nullC, nullw), crossing points(Cs,Ws) and eigenvalues (lams) of system and plots, based on the a passed CT value.
klclose_anal.m - Subroutine called by F5_7A to demonstrate time and phase plots (with nullclines from klclosejac) for a selected set of initial values of Ca, w, and CT. Calls klclosefun to do the simulation
klclosefun.m - ODE function for closed cell Keizer-Levine model
F5_7B.m - Generates Figure 5.7B
F5_8.m - Generates Figure 5.8 for open-cell Keizer-Levine model. Calls ODE klopenfun_red
klopenfun_red.m - ODE for reduced open-cell Keizer-Levine. Enables a jump in jin between starting and ending times.
F5_9.m - Generates Figure 5.9 by simulating the reduced open-cell Keizer Levine model and superimposing the phase plot on the bifurcation diagram (Figure 5.7B) of the closed-cell model. Calls klopenfun_red.
F5_12.m - Generates plots as seen in Figure 5.12. The process starts by simulating the closed-cell gonadotroph model over a range of [IP3] values from .6 to 1.6, focusing with focus around the bifurcation points. The program calls the ODE lrclosefun and a subroutine lrclose_intersect to calculate the intersection of the nullclines.
lrclosefun.m - ODE for closed-cell gonadotroph model. Passes L, Vserca and [IP3]
lrclose_intersect.m - calculated the intersection of the nullclines for closed_cell gonadotroph model
F5_13.m - Generates Figure 5.3 by calling the ODE lrclosefun numerous times.
F5_14.m - Generates figures applicable to Figures 5.14 and 5.15. Calls ODE lropenfun
lropenfun.m - ODE for open-cell gonadotroph model as shown in Figure 5.14, i.e., Jin is 1200 for first 40 seconds then goes to 0.
F5_16.m - Demonstrates Figure 5.16 – full gonadotroph model: Morris-Lecar + Li-Rinzel model, calls ODE lrpmlfun
lrpmlfun.m - ODE for F5_16
F5_19.m - Demonstration for Figure 5.19 and part of 5.20. Chay-Keizer model. ODE is mlbetafun
mlbetafun.m - ODE for F5_19.

Chapter 6 - Intercellular Communication

F6_2_3.m - Morris-Lecar neurons interacting. Figures 2 and 3 for gap junctions (calls ode ‘mlgapfun’). Also calls ‘fanal’ to get beat durations.
mlgapfun.m - Morris-Lecar model of two cells interacting between gap junctions. Gap strength – gc – is a passed variable.
F6_6_7.m - Morris-Lecar neurons interacting. Figures 6 and 7 for synaptic transmission (calls ode ‘mlsynfun’). Also calls ‘fanal’ to get beat durations.
mlsynfun.m - Morris-Lecar model of two cells interacting through synaptic transmission. Rate constants and when they go into effect (switch) are passed parameters.
F6_9.m - Coincidence detection for excitatory inputs at different offset times. Calls ode ‘mlcdfun’ with time delays between -40 and +40 milliseconds.
mlcdfun.m - Morris-Lecar model for two excitatory receptors acting at time offsets passed to the routine.
F6_10.m - Demonstration program for Figure 6.10. Voltages are shown for both neurons 1 and 2 (target neuron) over delalys between -40 and +40 milliseconds. Calls the ODE mlds2cellfun
mlds2cellfun.m - ODE for network shown in Figiure 6.8C
F6_11.m - Figure 6_11, Steady State determination for populations at different a weights.
F6_12_13.m - Large scale population simulations from Figures 12 and 13. Calls ‘netcall’ which calls ‘netfun’ for ode and adds nullclines and phase plane plots.
netcall.m - Calls ‘netfun’ for ode simulation, passing different inputs to the excitatory population.
netfun.m - ODE for Large population model, input to excitatory model is a passed variable.
P6_1Call.m - Calls subroutines for Problem 6_1. Calls P6_1 for control and P6_1fun for ODE.
P6_1.m - General Call for parameters for Problem 6_1. Calls ODE P6_1fun.
P6_1fun.m - ODE for Problem 6_1.
P6_2Call.m - Calls subroutines for Problem 6_2. Calls P6_2 for control and P6_2fun for ODE.
P6_2.m - General Call for parameters for Problem 6_2. Calls ODE P6_2fun.
P6_2fun.m - ODE for Problem 6_2.
P6_3Call.m - Calls subroutines for Problem 6_3. Calls P6_3 for control and P6_3fun for ODE.
P6_3Call.m - General Call for parameters for Problem 6_3. Calls ODE P6_3fun.
P6_3fun.m - ODE for Problem 6_3.

Chapter 9 - Biochemical Oscillations

Goldbeter5_fct.m - The five-variable Goldbeter circadian rhythm oscillator.
Goldbeter5.m - Script for running Goldbeter5_fct.
Contributed by Maxime Dechesne at Montefiore Institute, University of Liège.

Goldbeter5_sim.m - Simulink version of the five-variable Goldbeter circadian rhythm oscillator. This version includes a delay in the feedback loop, that allows to have the bifurcation for a lower value of the parameter Vs (this idea comes from a paper of D. Angeli and E. Sontag). Under that value of the parameter, no delay can cause oscillations in the system.
Goldbeter5_simscript.m - Script for running Goldbeter5_sim.
Contributed by Maxime Dechesne at Montefiore Institute, University of Liège.

Contact Us