Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   Related Pages  

punnets_private::tneuron_ext_const< debug > Class Template Reference
[Neurons]

#include <dneuron.h>

Inheritance diagram for punnets_private::tneuron_ext_const< debug >:

punnets_private::tneuron< debug > punnets_common::tneuron_base punnets_common::taction List of all members.

Public Methods

 tneuron_ext_const (std::string iname="", ntime_t isig_hv_period=def_sig_hv_period, ntime_t ithr_hv_period=def_thr_hv_period, real imin_threshold=def_min_threshold, real imax_threshold=def_max_threshold, real iext_input=def_ext_input)
virtual real getCurrentSigLevel (ntime_t current_time)
 Calculates the current signal level.

real getExtInput ()
 Get the weight of the external input.

virtual real getCurrentExtInput (ntime_t)
 Get the weight of the external input for logging.

void setExtInput (tscheduler &scheduler, ntime_t current_time, real val)
 Change the weight of the external input at the specified time.

real getConvergeLevel ()
 Get the converge level (resting potential of this neuron).

void setConvergeLevel (tscheduler &scheduler, ntime_t current_time, real val)
virtual const char * getClassName () const
 Get the class name.


Protected Methods

void simulateElapse (ntime_t current_time)
virtual void scheduleFire (tscheduler &scheduler, ntime_t current_time, bool resched=true)
 Schedule the next firing.


Protected Attributes

real sig_converge_level
 The converge level (resting potential) of this neuron.


Detailed Description

template<bool debug>
class punnets_private::tneuron_ext_const< debug >

This class extends the tneuron class with a constant external input.

Definition at line 539 of file dneuron.h.


Constructor & Destructor Documentation

template<bool debug>
punnets_private::tneuron_ext_const< debug >::tneuron_ext_const std::string    iname = "",
ntime_t    isig_hv_period = def_sig_hv_period,
ntime_t    ithr_hv_period = def_thr_hv_period,
real    imin_threshold = def_min_threshold,
real    imax_threshold = def_max_threshold,
real    iext_input = def_ext_input
[inline]
 

Construct a neuron with the specified name, signal half-value period, threshold half-value period, minimum threshold, maximum threshold, and the weight of the external input.

Definition at line 562 of file dneuron.h.

References punnets_common::ntime_t, and punnets_common::real.

00568         : tneuron<debug>( iname, isig_hv_period, ithr_hv_period, imin_threshold, imax_threshold ),
00569           ext_input(iext_input), sig_converge_level(iext_input / coeff_sigdecay) { }


Member Function Documentation

template<bool debug>
void punnets_private::tneuron_ext_const< debug >::setConvergeLevel tscheduler &    scheduler,
ntime_t    current_time,
real    val
[inline]
 

Change the weight of the external input at the specified time, so that the converge level (resting potential of this neuron) becomes the specified value..

Definition at line 587 of file dneuron.h.

References punnets_common::ntime_t, and punnets_common::real.

00588         { simulateElapse( current_time ); sig_converge_level = val; ext_input = sig_converge_level * coeff_sigdecay; scheduleFire( scheduler, current_time ); }

template<bool debug>
void punnets_private::tneuron_ext_const< debug >::simulateElapse ntime_t    current_time [inline, protected]
 

This function simulates time elapse up to the specified time. Note that this function is non-virtual to speed-up the simulation.

Reimplemented from punnets_private::tneuron< debug >.

Definition at line 548 of file dneuron.h.

References punnets_common::ntime_t.

00549     {
00550         sig_level = sig_converge_level +
00551                     ( ( sig_level - sig_converge_level ) 
00552                       * exp( (current_time - last_simulate) * coeff_sigdecay ) );
00553         last_simulate = current_time;
00554     }


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 15:42:29 2003 for Punnets by doxygen1.2.18