NEURON
nrndaspk.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "shared/nvector_serial.h"
4 #include "nvector_nrnthread.h"
5 #include "nvector_nrnthread_ld.h"
6 #include "nvector_nrnserial_ld.h"
7 
8 class Cvode;
9 
10 class Daspk {
11  public:
12  Daspk(Cvode*, int neq);
13  virtual ~Daspk();
14  int init();
15  int advance_tn(double tstop);
16  int interpolate(double tout); // has strict precondition
17  void statistics();
18  N_Vector ewtvec();
19  N_Vector acorvec();
20 
21  private:
22  void ida_init();
23  void info();
24 
25  public:
26  void* mem_;
28  N_Vector yp_;
29  N_Vector delta_; // use for calling res explicitly
30  N_Vector parasite_; // used when initialization cannot make f(y',y,t)<tol
31  double t_parasite_;
33  char* spmat_;
34  static int init_failure_style_;
35  static double dteps_;
36  static int init_try_again_;
38 };
Definition: cvodeobj.h:97
Definition: nrndaspk.h:10
virtual ~Daspk()
Definition: nrndaspk.cpp:151
void statistics()
Definition: nrndaspk.cpp:367
double t_parasite_
Definition: nrndaspk.h:31
bool use_parasite_
Definition: nrndaspk.h:32
void ida_init()
Definition: nrndaspk.cpp:160
int init()
Definition: nrndaspk.cpp:224
static double dteps_
Definition: nrndaspk.h:35
static int init_try_again_
Definition: nrndaspk.h:36
int interpolate(double tout)
Definition: nrndaspk.cpp:349
static int first_try_init_failures_
Definition: nrndaspk.h:37
void info()
Definition: nrndaspk.cpp:185
N_Vector yp_
Definition: nrndaspk.h:28
N_Vector delta_
Definition: nrndaspk.h:29
void * mem_
Definition: nrndaspk.h:26
Cvode * cv_
Definition: nrndaspk.h:27
Daspk(Cvode *, int neq)
Definition: nrndaspk.cpp:140
int advance_tn(double tstop)
Definition: nrndaspk.cpp:323
N_Vector acorvec()
Definition: nrndaspk.cpp:673
char * spmat_
Definition: nrndaspk.h:33
N_Vector ewtvec()
Definition: nrndaspk.cpp:669
static int init_failure_style_
Definition: nrndaspk.h:34
N_Vector parasite_
Definition: nrndaspk.h:30