NEURON
linmod.h
Go to the documentation of this file.
1 #ifndef linmod_h
2 #define linmod_h
3 
4 #include <OS/list.h>
5 #include "ocmatrix.h"
6 #include "ivocvect.h"
7 #include "nrnoc2iv.h"
8 #include "matrixmap.h"
9 #include "nrndae.h"
10 
11 
12 class LinearModelAddition : public NrnDAE {
13 public:
14  LinearModelAddition(Matrix* c, Matrix* g, Vect* y, Vect* y0, Vect* b,
15  int nnode = 0, Node** nodes = NULL, Vect* elayer = NULL, Object* f_callable = NULL);
16  virtual ~LinearModelAddition();
17 
18 private:
19  void f_(Vect& y, Vect& yprime, int size);
21  double jacobian_multiplier_();
22  void alloc_(int size, int start, int nnode, Node** nodes, int* elayer);
23 
25  Vect& b_;
27 };
28 
29 #endif
double jacobian_multiplier_()
Definition: linmod.cpp:71
void f_(Vect &y, Vect &yprime, int size)
The right-hand-side function.
Definition: linmod.cpp:51
#define Vect
Definition: ivocvect.h:14
#define g
Definition: passive0.cpp:23
j< sec-> nnode
Definition: treeset.cpp:905
void start()
Definition: hel2mos.cpp:205
virtual ~LinearModelAddition()
Definition: linmod.cpp:38
Supports modifying voltage equations and adding new equations.
LinearModelAddition(Matrix *c, Matrix *g, Vect *y, Vect *y0, Vect *b, int nnode=0, Node **nodes=NULL, Vect *elayer=NULL, Object *f_callable=NULL)
Definition: linmod.cpp:31
NEURON Differential Algebraic Equations.
Definition: nrndae.h:27
Definition: hocdec.h:226
#define c
void alloc_(int size, int start, int nnode, Node **nodes, int *elayer)
Additional allocation for subclasses.
Definition: linmod.cpp:43
MatrixMap * jacobian_(Vect &y)
Compute the Jacobian.
Definition: linmod.cpp:75
Definition: section.h:132
return NULL
Definition: cabcode.cpp:461
MatrixPtr Matrix
Definition: sputils.c:601
Object * f_callable_
Definition: linmod.h:26
MatrixMap * g_
Definition: linmod.h:24