NeuroLab
SimpleSynapse Class Reference

A synapse. More...

Inheritance diagram for SimpleSynapse:

Public Member Functions

 SimpleSynapse (Time *time, StochasticEventGenerator *e, double weight, double revPot, double peak, double tau)
 Construct. More...
 
 SimpleSynapse (Time *time, StochasticVariable *s, double weight, double revPot, double tau)
 Construct. More...
 
virtual void prepareNextState ()
 Calculate next state.
 
virtual void proceedToNextState ()
 Apply nex time step.
 
virtual double calculateNextValue ()
 Calculate next value.
 
virtual double calculateCurrentValue ()
 Calculate current value.
 
 ~SimpleSynapse ()
 Destruct.
 
virtual void setParameter (const string &name, const string &value)
 Set parameter. More...
 
virtual string getParameter (const string &name) const
 Get parameter. More...
 
- Public Member Functions inherited from Synapse
 Synapse (Time *time, StochasticEventGenerator *e, double weight, double revPot, const string &name="", const string &type="Synapse")
 Construct. More...
 
 ~Synapse ()
 Destruct.
 
- Public Member Functions inherited from StochasticFunction
 StochasticFunction (class Time *time, const string &name="", const string &type="Stochastic Function")
 Create.
 
double operator() (double x)
 Returns the value at the current time step. More...
 
double d (double x)
 Returns the increment at the current time step. More...
 
virtual double getCurrentValue (double x)
 Returns the value at the next time step. More...
 
virtual double getNextValue (double x)
 Returns the value at the next time step. More...
 
virtual double getIncrement (double xt)
 Returns the increment at the current time step. More...
 
- Public Member Functions inherited from StochasticProcess
 StochasticProcess (class Time *time, const string &name="", const string &type="Stochastic")
 Create.
 
virtual ~StochasticProcess ()
 Destroy.
 
bool isNextStatePrepared ()
 Whether.
 
virtual double getIncrement ()
 Returns the increment. More...
 
virtual double getCurrentValue ()
 Returns the value of the process. More...
 
virtual double getNextValue ()
 Returns the next value of the process. More...
 
virtual void setNextValue (double d)
 Set the next value of the process. More...
 
virtual void setCurrentValue (double d)
 Set the current value of the process. More...
 
void setDescription (string s)
 Set stochastic description.
 
virtual void init ()
 Initialise time-dependent values.
 
string getDescription ()
 Get the name. More...
 
- Public Member Functions inherited from Parametric
string getType () const
 Type of object.
 
string getName () const
 Name of object.
 
void setName (const string &name)
 Name of object.
 
string getConfiguration () const
 Returns the configuration of the object. More...
 
string getAllParameters () const
 String with all parameter settings.
 
void addParameter (const string &name)
 Add a parameter. More...
 
void rmParameter (const string &name)
 Remove a parameter. More...
 
- Public Member Functions inherited from TimeDependent
 TimeDependent (class Time *time)
 Construct. More...
 
virtual class TimegetTime () const
 Return pointer to the time object.
 
- Public Member Functions inherited from Physical
 Physical ()
 Construct.
 
 Physical (const Physical &)
 Copy.
 
 Physical (string name)
 Construct.
 
 Physical (string name, string unitPrefix, string unitSymbol)
 Construct.
 
 Physical (string name, Unit unit)
 Construct.
 
virtual string getPhysicalDescription ()
 Returns the physical description. More...
 
virtual string getUnitName ()
 Returns the unit name.
 
virtual string getUnitSymbol ()
 Returns the unit name.
 
virtual void setPhysicalDescription (string name)
 Set the name. Same as setDescription(). More...
 
virtual void setUnit (Unit u)
 Set the unit.
 
virtual void setUnitPrefix (int n)
 Set unit prefix. More...
 
virtual Unit getUnit () const
 Retrieve the unit.
 

Protected Attributes

DifferentialEquation differential
 Differential equation. More...
 
StochasticVariablestochastic
 Noise source. More...
 
- Protected Attributes inherited from StochasticProcess
double stochCurrentValue
 the current value
 
double stochNextValue
 the next value (direct future)
 
bool stochNextStateIsPrepared
 whether prepareNextState() was successful
 
string stochDescription
 the name of the quantity
 

Additional Inherited Members

- Protected Member Functions inherited from Parametric
 Parametric (const string &name, const string &type)
 Create object of type and name.
 
virtual ~Parametric ()
 Destroy object.
 

Detailed Description

A synapse.

This class implements a synapse which is characterized by a differential equation. Main feature is the transformation of digital signals from an Event object (usually a neuron) to analog values of a StochasticProcess object, which then are part of the membrane equation of another neuron. It also possible to use a noise source (such as a Wiener process) as input. This depends on the constructor you use. Since a synapse usually connects from one single neuron to another single neuron, this class is set to be active as default, i.e. is forwarded automatically and you don't have to use proceedToNextState() and prepareNextState() inside your program.

Constructor & Destructor Documentation

SimpleSynapse::SimpleSynapse ( Time time,
StochasticEventGenerator e,
double  weight,
double  revPot,
double  peak,
double  tau 
)

Construct.

Will construct a synapse, which will set its value to the peak conductance just after the pre-synaptic spike, and decay the value according to the given time constant. At the next pre-synaptic spike the value will be set to the peak conductance again.

Parameters
timepointer to main time object
eThe object providing the events (spikes), i.e. the pre-synaptic neuron.
weightWeight of the synapse.
revPotReversal potential of synapse.
peakPeak conductance of synapse.
tauDecay time constant.
SimpleSynapse::SimpleSynapse ( Time time,
StochasticVariable s,
double  weight,
double  revPot,
double  tau 
)

Construct.

Will construct a synapse, which will set its value to the peak conductance just after the pre-synaptic spike, and decay the value according to the given time constant. At the next pre-synaptic spike the value will be set to the peak conductance again.

Parameters
timepointer to main time object
sThe object providing the stimulus.
weightWeight of the synapse.
revPotReversal potential of synapse.
tauDecay time constant.

Member Function Documentation

virtual string SimpleSynapse::getParameter ( const string &  name) const
virtual

Get parameter.

In a derived class, override this to handle every parameter you implement. If a parameter is described using multiple strings separated by space, this indicates a parameter of a parameter.

Parameters
namename of parameter

Reimplemented from Synapse.

virtual void SimpleSynapse::setParameter ( const string &  name,
const string &  value 
)
virtual

Set parameter.

Sets the value of a parameter using strings. If a parameter is described using multiple strings separated by space, this indicates a parameter of a parameter.

Parameters
namename of parameter
valuevalue of parameter (used with operator<<)

Reimplemented from Synapse.

Member Data Documentation

DifferentialEquation SimpleSynapse::differential
protected

Differential equation.

The rate equation.

StochasticVariable* SimpleSynapse::stochastic
protected

Noise source.

only used when the noise constructor was used