Miind
|
#include <libs/GeomLib/SpikingOdeSystem.hpp>
Public Member Functions | |
SpikingOdeSystem (const SpikingNeuralDynamics &) | |
SpikingOdeSystem (const SpikingOdeSystem &) | |
virtual | ~SpikingOdeSystem ()=0 |
virtual SpikingOdeSystem * | Clone () const =0 |
virtual MPILib::Index | CurrentIndex () const =0 |
virtual MPILib::Rate | CurrentRate () const =0 |
MPILib::Time | CurrentTime () const |
virtual Potential | DCContribution () const =0 |
virtual void | Evolve (MPILib::Time)=0 |
MPILib::Index | FindBin (Potential) const |
MPILib::Index | IndexResetBin () const |
vector< MPILib::Potential > & | InterpretationBuffer () |
const vector< MPILib::Potential > & | InterpretationBuffer () const |
MPILib::Index | MapPotentialToProbabilityBin (MPILib::Index i) const |
vector< MPILib::Potential > & | MassBuffer () |
const vector< MPILib::Potential > & | MassBuffer () const |
MPILib::Number | NumberOfBins () const |
const OdeParameter & | Par () const |
void | PrepareReport (double *, double *) const |
MPILib::Time | TStep () const |
void | UpdateIndex () |
Protected Member Functions | |
std::vector< MPILib::Index > | InitializeCacheMap (MPILib::Number) |
void | RetrieveFromQueue () |
void | StoreInQueue () |
void | UpdateCacheMap () |
MPILib::Index | UpdateMapPotentialToProbabilityBin (MPILib::Index i) const |
Protected Attributes | |
vector< MPILib::Potential > | _buffer_interpretation |
vector< MPILib::Density > | _buffer_mass |
MPILib::Index | _i_reset |
MPILib::Index | _i_reversal |
int | _index |
vector< MPILib::Index > | _map_cache |
const string | _name_namerical |
MPILib::Number | _nr_bins |
boost::shared_ptr< AbstractNeuralDynamics > | _p_dyn |
const OdeParameter & | _par |
ProbabilityQueue | _queue |
MPILib::Time | _t_current |
MPILib::Time | _t_period |
MPILib::Time | _t_step |
In this system of ordinary differential equations it is assumed that dynamics is always spiking.
Definition at line 32 of file SpikingOdeSystem.hpp.
SpikingOdeSystem::SpikingOdeSystem | ( | const SpikingNeuralDynamics & | dyn | ) |
Definition at line 26 of file SpikingOdeSystem.cpp.
SpikingOdeSystem::SpikingOdeSystem | ( | const SpikingOdeSystem & | rhs | ) |
Definition at line 41 of file SpikingOdeSystem.cpp.
|
pure virtual |
This is an abstract base class.
Definition at line 52 of file SpikingOdeSystem.cpp.
|
pure virtual |
virtual construction by the framework
Implements GeomLib::AbstractOdeSystem.
Implemented in GeomLib::QifOdeSystem.
|
pure virtual |
Implemented in GeomLib::QifOdeSystem.
|
pure virtualinherited |
Rate due to neural dynamics driving.
Implemented in GeomLib::LeakingOdeSystem, and GeomLib::QifOdeSystem.
|
inlineinherited |
Definition at line 79 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_t_current.
|
pure virtual |
Reimplemented from GeomLib::AbstractOdeSystem.
Implemented in GeomLib::QifOdeSystem.
|
pure virtualinherited |
Every sub class defines its own evolution. This Evolve function does not relate to neural dynamics: that is controlled by AbstractNeuralDynamics objects. This function is a hook to call update the mapping between mass and potential bins.
Implemented in GeomLib::LeakingOdeSystem.
|
inherited |
Find which bin in the interpretation array contains this potential.
Definition at line 81 of file AbstractOdeSystem.cpp.
References GeomLib::AbstractOdeSystem::_buffer_interpretation, GeomLib::AbstractOdeSystem::_par, GeomLib::OdeParameter::_par_pop, GeomLib::NeuronParameter::_theta, and i.
Referenced by GeomLib::AbstractOdeSystem::InitializeResetBin(), GeomLib::AbstractOdeSystem::InitializeReversalBin(), and GeomLib::AbstractOdeSystem::InitializeSingleBin().
|
inlineinherited |
Index of the reset bin relative to the interpretation array, i.e. constant during simulation.
Definition at line 109 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_i_reset.
Referenced by anonymous_namespace{NumericalMasterEquationCode.hpp}::HandleExcitatoryInput().
|
protected |
Definition at line 76 of file SpikingOdeSystem.cpp.
References i.
|
inlineinherited |
Access to the array of bin limits; be aware of the convention that the upper limit of the highest bin is not present in this array, and is equal to VMax, which can be obtained by Par()._nr_bins.
Definition at line 91 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_buffer_interpretation.
|
inlineinherited |
Const access to the array of bin limits; be aware of the convention that the upper limit of the highest bin is not present in this array, and is equal to VMax, which can be obtained by Par()._nr_bins.
Definition at line 95 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_buffer_interpretation.
|
inlineinherited |
Maintains the current mapping from a probability mass bin to its current poetntial bin in the interpretation array.
Definition at line 115 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_map_cache, and i.
Referenced by anonymous_namespace{NumericalMasterEquationCode.hpp}::HandleExcitatoryInput(), anonymous_namespace{NumericalMasterEquationCode.hpp}::HandleInhibitoryInput(), and GeomLib::LeakingOdeSystem::ReversalBinScoop().
|
inlineinherited |
Direct access to the array that represents the density mass. Note that this may be confusing, and in general you do not want to use this information directly. For a density profile, use PrepareReport, which performs the appropriate preprocessing. a density profile use PrepareReport.
Definition at line 100 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_buffer_mass.
|
inlineinherited |
Const direct access to the array that represents the density mass. Note that this may be confusing, and in general you do not want to use this information directly. For a density profile, use PrepareReport, which performs the appropriate preprocessing. a density profile use PrepareReport.
Definition at line 106 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_buffer_mass.
|
inlineinherited |
Number of bins used in the grid representation.
Definition at line 87 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_number_of_bins.
Referenced by anonymous_namespace{NumericalMasterEquationCode.hpp}::CachedDeriv(), GeomLib::QifOdeSystem::CurrentRate(), anonymous_namespace{NumericalMasterEquationCode.hpp}::HandleExcitatoryInput(), anonymous_namespace{NumericalMasterEquationCode.hpp}::HandleInhibitoryInput(), GeomLib::CNZLCache< Estimator >::Initialize(), RetrieveFromQueue(), StoreInQueue(), and UpdateCacheMap().
|
inlineinherited |
Access to the OdeParameter of the system. It is often time-critical, therefore implemented as reference return.
Definition at line 77 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_par.
Referenced by GeomLib::AbstractOdeSystem::InitializeDensity(), GeomLib::AbstractOdeSystem::InitializeGaussian(), GeomLib::AbstractOdeSystem::InitializeSingleBin(), StoreInQueue(), and UpdateMapPotentialToProbabilityBin().
|
inherited |
Represents the current density profile. Both double pointers must point to contiguous memory at least NumberOfBins() large. After calling the first array will contain.
Definition at line 101 of file AbstractOdeSystem.cpp.
References i.
|
protected |
Definition at line 68 of file SpikingOdeSystem.cpp.
References GeomLib::AbstractOdeSystem::_buffer_mass, GeomLib::AbstractOdeSystem::_i_reset, _index, _queue, GeomLib::AbstractOdeSystem::_t_current, MPILib::populist::ProbabilityQueue::CollectAndRemove(), GeomLib::AbstractOdeSystem::NumberOfBins(), and MPILib::populist::ProbabilityQueue::TBatch().
|
protected |
Definition at line 56 of file SpikingOdeSystem.cpp.
References GeomLib::AbstractOdeSystem::_buffer_mass, _index, GeomLib::OdeParameter::_par_pop, MPILib::populist::StampedProbability::_prob, _queue, GeomLib::AbstractOdeSystem::_t_current, GeomLib::NeuronParameter::_tau_refractive, MPILib::populist::StampedProbability::_time, GeomLib::AbstractOdeSystem::NumberOfBins(), GeomLib::AbstractOdeSystem::Par(), and MPILib::populist::ProbabilityQueue::push().
|
inlineinherited |
Definition at line 72 of file AbstractOdeSystem.hpp.
References GeomLib::AbstractOdeSystem::_t_step.
|
protected |
Definition at line 85 of file SpikingOdeSystem.cpp.
References GeomLib::AbstractOdeSystem::_map_cache, i, GeomLib::AbstractOdeSystem::NumberOfBins(), and UpdateMapPotentialToProbabilityBin().
|
inline |
Definition at line 48 of file SpikingOdeSystem.hpp.
|
inlineprotected |
Definition at line 74 of file SpikingOdeSystem.hpp.
References _index, _nr_bins, i, and GeomLib::AbstractOdeSystem::Par().
Referenced by UpdateCacheMap().
|
protectedinherited |
Definition at line 133 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::AbstractOdeSystem::FindBin(), GeomLib::AbstractOdeSystem::InitializeDensity(), GeomLib::AbstractOdeSystem::InitializeGaussian(), GeomLib::AbstractOdeSystem::InitializeSingleBin(), and GeomLib::AbstractOdeSystem::InterpretationBuffer().
|
protectedinherited |
Definition at line 134 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::QifOdeSystem::CurrentRate(), GeomLib::AbstractOdeSystem::MassBuffer(), RetrieveFromQueue(), GeomLib::LeakingOdeSystem::ReversalBinScoop(), and StoreInQueue().
|
protectedinherited |
Definition at line 136 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::AbstractOdeSystem::IndexResetBin(), and RetrieveFromQueue().
|
protectedinherited |
Definition at line 137 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::LeakingOdeSystem::ReversalBinScoop(), and GeomLib::LeakingOdeSystem::UpdateMapPotentialToProbabilityBin().
|
protected |
Definition at line 65 of file SpikingOdeSystem.hpp.
Referenced by GeomLib::QifOdeSystem::CurrentIndex(), GeomLib::QifOdeSystem::CurrentRate(), RetrieveFromQueue(), StoreInQueue(), UpdateIndex(), and UpdateMapPotentialToProbabilityBin().
|
protectedinherited |
Definition at line 140 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::LeakingOdeSystem::LeakingOdeSystem(), GeomLib::AbstractOdeSystem::MapPotentialToProbabilityBin(), GeomLib::LeakingOdeSystem::MapProbabilityToPotentialBin(), UpdateCacheMap(), GeomLib::LeakingOdeSystem::UpdateCacheMap(), and GeomLib::LeakingOdeSystem::UpdateCacheMapReverse().
|
protectedinherited |
Definition at line 128 of file AbstractOdeSystem.hpp.
|
protected |
Definition at line 64 of file SpikingOdeSystem.hpp.
Referenced by UpdateIndex(), and UpdateMapPotentialToProbabilityBin().
|
protectedinherited |
Definition at line 127 of file AbstractOdeSystem.hpp.
|
protectedinherited |
Definition at line 132 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::AbstractOdeSystem::FindBin(), GeomLib::AbstractOdeSystem::InitializeResetBin(), GeomLib::AbstractOdeSystem::InitializeReversalBin(), GeomLib::AbstractOdeSystem::InitializeSingleBin(), GeomLib::LeakingOdeSystem::Par(), and GeomLib::AbstractOdeSystem::Par().
|
protected |
Definition at line 67 of file SpikingOdeSystem.hpp.
Referenced by RetrieveFromQueue(), StoreInQueue(), and GeomLib::QifOdeSystem::TBatch().
|
protectedinherited |
Definition at line 138 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::AbstractOdeSystem::CurrentTime(), RetrieveFromQueue(), and StoreInQueue().
|
protectedinherited |
Definition at line 129 of file AbstractOdeSystem.hpp.
|
protectedinherited |
Definition at line 130 of file AbstractOdeSystem.hpp.
Referenced by GeomLib::QifOdeSystem::CurrentRate(), and GeomLib::AbstractOdeSystem::TStep().