Spike
Loading...
Searching...
No Matches
Spike::LIF Class Reference

A leaky integrate-and-fire (LIF) neuron. More...

#include <IF.h>

Public Member Functions

 LIF (double mu, double D)
 Constructs an LIF from given parameters.
 
 LIF (const std::string &input_file)
 Constructs an LIF from .ini file.
 
double drift (double v) const override
 Calculates drift of the LIF, i.e. mu - v.
 
void print (std::ostream &out) const override
 Prints the LIF neuron to out stream.
 
- Public Member Functions inherited from Spike::IF
 IF (const std::string &input_file)
 Constructs an IF neuron from a .ini file.
 
 IF (double mu, double D)
 Construct an IF neuron from given parameters.
 
double diffusion () const
 Calculates the diffusion of the IF neurons, i.e. sqrt(2D).
 
void get_spikes (SpikeTrain &spike_train) override
 Obtains spikes by integrating the Langevin equation using an Euler-Maruyama scheme.
 
void get_spikes (Signal &signal, SpikeTrain &spike_train) override
 Obtains spikes by integrating the Langevin equation using an Euler-Maruyama scheme. Neuron is subject to an applied signal.
 
void get_voltage_curve (const TimeFrame &time, std::vector< double > &v)
 Calculates the trajectory, i.e. v(t) for a given time frame.
 
void set_mu (double mu_new)
 Set new mean input current.
 
void set_D (double D_new)
 Set new diffusion coefficient.
 
double get_D () const
 Returns the diffusion coefficient.
 

Additional Inherited Members

- Protected Attributes inherited from Spike::IF
double mu
 mean input current
 
double D
 diffusion coefficient
 
std::random_device rd
 random device (seeding)
 
std::mt19937 generator
 random number generator
 
std::normal_distribution< double > dist
 normal distribution
 

Detailed Description

A leaky integrate-and-fire (LIF) neuron.

Constructor & Destructor Documentation

◆ LIF() [1/2]

Spike::LIF::LIF ( double mu,
double D )

Constructs an LIF from given parameters.

Parameters
muMean input current
DDiffusion coefficient

◆ LIF() [2/2]

Spike::LIF::LIF ( const std::string & input_file)
explicit

Constructs an LIF from .ini file.

Parameters
input_filePath to .ini file

Member Function Documentation

◆ drift()

double Spike::LIF::drift ( double v) const
inlineoverridevirtual

Calculates drift of the LIF, i.e. mu - v.

Parameters
vVoltage
Returns
Drift of LIF

Implements Spike::IF.

◆ print()

void Spike::LIF::print ( std::ostream & out) const
inlineoverridevirtual

Prints the LIF neuron to out stream.

Parameters
outout stream

Implements Spike::IF.


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