NEURON
ldifus.cpp File Reference
#include <../../nrnconf.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <math.h>
#include "section.h"
#include "membfunc.h"
#include "neuron.h"
#include "nrniv_mf.h"
#include "parse.hpp"

Go to the source code of this file.

Classes

struct  LongDifus
 
struct  LongDifusThreadData
 

Macros

#define nt_t   nrn_threads->_t
 
#define nt_dt   nrn_threads->_dt
 

Functions

void hoc_register_ldifus1 (ldifusfunc_t f)
 
void nrn_tree_solve (double *a, double *d, double *b, double *rhs, int *pindex, int n)
 
void long_difus_solve (neuron::model_sorted_token const &sorted_token, int method, NrnThread &nt)
 
static void longdifusfree (LongDifus **ppld)
 
static void longdifus_diamchange (LongDifus *pld, int m, int sindex, Memb_list *ml, NrnThread *_nt)
 
static void longdifusalloc (LongDifus **ppld, int m, int sindex, Memb_list *ml, NrnThread *_nt)
 
static void overall_setup (int m, ldifusfunc3_t diffunc, void **v, int ai, int sindex, int dindex, neuron::model_sorted_token const &, NrnThread &ntr)
 
static LongDifusv2ld (void **v, int tid)
 
static Memb_listv2ml (void **v, int tid)
 
static void stagger (int m, ldifusfunc3_t diffunc, void **v, int ai, int sindex, int dindex, neuron::model_sorted_token const &sorted_token, NrnThread &ntr)
 
static void ode (int m, ldifusfunc3_t diffunc, void **v, int ai, int sindex, int dindex, neuron::model_sorted_token const &sorted_token, NrnThread &ntr)
 
static void matsol (int m, ldifusfunc3_t diffunc, void **v, int ai, int sindex, int dindex, neuron::model_sorted_token const &sorted_token, NrnThread &ntr)
 

Variables

static int ldifusfunccnt
 
static ldifusfunc_tldifusfunc
 
static ldifusfunc2_t stagger
 
static ldifusfunc2_t ode
 
static ldifusfunc2_t matsol
 
static ldifusfunc2_t overall_setup
 

Macro Definition Documentation

◆ nt_dt

#define nt_dt   nrn_threads->_dt

Definition at line 14 of file ldifus.cpp.

◆ nt_t

#define nt_t   nrn_threads->_t

Definition at line 13 of file ldifus.cpp.

Function Documentation

◆ hoc_register_ldifus1()

void hoc_register_ldifus1 ( ldifusfunc_t  f)

Definition at line 45 of file ldifus.cpp.

◆ long_difus_solve()

void long_difus_solve ( neuron::model_sorted_token const &  sorted_token,
int  method,
NrnThread nt 
)

Definition at line 86 of file ldifus.cpp.

◆ longdifus_diamchange()

static void longdifus_diamchange ( LongDifus pld,
int  m,
int  sindex,
Memb_list ml,
NrnThread _nt 
)
static

Definition at line 128 of file ldifus.cpp.

◆ longdifusalloc()

static void longdifusalloc ( LongDifus **  ppld,
int  m,
int  sindex,
Memb_list ml,
NrnThread _nt 
)
static

Definition at line 168 of file ldifus.cpp.

◆ longdifusfree()

static void longdifusfree ( LongDifus **  ppld)
static

Definition at line 110 of file ldifus.cpp.

◆ matsol()

static void matsol ( int  m,
ldifusfunc3_t  diffunc,
void **  v,
int  ai,
int  sindex,
int  dindex,
neuron::model_sorted_token const &  sorted_token,
NrnThread ntr 
)
static

Definition at line 384 of file ldifus.cpp.

◆ nrn_tree_solve()

void nrn_tree_solve ( double *  a,
double *  d,
double *  b,
double *  rhs,
int *  pindex,
int  n 
)

Definition at line 51 of file ldifus.cpp.

◆ ode()

static void ode ( int  m,
ldifusfunc3_t  diffunc,
void **  v,
int  ai,
int  sindex,
int  dindex,
neuron::model_sorted_token const &  sorted_token,
NrnThread ntr 
)
static

Definition at line 339 of file ldifus.cpp.

◆ overall_setup()

static void overall_setup ( int  m,
ldifusfunc3_t  diffunc,
void **  v,
int  ai,
int  sindex,
int  dindex,
neuron::model_sorted_token const &  ,
NrnThread ntr 
)
static

Definition at line 235 of file ldifus.cpp.

◆ stagger()

static void stagger ( int  m,
ldifusfunc3_t  diffunc,
void **  v,
int  ai,
int  sindex,
int  dindex,
neuron::model_sorted_token const &  sorted_token,
NrnThread ntr 
)
static

Definition at line 286 of file ldifus.cpp.

◆ v2ld()

static LongDifus* v2ld ( void **  v,
int  tid 
)
static

Definition at line 276 of file ldifus.cpp.

◆ v2ml()

static Memb_list* v2ml ( void **  v,
int  tid 
)
static

Definition at line 281 of file ldifus.cpp.

Variable Documentation

◆ ldifusfunc

ldifusfunc_t* ldifusfunc
static

Definition at line 41 of file ldifus.cpp.

◆ ldifusfunccnt

int ldifusfunccnt
static

Definition at line 40 of file ldifus.cpp.

◆ matsol

ldifusfunc2_t matsol ( void  )
static

Definition at line 43 of file ldifus.cpp.

◆ ode

ldifusfunc2_t ode
static

Definition at line 43 of file ldifus.cpp.

◆ overall_setup

ldifusfunc2_t overall_setup
static

Definition at line 43 of file ldifus.cpp.

◆ stagger

ldifusfunc2_t stagger
static

Definition at line 43 of file ldifus.cpp.