25 int i2 = i1 + _nt->
ncell;
30 double* vec_a = &(
VEC_A(0));
32 double* vec_v = &(
VEC_V(0));
38 for (
int i = i1;
i < i3; ++
i) {
47 parallel loop present(fast_imem_d [i1:i3], fast_imem_rhs [i1:i3])
if (_nt->
compute_gpu)
50 for (
int i = i1;
i < i3; ++
i) {
52 fast_imem_rhs[
i] = 0.;
58 for (
auto tml = _nt->
tml; tml; tml = tml->
next)
61 std::string ss(
"cur-");
64 (*s)(_nt, tml->ml, tml->index);
67 hoc_warning(
"errno set during calculation of currents",
nullptr);
80 for (
int i = i1;
i < i3; ++
i) {
97 for (
int i = i2;
i < i3; ++
i) {
98 double dv = vec_v[parent_index[
i]] - vec_v[
i];
105 vec_rhs[parent_index[
i]] += vec_a[
i] * dv;
119 int i2 = i1 + _nt->
ncell;
123 for (
auto tml = _nt->
tml; tml; tml = tml->
next)
126 std::string ss(
"cur-");
129 (*s)(_nt, tml->ml, tml->index);
132 hoc_warning(
"errno set during calculation of jacobian", (
char*) 0);
140 if (_nt->
end && _nt->
tml) {
146 double* vec_a = &(
VEC_A(0));
157 for (
int i = i1;
i < i3; ++
i) {
167 for (
int i = i2;
i < i3; ++
i) {
173 vec_d[parent_index[
i]] -= vec_a[
i];
auto & get_memb_func(size_t idx)
nrn_pragma_acc(routine seq) nrn_pragma_omp(declare target) philox4x32_ctr_t coreneuron_random123_philox4x32_helper(coreneuron nrn_pragma_omp(end declare target) namespace coreneuron
Provide a helper function in global namespace that is declared target for OpenMP offloading to functi...
#define BEFORE_BREAKPOINT
THIS FILE IS AUTO GENERATED DONT MODIFY IT.
void(*)(NrnThread *, Memb_list *, int) mod_f_t
void update(NrnThread *_nt)
static void nrn_lhs(NrnThread *_nt)
const char * nrn_get_mechname(int type)
void * setup_tree_matrix_minimal(NrnThread *)
static void nrn_rhs(NrnThread *_nt)
nrn_pragma_acc(routine seq) int vector_capacity(void *v)
void nrn_jacob_capacitance(NrnThread *, Memb_list *, int)
void hoc_warning(const char *s1, const char *s2)
void nrn_ba(NrnThread *nt, int bat)
NrnFastImem * nrn_fast_imem