Miind
NeuronParameter.hpp
Go to the documentation of this file.
1 // Copyright (c) 2005 - 2011 Marc de Kamps
2 // All rights reserved.
3 //
4 // Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
5 //
6 // * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
7 // * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation
8 // and/or other materials provided with the distribution.
9 // * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software
10 // without specific prior written permission.
11 //
12 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
13 // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY
14 // DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
15 // USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
16 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
17 //
18 // If you use this software in work leading to a scientific publication, you should include a reference there to
19 // the 'currently valid reference', which can be found at http://miind.sourceforge.net
20 #ifndef _GEOM_LIBS_GEOMLIB_NEURONPARAMETER_INCLUDE_GUARD
21 #define _GEOM_LIBS_GEOMLIB_NEURONPARAMETER_INCLUDE_GUARD
22 
23 
25 #include "GeomLibException.hpp"
26 
27 namespace GeomLib {
28 
29 
33 
34  struct NeuronParameter {
35 
41 
44  _theta(0),
45  _V_reset(0),
46  _V_reversal(0),
47  _tau_refractive(0),
48  _tau(0){
49  }
50 
53  (
54  MPILib::Potential theta,
55  MPILib::Potential V_reset,
56  MPILib::Potential V_reversal,
57  MPILib::Time tau_refractive,
58  MPILib::Time tau
59  ):
60  _theta(theta),
61  _V_reset(V_reset),
62  _V_reversal(V_reversal),
63  _tau_refractive(tau_refractive),
64  _tau(tau){
65  if (_V_reset > theta || _V_reversal > theta)
66  throw GeomLibException("Threshold should be largest potential");
67  }
68 
69  };
70 
71 
72 } // end of GeomLib
73 
74 #endif // include guard
NeuronParameter()
default constructor
double Potential
MPILib::Time _tau
membrane time constant in s
MPILib::Potential _V_reset
reset potential in V
double Time
MPILib::Time _tau_refractive
(absolute) refractive time in s
MPILib::Potential _theta
threshold potential in V
Base class for all exceptions thrown in GeomLib.
Parameters necessary for the configuration of a GeomAlgorithm or an OUAlgorithm.
MPILib::Potential _V_reversal
reversal potential in V