Auditory Relacs Plugins  0.9.8
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ReceptorModel Class Reference

#include <receptormodel.h>

Inheritance diagram for ReceptorModel:
Inheritance graph
[legend]
Collaboration diagram for ReceptorModel:
Collaboration graph
[legend]

Public Member Functions

 ReceptorModel (void)
 
 ~ReceptorModel (void)
 
virtual void main (void)
 
virtual void process (const OutData &source, OutData &dest)
 
virtual void operator() (double t, double *x, double *dxdt, int n)
 
- Public Member Functions inherited from NeuronModels
 NeuronModels (void)
 
 NeuronModels (const string &name, const string &pluginset="", const string &author="unknown", const string &version="unknown", const string &date=__DATE__)
 
virtual ~NeuronModels (void)
 
virtual void process (const OutData &source, OutData &dest)
 
virtual Options metaData (void)
 
double timeStep (void) const
 
void setTimeStep (double deltat)
 
double noiseD (void) const
 
void setNoiseD (double noised)
 
double noiseFac (void) const
 
void setNoiseFac (void)
 
SpikingNeuron * neuron (void) const
 
void add (SpikingNeuron *model, const string &title="")
 
void addModels (void)
 
void addOptions (void)
 
void readOptions (void)
 
- Public Member Functions inherited from Model
 Model (const string &name, const string &pluginset="", const string &author="unknown", const string &version="unknown", const string &date=__DATE__)
 
virtual ~Model (void)
 
virtual void notify (void)
 
double signal (double t, int trace=0) const
 
bool interrupt (void) const
 
bool isRunning (void) const
 
void push (int trace, float val)
 
void next (void)
 
int traces (void) const
 
string traceName (int trace) const
 
double deltat (int trace) const
 
double time (int trace) const
 
float scale (int trace) const
 
void waitOnSignals (void)
 
double load (void) const
 
virtual void addActions (QMenu *menu, bool doxydoc)
 
virtual void setName (const string &name)
 
- Public Member Functions inherited from ConfigDialog
 ConfigDialog (const string &configident="", int configgroup=0, const string &name="", const string &author="", const string &version="", const string &date=__DATE__)
 
virtual ~ConfigDialog (void)
 
string name (void) const
 
string author (void) const
 
virtual void setAuthor (const string &author)
 
string version (void) const
 
virtual void setVersion (const string &version)
 
string date (void) const
 
virtual void setDate (const string &date)
 
virtual void dialogButtons (OptDialog *od)
 
virtual void dialogEmptyMessage (OptDialog *od)
 
int dialogSelectMask (void) const
 
void setDialogSelectMask (int mask)
 
void addDialogSelectMask (int mask)
 
int dialogReadOnlyMask (void) const
 
void setDialogReadOnlyMask (int mask)
 
void addDialogReadOnlyMask (int mask)
 
int dialogStyle (void) const
 
void setDialogStyle (int style)
 
void addDialogStyle (int style)
 
string dialogCaption (void) const
 
void setDialogCaption (const string &caption)
 
bool dialogHeader (void) const
 
void setDialogHeader (bool d)
 
string headerBackgroundColor (void) const
 
void setHeaderBackgroundColor (const string &color)
 
string headerForegroundColor (void) const
 
void setHeaderForegroundColor (const string &color)
 
string headerImageFile (void) const
 
void setHeaderImageFile (const string &file)
 
virtual void dialogHeaderWidget (OptDialog *od)
 
bool dialogHelp (void) const
 
void setDialogHelp (bool d)
 
string helpCaption (void) const
 
void setHelpCaption (const string &caption)
 
string helpPath (int inx=0) const
 
int helpPathes (void) const
 
void clearHelpPathes (void)
 
void setHelpPath (const string &path)
 
void addHelpPath (const string &path)
 
virtual string helpFileName (void) const
 
bool dialogOpen (void) const
 
bool helpOpen (void) const
 
QWidget * mainWidget (void)
 
virtual void setMainWidget (QWidget *widget)
 
void lock () const
 
void unlock () const
 
bool tryLock (int timeout=1)
 
QMutex * mutex (void)
 
- Public Member Functions inherited from ConfigClass
 ConfigClass (const string &ident, int group=0, int mode=0xffff, int selectmask=0)
 
 ConfigClass (const ConfigClass &C)
 
virtual ~ConfigClass (void)
 
const string & configIdent (void) const
 
void setConfigIdent (const string &ident)
 
int configGroup (void) const
 
void setConfigGroup (int group)
 
int configMode (void) const
 
void setConfigMode (int mode)
 
void addConfigMode (int mode)
 
void delConfigMode (int mode)
 
int configSelectMask (void) const
 
void setConfigSelectMask (int mask)
 
void addConfig (void)
 
void readConfig (void)
 
virtual void readConfig (StrQueue &sq)
 
virtual void saveConfig (ofstream &str)
 
virtual int configSize (void) const
 
virtual void config (void)
 
virtual void preConfig (void)
 
- Public Member Functions inherited from StandardTraces
 StandardTraces (void)
 

Protected Member Functions

double identity (double x) const
 
double box (double x) const
 
double linear (double x) const
 
double linearSaturated (double x) const
 
double square (double x) const
 
double squareSaturated (double x) const
 
double linearBoltzman (double x) const
 
double squareBoltzman (double x) const
 
virtual OptWidgetdialogOptions (OptDialog *od, string *tabhotkeys=0)
 
- Protected Member Functions inherited from NeuronModels
void dialogModelOptions (OptDialog *od)
 
virtual void dialogOptions (OptDialog *od)
 
- Protected Member Functions inherited from ConfigDialog
void setDialogOpen (bool open=true)
 
void setHelpOpen (bool open=true)
 

Protected Attributes

double(ReceptorModel::* Nonlinearity )(double) const
 
int TympanumModel
 
double Omega
 
double TDec
 
double Alpha
 
double Beta
 
double Imax
 
double Imin
 
double CutPoint
 
double DI
 
double DIC
 
double DICC
 
double Slope
 
double X0
 
double F0
 
double Slope2
 
- Protected Attributes inherited from NeuronModels
void(* Integrate )(double, double *, double *, int, double, NeuronModels &)
 
double CurrentInput
 
double GMC
 
double EMC
 
double MVMC
 
double MWMC
 
double TAUMC
 
int MMCInx
 
double GMHC
 
double EMHC
 
double MVMHC
 
double MWMHC
 
double TAUMMHC
 
double PMMHC
 
int MMHCInx
 
double HVMHC
 
double HWMHC
 
double TAUHMHC
 
double PHMHC
 
int HMHCInx
 
- Protected Attributes inherited from ConfigDialog
Options DialogOptions
 

Additional Inherited Members

- Public Types inherited from ConfigClass
enum  Action
 
- Public Slots inherited from ConfigDialog
virtual void dialog (void)
 
virtual void help (void)
 
virtual void notifyDialog (const Options &opt)
 
- Signals inherited from ConfigDialog
void dialogAccepted (void)
 
void dialogAction (int r)
 
void dialogClosed (int r)
 
- Static Public Member Functions inherited from ConfigClass
static void setConfigureClasses (ConfigureClasses *cfg)
 
- Protected Slots inherited from ConfigDialog
void notificationFromDialog (const Parameter &p)
 
virtual void dClosed (int r)
 
virtual void hClosed (int r)
 
- Static Protected Member Functions inherited from StandardTraces
static void clearIndices (int *traceindices, int n=-1)
 
static void initStandardTraces (const InList &data, int *ntraces, int *traceindices, const string *names, string &namelist, bool alpha=false)
 
static void initStandardEventTraces (const InList &data, const EventList &events, int *ntraces, int *traceindices, int *eventindices, const string *tracenames, const string *eventnames, string &tracenamelist, string &eventnamelist, bool alpha=false)
 
static void initStandardOutputs (const RELACSPlugin *rp, int *ntraces, int *traceindices, const string *names, string &namelist, bool alpha=false)
 
- Static Protected Attributes inherited from StandardTraces
static const int MaxTraces
 

Detailed Description

[Model] Spiking neuron model stimulated through an auditory transduction chain.

Author
Alexander Wolf
Jan Benda

ReceptorModel simulates the auditory transduction chain of Locusta migratoria. It is designed to work with RELACS in the dry mode (relacs -3) so new repros can be tested for different settings. The plugin is based on a biophysical model that describes the transformation of the sound stimulus in a chain of three distinct steps: 1. the tympanum; 2. mechano-electrical transduction; 3. spike generator.

transductionchain.jpg

For each of the three steps, the plugin provides several options for the user to adapt to his/her needs and the hardware restrictions. Additionally, the user can chose between between several integration algorithms. The following options can be selected (in order of increasing complexity):

  1. Tympanum
  1. Mechano-Electrical Transduction:
  1. Spike Generators:
  1. Integrators:
Options
The following options are supported (brief description of each option with default values and data type):
  • Transduction chain
  • tymp=Scaling: Tympanum model (string)
  • freq=5kHz: Eigenfrequency (number)
  • tdec=0.154ms: Decay constant (number)
  • nl=Square saturated: Static nonlinearity (string)
  • Spike generator
  • spikemodel=Stimulus: Spike model (string)
  • noise=0: Standard deviation of current noise (number)
  • deltat=0.005ms: Delta t (number)
  • integrator=Euler: Method of integration (string)
  • Square = ax^2+imin, a=(imax-imin)/cut^2
  • Square saturated = imax, for |x|>=cut
  • Linear = b|x|+imin, b=(imax-imin)/cut
  • Linear saturated = imax, for |x|>=cut
  • Box = imin, for |x|<cut, = imax else
  • None = ax, a=(imax-imin)/cut
  • imax=60muA/cm^2: Maximum current (number)
  • imin=0muA/cm^2: Minimum current (zero point current) (number)
  • cut=0.02mPa: Amplitude of tympanum where imax is reached (number)
  • Boltzmann, (imax/(1-f_0))*(1/(1+exp[-slope*(x-x0)])+1/(1+exp[slope*(x+x0)])-f_0)+imin
  • slope=3000mPa^-1: Slope of Boltzmann (number)
  • matchslope=true: Set slope of Boltzmann to match square (boolean)
  • x0=0.01mPa: 1/2 of Imax-Imin is reached (number)
  • Boltzmann, 2(imax-imin)(1/(1+exp[-slope2*x^2])-1/2)+imin
  • slope2=6e+05mPa^-2: Slope of square Boltzmann (number)
  • matchslope2=true: Set slope of square Boltzmann to match square (boolean)
  • Many more options for spike generators.
Version
1.1 (Jan 15, 2006)

Constructor & Destructor Documentation

ReceptorModel ( void  )
~ReceptorModel ( void  )

Member Function Documentation

void main ( void  )
virtual
void process ( const OutData source,
OutData dest 
)
virtual
void operator() ( double  t,
double *  x,
double *  dxdt,
int  n 
)
virtual
double identity ( double  x) const
protected

References ReceptorModel::DIC.

Referenced by ReceptorModel::main().

double box ( double  x) const
protected
double linear ( double  x) const
protected
double linearSaturated ( double  x) const
protected
double square ( double  x) const
protected
double squareSaturated ( double  x) const
protected
double linearBoltzman ( double  x) const
protected
double squareBoltzman ( double  x) const
protected
OptWidget * dialogOptions ( OptDialog od,
string *  tabhotkeys = 0 
)
protectedvirtual

Member Data Documentation

double(ReceptorModel::* Nonlinearity)(double) const
protected
int TympanumModel
protected
double Omega
protected

Referenced by ReceptorModel::main().

double TDec
protected
double Alpha
protected
double Beta
protected
double Imax
protected
double Imin
protected
double CutPoint
protected
double DI
protected
double DIC
protected
double DICC
protected
double Slope
protected
double X0
protected
double F0
protected
double Slope2
protected

The documentation for this class was generated from the following files: