About the simulation
Below you will find an interactive version of the Goldman-Hodgkin-Katz equation used to model the resting potential across a cell membrane in dependence on the relative permeabilities as well as the inner and outer concentrations of different ion species (potassium, sodium, and chloride). I wrote this simulation for a lecture on basic neuroscience that I regularly give for 1st year biology students.
Interactive user interface
The interactive UI of the simulation allows you to choose different values for the relative permeabilities of sodium and chloride as well as the inner and outer concentrations of potassium, sodium, and chloride to explore how changing these variables influences the membrane potential.
Please note that the permeability of potassium cannot be changed, as the permeabilities for sodium and chloride ions are specified relative to that for potassium (P(K) = 1).
Presets
If you are too lazy to change the values yourself, the simulation allows you to choose between the following presets:
Resting membrane potential of a cephalopod neuron
Peak membrane potential of a cephalopod neuron during spiking
Resting membrane potential of a mammalian neuron
Peak membrane potential of a mammalian neuron during spiking
Output
The output panel of the simulation provides both, graphical output in form of an oscillogram, showing the current membrane potential in mV, and text output of the calculated membrane potential as well as the Nernst potentials for each ion species at the chosen concentrations.
Please note that access to the Shiny server is limited to 25 hours per month. If the simulation does not display, please run it locally on your computer using R and following the instructions below.
Running the simulation locally in R
Make sure that you have R and the following R packages installed on your computer and loaded in your R session:
shiny, shinyWidgets, shinyjs, ggplot2, jpeg
You can install and load the R packages from the R console using the following lines of code:
# Install packages from the R console via:
install.packages("shiny")
install.packages("shinyWidgets")
install.packages("shinyjs")
install.packages("ggplot2")
install.packages("jpeg")
# Load packages from the R console via:
library(shiny)
library(shinyWidgets)
library(shinyjs)
library(ggplot2)
library(jpeg)
Once you have installed and loaded all the packages, you can start the app from the R console using:
runGitHub("Goldman-Hodgkin-Katz-Equation", "DaSchmidtke")
For a German version run:
runGitHub("Goldman-Hodgkin-Katz-Gleichung", "DaSchmidtke")
Downloading the source code from GitHub
Alternatively, You can download the simulation/Shiny app directly from my GitHub page. There is one repository for the English and one for the German version of the simulation. The German repository also contains a document with some review questions from the lecture for which I programmed the app.