6 #include "shared/nvector.h"
21 struct model_sorted_token;
41 std::vector<Memb_list>
ml{};
49 std::vector<Memb_list*>
ml;
53 #define CTD(i) ctd_[((nctd_ > 1) ? (i) : 0)]
93 std::vector<PlayRecord*>*
play_;
104 virtual int init(
double t);
107 virtual double tn() {
110 virtual double t0() {
145 N_Vector
nvnew(
long);
146 int setup(N_Vector ypred, N_Vector fpred);
void fun_thread_transfer_part2(neuron::model_sorted_token const &, double *ydot, NrnThread *nt)
void fun_thread_ms_part2(NrnThread *nt)
void solvemem(neuron::model_sorted_token const &, NrnThread *)
void do_nonode(neuron::model_sorted_token const &, NrnThread *nt=0)
void daspk_setup2_tree_matrix()
void rhs(neuron::model_sorted_token const &, NrnThread *)
void rhs_memb(neuron::model_sorted_token const &, CvMembList *, NrnThread *)
int solvex_thread_part2(NrnThread *nt)
virtual int handle_step(neuron::model_sorted_token const &, NetCvode *, double)
void fun_thread_transfer_part1(neuron::model_sorted_token const &, double t, double *y, NrnThread *nt)
void play_continuous_thread(double t, NrnThread *)
bool at_time(double, NrnThread *)
int solvex_thread(neuron::model_sorted_token const &, double *b, double *y, NrnThread *nt)
int psol(double, double *, double *, double, NrnThread *)
void record_add(PlayRecord *)
void play_add(PlayRecord *)
void daspk_scatter_y(N_Vector)
int setup(N_Vector ypred, N_Vector fpred)
void play_continuous(double t)
void fun_thread_ms_part4(double *ydot, NrnThread *nt)
void nocap_v_part2(NrnThread *)
void before_after(neuron::model_sorted_token const &, BAMechList *, NrnThread *)
void daspk_setup1_tree_matrix()
void new_no_cap_memb(CvodeThreadData &, NrnThread *)
void fun_thread_ms_part34(double *ydot, NrnThread *nt)
void fun_thread_ms_part1(double t, double *y, NrnThread *nt)
void record_continuous_thread(NrnThread *)
int solvex_thread_part3(double *b, NrnThread *nt)
void check_deliver(NrnThread *nt=0)
int daspk_interpolate(double)
void fun_thread(neuron::model_sorted_token const &, double t, double *y, double *ydot, NrnThread *nt)
void nocap_v_part3(NrnThread *)
void evaluate_conditions(NrnThread *nt=0)
void fill(Cvode *standard)
void fun_thread_ms_part3(NrnThread *nt)
int res(double, double *, double *, double *, NrnThread *)
virtual int init(double t)
double * n_vector_data(N_Vector, int)
virtual int interpolate(double t)
int cvode_advance_tn(neuron::model_sorted_token const &)
void nocap_v_part1(NrnThread *)
void activate_maxstate(bool)
void do_ode(neuron::model_sorted_token const &, NrnThread &)
void lhs_memb(neuron::model_sorted_token const &, CvMembList *, NrnThread *)
void lhs(neuron::model_sorted_token const &, NrnThread *)
bool is_owner(neuron::container::data_handle< double > const &)
void nocap_v(neuron::model_sorted_token const &, NrnThread *)
void daspk_gather_y(N_Vector)
int solvex_thread_part1(double *b, NrnThread *nt)
void scatter_y(neuron::model_sorted_token const &, double *, int)
void scatter_ydot(double *, int)
void gather_ydot(N_Vector)
int cvode_interpolate(double)
void error_weights(double *)
virtual int advance_tn(neuron::model_sorted_token const &)
virtual ~CvodeThreadData()
int nonvint_extra_offset_
std::vector< double * > pv_
CvMembList * cv_memb_list_
void delete_memb_list(CvMembList *)
std::vector< int > no_cap_indices_
CvMembList * no_cap_memb_
BAMechList * before_breakpoint_
BAMechList * after_solve_
int rootnode_begin_index_
std::vector< double * > pvdot_
std::vector< PlayRecord * > * record_
BAMechList * before_step_
std::vector< PlayRecord * > * play_
std::vector< int > no_cap_child_indices_
std::vector< PreSyn * > PreSynList
In mechanism libraries, cannot use auto const token = nrn_ensure_model_data_are_sorted(); because the...
std::vector< Memb_list * > ml
static void destruct(BAMechList **first)
BAMechList(BAMechList **first)
Wrapper for Memb_list in CVode related code.
std::vector< Memb_list > ml
Represent main neuron object computed by single thread.