MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
SynChan.h
Go to the documentation of this file.
1 /**********************************************************************
2 ** This program is part of 'MOOSE', the
3 ** Messaging Object Oriented Simulation Environment.
4 ** Copyright (C) 2003-2007 Upinder S. Bhalla. and NCBS
5 ** It is made available under the terms of the
6 ** GNU Lesser General Public License version 2.1
7 ** See the file COPYING.LIB for the full notice.
8 **********************************************************************/
9 
10 #ifndef _SynChan_h
11 #define _SynChan_h
12 
13 class SynChan: public ChanCommon
14 {
15  public:
16  SynChan();
17  ~SynChan();
18 
20  // Value field access function definitions
22 
23  void setTau1( double tau1 );
24  double getTau1() const;
25 
26  void setTau2( double tau2 );
27  double getTau2() const;
28 
29  void setNormalizeWeights( bool value );
30  bool getNormalizeWeights() const;
31 
32  // override virtual func from ChanBase
33  void vSetGbar( const Eref& e, double Gbar );
34 
36  // Utility function for any time Gbar changes
37  void normalizeGbar();
38 
42  double calcGk();
44  // ElementFinfo access function definitions
46  /*
47  unsigned int getNumSynapses() const;
48  void setNumSynapses( unsigned int i );
49  Synapse* getSynapse( unsigned int i );
50  */
51 
53 // Dest function definitions
55 
56  void vProcess( const Eref& e, ProcPtr p );
57  void vReinit( const Eref& e, ProcPtr p );
58 
59  void activation( double val );
61 
64  /* void innerAddSpike( unsigned int synIndex, const double time ); */
65 
66  static const Cinfo* initCinfo();
67  protected: // Used by NMDAChan
68 
70 // Utility function
72  // virtual unsigned int updateNumSynapse( Eref e );
73 
74  double tau1_;
75  double tau2_;
77  double xconst1_;
78  double yconst1_;
79  double xconst2_;
80  double yconst2_;
81  double norm_;
82  double activation_;
83  double X_;
84  double Y_;
85  double dt_;
86 };
87 
88 
89 #endif // _SynChan_h
static const Cinfo * initCinfo()
Definition: SynChan.cpp:20
uint32_t value
Definition: moosemodule.h:42
double tau2_
Definition: SynChan.h:75
double Y_
Definition: SynChan.h:84
double tau1_
Definition: SynChan.h:74
double yconst1_
Definition: SynChan.h:78
void vSetGbar(const Eref &e, double Gbar)
Definition: SynChan.cpp:117
void setTau2(double tau2)
Definition: SynChan.cpp:139
double getTau1() const
Definition: SynChan.cpp:134
void activation(double val)
Definition: SynChan.cpp:253
bool getNormalizeWeights() const
Definition: SynChan.cpp:166
void setNormalizeWeights(bool value)
Definition: SynChan.cpp:161
double activation_
Definition: SynChan.h:82
void normalizeGbar()
Definition: SynChan.cpp:171
SynChan()
Definition: SynChan.cpp:95
int normalizeWeights_
Definition: SynChan.h:76
void setTau1(double tau1)
Definition: SynChan.cpp:123
double dt_
Definition: SynChan.h:85
Definition: Eref.h:26
double calcGk()
Update alpha function terms for synaptic channel.
Definition: SynChan.cpp:200
double xconst1_
Definition: SynChan.h:77
double getTau2() const
Definition: SynChan.cpp:156
double yconst2_
Definition: SynChan.h:80
double X_
Definition: SynChan.h:83
double xconst2_
Definition: SynChan.h:79
void vProcess(const Eref &e, ProcPtr p)
Definition: SynChan.cpp:214
void vReinit(const Eref &e, ProcPtr p)
Definition: SynChan.cpp:229
Definition: Cinfo.h:18
~SynChan()
Definition: SynChan.cpp:110
double norm_
Definition: SynChan.h:81