com.croftsoft.core.ai.neuro.imp
Class HhNeuronImp

java.lang.Object
  extended by com.croftsoft.core.ai.neuro.imp.HhNeuronImp
All Implemented Interfaces:
HhNeuron, HhNeuronMut, Neuron, Sim

public final class HhNeuronImp
extends Object
implements HhNeuronMut, Sim

Hodgkin-Huxley (HH) neuron. Voltages are in units of volts instead of millivolts. Area-based units are in meters squared instead of centimeters squared. For a good description of how the HH equations are derived, see Nelson, "Chapter 17: Electrophysiological Models", p285, in Koslow and Subramaniam, "Databasing the Brain: From Data to Knowledge (Neuroinformatics)", 2005. Other references used in implementing the HH equations include: Doi and Kumagai, "Nonlinear Dynamics of Small-Scale Biophysical Neural Networks", Chapter 10, p263, in Poznanski, "Biophysical Neural Networks: Foundations of Integrative Neuroscience", 2001. Feng, "Computational Neuroscience: A Comprehensive Approach", 2004, p4 and p30.

Since:
2008-08-08
Version:
$Id: HhNeuronImp.java,v 1.14 2008/09/07 01:48:31 croft Exp $
Author:
David Wallace Croft

Field Summary
static double H_INIT
           
static double LEAK_CONDUCTIVITY
           
static double LEAK_REVERSAL_POTENTIAL
           
static double LHOPITAL_THRESHOLD
           
static double M_INIT
           
static double MEMBRANE_AREA
          Area of sphere of 10 microns in diameter in meters squared
static double MEMBRANE_CAPACITIVITY
           
static double MEMBRANE_VOLTAGE_INIT
           
static double N_INIT
           
static double POTASSIUM_CONDUCTIVITY
           
static double POTASSIUM_REVERSAL_POTENTIAL
           
static double SODIUM_CONDUCTIVITY
           
static double SODIUM_REVERSAL_POTENTIAL
           
static double THRESHOLD
           
 
Constructor Summary
HhNeuronImp(Seq<Channel> channelSeq, DeltaClock deltaClock)
           
HhNeuronImp(Seq<Channel> channelSeq, DeltaClock deltaClock, double h, double leakConductivity, double leakReversalPotential, double m, double membraneArea, double membraneCapacitivity, double membraneVoltage, double n, double potassiumConductivity, double potassiumReversalPotential, double sodiumConductivity, double sodiumReversalPotential, double threshold)
           
 
Method Summary
 void access()
           
 double getH()
           
 double getLeakConductivity()
           
 double getM()
           
 double getMembraneArea()
           
 double getMembraneCapacitivity()
           
 double getMembraneVoltage()
           
 double getN()
           
 double getPotassiumConductivity()
           
 double getSodiumConductivity()
           
 double getThreshold()
           
 boolean isSpiking()
           
 void mutate()
           
 void setLeakConductivity(double leakConductivity)
           
 void setMembraneArea(double membraneArea)
           
 void setMembraneCapacitivity(double membraneCapacitivity)
           
 void setMembraneVoltage(double membraneVoltage)
           
 void setPotassiumConductivity(double potassiumConductivity)
           
 void setSodiumConductivity(double sodiumConductivity)
           
 void setThreshold(double threshold)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

H_INIT

public static final double H_INIT
See Also:
Constant Field Values

LEAK_CONDUCTIVITY

public static final double LEAK_CONDUCTIVITY
See Also:
Constant Field Values

LEAK_REVERSAL_POTENTIAL

public static final double LEAK_REVERSAL_POTENTIAL
See Also:
Constant Field Values

LHOPITAL_THRESHOLD

public static final double LHOPITAL_THRESHOLD
See Also:
Constant Field Values

M_INIT

public static final double M_INIT
See Also:
Constant Field Values

MEMBRANE_CAPACITIVITY

public static final double MEMBRANE_CAPACITIVITY
See Also:
Constant Field Values

MEMBRANE_VOLTAGE_INIT

public static final double MEMBRANE_VOLTAGE_INIT
See Also:
Constant Field Values

N_INIT

public static final double N_INIT
See Also:
Constant Field Values

POTASSIUM_CONDUCTIVITY

public static final double POTASSIUM_CONDUCTIVITY
See Also:
Constant Field Values

POTASSIUM_REVERSAL_POTENTIAL

public static final double POTASSIUM_REVERSAL_POTENTIAL
See Also:
Constant Field Values

SODIUM_CONDUCTIVITY

public static final double SODIUM_CONDUCTIVITY
See Also:
Constant Field Values

SODIUM_REVERSAL_POTENTIAL

public static final double SODIUM_REVERSAL_POTENTIAL
See Also:
Constant Field Values

THRESHOLD

public static final double THRESHOLD
See Also:
Constant Field Values

MEMBRANE_AREA

public static final double MEMBRANE_AREA
Area of sphere of 10 microns in diameter in meters squared

See Also:
Constant Field Values
Constructor Detail

HhNeuronImp

public HhNeuronImp(Seq<Channel> channelSeq,
                   DeltaClock deltaClock,
                   double h,
                   double leakConductivity,
                   double leakReversalPotential,
                   double m,
                   double membraneArea,
                   double membraneCapacitivity,
                   double membraneVoltage,
                   double n,
                   double potassiumConductivity,
                   double potassiumReversalPotential,
                   double sodiumConductivity,
                   double sodiumReversalPotential,
                   double threshold)

HhNeuronImp

public HhNeuronImp(Seq<Channel> channelSeq,
                   DeltaClock deltaClock)
Method Detail

getH

public double getH()
Specified by:
getH in interface HhNeuron

getLeakConductivity

public double getLeakConductivity()
Specified by:
getLeakConductivity in interface HhNeuron

getM

public double getM()
Specified by:
getM in interface HhNeuron

getMembraneArea

public double getMembraneArea()

getMembraneCapacitivity

public double getMembraneCapacitivity()
Specified by:
getMembraneCapacitivity in interface HhNeuron

getMembraneVoltage

public double getMembraneVoltage()
Specified by:
getMembraneVoltage in interface HhNeuron

getN

public double getN()
Specified by:
getN in interface HhNeuron

getPotassiumConductivity

public double getPotassiumConductivity()
Specified by:
getPotassiumConductivity in interface HhNeuron

getSodiumConductivity

public double getSodiumConductivity()
Specified by:
getSodiumConductivity in interface HhNeuron

getThreshold

public double getThreshold()
Specified by:
getThreshold in interface HhNeuron

isSpiking

public boolean isSpiking()
Specified by:
isSpiking in interface Neuron

setLeakConductivity

public void setLeakConductivity(double leakConductivity)
Specified by:
setLeakConductivity in interface HhNeuronMut

setMembraneArea

public void setMembraneArea(double membraneArea)
Specified by:
setMembraneArea in interface HhNeuronMut

setMembraneCapacitivity

public void setMembraneCapacitivity(double membraneCapacitivity)
Specified by:
setMembraneCapacitivity in interface HhNeuronMut

setMembraneVoltage

public void setMembraneVoltage(double membraneVoltage)
Specified by:
setMembraneVoltage in interface HhNeuronMut

setPotassiumConductivity

public void setPotassiumConductivity(double potassiumConductivity)
Specified by:
setPotassiumConductivity in interface HhNeuronMut

setSodiumConductivity

public void setSodiumConductivity(double sodiumConductivity)
Specified by:
setSodiumConductivity in interface HhNeuronMut

setThreshold

public void setThreshold(double threshold)
Specified by:
setThreshold in interface HhNeuronMut

access

public void access()
Specified by:
access in interface Sim

mutate

public void mutate()
Specified by:
mutate in interface Sim

CroftSoft Javadoc

CroftSoft Core Javadoc (2008-09-28 20:58:02)