NEURON
nrn_ansi.h File Reference

Go to the source code of this file.

Functions

void hoc_register_limits (int, HocParmLimits *)
 
void hoc_register_units (int, HocParmUnits *)
 
void hoc_register_dparam_semantics (int, int, const char *)
 
void add_nrn_fornetcons (int, int)
 
void hoc_register_tolerance (int, HocStateTolerance *, Symbol ***)
 
void oc_save_cabcode (int *a1, int *a2)
 
void oc_restore_cabcode (int *a1, int *a2)
 
void modl_reg (void)
 Needed for compilation. More...
 
void _nrn_free_fornetcon (void **)
 
double nrn_call_mech_func (Symbol *, int narg, Prop *, int type)
 
Propnrn_mechanism (int type, Node *)
 
void _nrn_free_watch (Datum *, int, int)
 Called by Point_process destructor in translated mod file. More...
 
void _nrn_watch_activate (Datum *, double(*)(Point_process *), int, Point_process *, int, double)
 
void _nrn_watch_allocate (Datum *, double(*)(Point_process *), int, Point_process *, double nrflag)
 Introduced so corenrn->nrn can request the mod file to make sure all WatchCondition are allocated. More...
 
void hoc_reg_ba (int, nrn_bamech_t, int)
 
int nrn_pointing (double *)
 
void nrn_pushsec (Section *)
 
void nrn_popsec (void)
 
Sectionchk_access (void)
 
Nodenode_exact (Section *, double)
 
int nrn_isecstack (void)
 
void nrn_secstack (int)
 
void new_sections (Object *ob, Symbol *sym, hoc_Item **pitm, int size)
 
void cable_prop_assign (Symbol *sym, double *pd, int op)
 
void nrn_parent_info (Section *s)
 
void nrn_relocate_old_points (Section *oldsec, Node *oldnode, Section *sec, Node *node)
 
int nrn_at_beginning (Section *sec)
 
void nrn_node_destruct1 (Node *)
 
void mech_insert1 (Section *, int)
 
void extcell_2d_alloc (Section *sec)
 
int nrn_is_ion (int)
 
void single_prop_free (Prop *)
 
void prop_free (Prop **)
 
int can_change_morph (Section *)
 
void nrn_area_ri (Section *sec)
 
void nrn_diam_change (Section *)
 
void sec_free (hoc_Item *)
 
int node_index (Section *sec, double x)
 
void extcell_node_create (Node *)
 
void extnode_free_elements (Extnode *)
 
const char * sec_and_position (Section *sec, Node *nd)
 
void section_order (void)
 
Sectionnrn_sec_pop (void)
 
Nodenode_ptr (Section *sec, double x, double *parea)
 
double * nrn_vext_pd (Symbol *s, int indx, Node *nd)
 
double * nrnpy_dprop (Symbol *s, int indx, Section *sec, short inode, int *err)
 
void nrn_disconnect (Section *)
 
void mech_uninsert1 (Section *sec, Symbol *s)
 
Objectnrn_sec2cell (Section *)
 
int nrn_sec2cell_equals (Section *, Object *)
 
double * dprop (Symbol *s, int indx, Section *sec, short inode)
 
void nrn_initcode ()
 
int segment_limits (double *)
 
void second_order_cur (NrnThread *)
 
void hoc_register_dparam_size (int, int)
 
void setup_topology (void)
 
int nrn_errno_check (int)
 
void long_difus_solve (int method, NrnThread *nt)
 
void nrn_fihexec (int)
 
int special_pnt_call (Object *, Symbol *, int)
 
void ob_sec_access_push (hoc_Item *)
 
void nrn_mk_prop_pools (int)
 
void SectionList_reg (void)
 
void SectionRef_reg (void)
 
void hoc_symbol_tolerance (Symbol *, double)
 
void node_destruct (Node **, int)
 
void nrn_sec_ref (Section **, Section *)
 
void hoc_level_pushsec (Section *)
 
double nrn_ra (Section *)
 
int node_index_exact (Section *, double)
 
void nrn_cachevec (int)
 
void nrn_ba (NrnThread *, int)
 
void nrniv_recalc_ptrs (void)
 
void nrn_recalc_ptrvector (void)
 
void nrn_recalc_ptrs (double *(*r)(double *))
 
void nrn_rhs_ext (NrnThread *)
 
void nrn_setup_ext (NrnThread *)
 
void nrn_cap_jacob (NrnThread *, Memb_list *)
 
void clear_point_process_struct (Prop *p)
 
void ext_con_coef (void)
 
void nrn_multisplit_ptr_update (void)
 
void nrn_cache_prop_realloc ()
 
void nrn_use_daspk (int)
 
void nrn_update_ps2nt (void)
 
void activstim_rhs (void)
 
void activclamp_rhs (void)
 
void activclamp_lhs (void)
 
void activsynapse_rhs (void)
 
void activsynapse_lhs (void)
 
void stim_prepare (void)
 
void clamp_prepare (void)
 
void synapse_prepare (void)
 
void v_setup_vectors (void)
 
void section_ref (Section *)
 
void section_unref (Section *)
 
const char * secname (Section *)
 
const char * nrn_sec2pysecname (Section *)
 
void nrn_rangeconst (Section *, Symbol *, double *value, int op)
 
int nrn_exists (Symbol *, Node *)
 
double * nrn_rangepointer (Section *, Symbol *, double x)
 
double * cable_prop_eval_pointer (Symbol *)
 
char * hoc_section_pathname (Section *)
 
double nrn_arc_position (Section *, Node *)
 
double node_dist (Section *, Node *)
 
double nrn_section_orientation (Section *)
 
double nrn_connection_position (Section *)
 
Sectionnrn_trueparent (Section *)
 
double topol_distance (Section *, Node *, Section *, Node *, Section **, Node **)
 
int arc0at0 (Section *)
 
void nrn_clear_mark (void)
 
short nrn_increment_mark (Section *)
 
short nrn_value_mark (Section *)
 
int is_point_process (Object *)
 
int nrn_vartype (Symbol *)
 
void recalc_diam (void)
 
Propnrn_mechanism_check (int type, Section *sec, int inode)
 
void nrn_fast_imem_alloc ()
 
void nrn_calc_fast_imem (NrnThread *)
 
Sectionnrn_secarg (int iarg)
 
void nrn_seg_or_x_arg (int iarg, Section **psec, double *px)
 
void nrn_seg_or_x_arg2 (int iarg, Section **psec, double *px)
 
Sectionnrnpy_pysecname2sec (const char *)
 
const char * nrnpy_sec2pysecname (Section *sec)
 
void nrnpy_pysecname2sec_add (Section *sec)
 
void nrnpy_pysecname2sec_remove (Section *sec)
 
void nrn_verify_ion_charge_defined ()
 
void nrn_pt3dclear (Section *, int)
 
void nrn_length_change (Section *, double)
 
void stor_pt3d (Section *, double x, double y, double z, double d)
 

Variables

int state_discon_allowed_
 
int section_object_seen
 
int nrn_use_fast_imem
 
int nrn_netrec_state_adjust
 
int nrn_sparse_partrans
 

Function Documentation

◆ _nrn_free_fornetcon()

void _nrn_free_fornetcon ( void **  )

Definition at line 4108 of file netcvode.cpp.

◆ _nrn_free_watch()

void _nrn_free_watch ( Datum ,
int  ,
int   
)

Called by Point_process destructor in translated mod file.

Definition at line 2550 of file netcvode.cpp.

◆ _nrn_watch_activate()

void _nrn_watch_activate ( Datum ,
double(*)(Point_process *)  ,
int  ,
Point_process ,
int  ,
double   
)

Definition at line 2431 of file netcvode.cpp.

◆ _nrn_watch_allocate()

void _nrn_watch_allocate ( Datum d,
double(*)(Point_process *)  c,
int  i,
Point_process pnt,
double  flag 
)

Introduced so corenrn->nrn can request the mod file to make sure all WatchCondition are allocated.

When that is the case then corenrn can call nrn_watch_activate with all args filled out because the allocated WatchCondition has double (*c)(Point_process) and flag_ filled in.

Definition at line 2515 of file netcvode.cpp.

◆ activclamp_lhs()

void activclamp_lhs ( void  )

Definition at line 180 of file clamp.cpp.

◆ activclamp_rhs()

void activclamp_rhs ( void  )

Definition at line 162 of file clamp.cpp.

◆ activstim_rhs()

void activstim_rhs ( void  )

Definition at line 159 of file fstim.cpp.

◆ activsynapse_lhs()

void activsynapse_lhs ( void  )

Definition at line 214 of file synapse.cpp.

◆ activsynapse_rhs()

void activsynapse_rhs ( void  )

Definition at line 204 of file synapse.cpp.

◆ add_nrn_fornetcons()

void add_nrn_fornetcons ( int  ,
int   
)

Definition at line 222 of file init.cpp.

◆ arc0at0()

int arc0at0 ( Section )

Definition at line 387 of file cabcode.cpp.

◆ cable_prop_assign()

void cable_prop_assign ( Symbol sym,
double *  pd,
int  op 
)

Definition at line 1602 of file cabcode.cpp.

◆ cable_prop_eval_pointer()

double* cable_prop_eval_pointer ( Symbol )

Definition at line 1538 of file cabcode.cpp.

◆ can_change_morph()

int can_change_morph ( Section )

Definition at line 1245 of file treeset.cpp.

◆ chk_access()

Section* chk_access ( void  )

Definition at line 437 of file cabcode.cpp.

◆ clamp_prepare()

void clamp_prepare ( void  )

Definition at line 144 of file clamp.cpp.

◆ clear_point_process_struct()

void clear_point_process_struct ( Prop p)

Definition at line 376 of file point.cpp.

◆ dprop()

double* dprop ( Symbol s,
int  indx,
Section sec,
short  inode 
)

Definition at line 2073 of file cabcode.cpp.

◆ ext_con_coef()

void ext_con_coef ( void  )

Definition at line 507 of file extcelln.cpp.

◆ extcell_2d_alloc()

void extcell_2d_alloc ( Section sec)

Definition at line 343 of file extcelln.cpp.

◆ extcell_node_create()

void extcell_node_create ( Node )

Definition at line 303 of file extcelln.cpp.

◆ extnode_free_elements()

void extnode_free_elements ( Extnode )

Definition at line 211 of file extcelln.cpp.

◆ hoc_level_pushsec()

void hoc_level_pushsec ( Section )

Definition at line 2375 of file cabcode.cpp.

◆ hoc_reg_ba()

void hoc_reg_ba ( int  ,
nrn_bamech_t  ,
int   
)

Definition at line 934 of file init.cpp.

◆ hoc_register_dparam_semantics()

void hoc_register_dparam_semantics ( int  ,
int  ,
const char *   
)

Definition at line 732 of file init.cpp.

◆ hoc_register_dparam_size()

void hoc_register_dparam_size ( int  ,
int   
)

◆ hoc_register_limits()

void hoc_register_limits ( int  ,
HocParmLimits  
)

Definition at line 892 of file init.cpp.

◆ hoc_register_tolerance()

void hoc_register_tolerance ( int  ,
HocStateTolerance ,
Symbol ***   
)

Definition at line 969 of file init.cpp.

◆ hoc_register_units()

void hoc_register_units ( int  ,
HocParmUnits  
)

Definition at line 913 of file init.cpp.

◆ hoc_section_pathname()

char* hoc_section_pathname ( Section )

Definition at line 1846 of file cabcode.cpp.

◆ hoc_symbol_tolerance()

void hoc_symbol_tolerance ( Symbol ,
double   
)

Definition at line 109 of file code2.cpp.

◆ is_point_process()

int is_point_process ( Object )

Definition at line 405 of file point.cpp.

◆ long_difus_solve()

void long_difus_solve ( int  method,
NrnThread nt 
)

Definition at line 98 of file ldifus.cpp.

◆ mech_insert1()

void mech_insert1 ( Section ,
int   
)

Definition at line 845 of file cabcode.cpp.

◆ mech_uninsert1()

void mech_uninsert1 ( Section sec,
Symbol s 
)

Definition at line 913 of file cabcode.cpp.

◆ modl_reg()

void modl_reg ( void  )

Needed for compilation.

Definition at line 393 of file inithoc.cpp.

◆ new_sections()

void new_sections ( Object ob,
Symbol sym,
hoc_Item **  pitm,
int  size 
)

◆ node_destruct()

void node_destruct ( Node **  ,
int   
)

Definition at line 661 of file solve.cpp.

◆ node_dist()

double node_dist ( Section ,
Node  
)

Definition at line 151 of file solve.cpp.

◆ node_exact()

Node* node_exact ( Section ,
double   
)

Definition at line 1956 of file cabcode.cpp.

◆ node_index()

int node_index ( Section sec,
double  x 
)

Definition at line 1470 of file cabcode.cpp.

◆ node_index_exact()

int node_index_exact ( Section ,
double   
)

Definition at line 1496 of file cabcode.cpp.

◆ node_ptr()

Node* node_ptr ( Section sec,
double  x,
double *  parea 
)

Definition at line 2003 of file cabcode.cpp.

◆ nrn_arc_position()

double nrn_arc_position ( Section ,
Node  
)

Definition at line 1880 of file cabcode.cpp.

◆ nrn_area_ri()

void nrn_area_ri ( Section sec)

Definition at line 773 of file treeset.cpp.

◆ nrn_at_beginning()

int nrn_at_beginning ( Section sec)

Definition at line 1656 of file cabcode.cpp.

◆ nrn_ba()

void nrn_ba ( NrnThread ,
int   
)

Definition at line 1041 of file fadvance.cpp.

◆ nrn_cache_prop_realloc()

void nrn_cache_prop_realloc ( )

Definition at line 572 of file cxprop.cpp.

◆ nrn_cachevec()

void nrn_cachevec ( int  )

Definition at line 2108 of file treeset.cpp.

◆ nrn_calc_fast_imem()

void nrn_calc_fast_imem ( NrnThread )

Definition at line 623 of file fadvance.cpp.

◆ nrn_call_mech_func()

double nrn_call_mech_func ( Symbol ,
int  narg,
Prop ,
int  type 
)

Definition at line 1060 of file init.cpp.

◆ nrn_cap_jacob()

void nrn_cap_jacob ( NrnThread ,
Memb_list  
)

Definition at line 32 of file capac.cpp.

◆ nrn_clear_mark()

void nrn_clear_mark ( void  )

Definition at line 450 of file solve.cpp.

◆ nrn_connection_position()

double nrn_connection_position ( Section )

Definition at line 1645 of file cabcode.cpp.

◆ nrn_diam_change()

void nrn_diam_change ( Section )

Definition at line 1201 of file treeset.cpp.

◆ nrn_disconnect()

void nrn_disconnect ( Section )

Definition at line 584 of file cabcode.cpp.

◆ nrn_errno_check()

int nrn_errno_check ( int  )

Definition at line 784 of file fadvance.cpp.

◆ nrn_exists()

int nrn_exists ( Symbol ,
Node  
)

Definition at line 1317 of file cabcode.cpp.

◆ nrn_fast_imem_alloc()

void nrn_fast_imem_alloc ( )

Definition at line 614 of file multicore.cpp.

◆ nrn_fihexec()

void nrn_fihexec ( int  )

Definition at line 36 of file finithnd.cpp.

◆ nrn_increment_mark()

short nrn_increment_mark ( Section )

Definition at line 456 of file solve.cpp.

◆ nrn_initcode()

void nrn_initcode ( )

Definition at line 72 of file cabcode.cpp.

◆ nrn_is_ion()

int nrn_is_ion ( int  )

Definition at line 45 of file eion.cpp.

◆ nrn_isecstack()

int nrn_isecstack ( void  )

Definition at line 54 of file cabcode.cpp.

◆ nrn_length_change()

void nrn_length_change ( Section ,
double   
)

Definition at line 1220 of file treeset.cpp.

◆ nrn_mechanism()

Prop* nrn_mechanism ( int  type,
Node  
)

Definition at line 1079 of file cabcode.cpp.

◆ nrn_mechanism_check()

Prop* nrn_mechanism_check ( int  type,
Section sec,
int  inode 
)

Definition at line 1092 of file cabcode.cpp.

◆ nrn_mk_prop_pools()

void nrn_mk_prop_pools ( int  )

Definition at line 255 of file cxprop.cpp.

◆ nrn_multisplit_ptr_update()

void nrn_multisplit_ptr_update ( void  )

Definition at line 1594 of file multisplit.cpp.

◆ nrn_node_destruct1()

void nrn_node_destruct1 ( Node )

Definition at line 629 of file solve.cpp.

◆ nrn_parent_info()

void nrn_parent_info ( Section s)

Definition at line 1689 of file cabcode.cpp.

◆ nrn_pointing()

int nrn_pointing ( double *  )

Definition at line 880 of file init.cpp.

◆ nrn_popsec()

void nrn_popsec ( void  )

Definition at line 122 of file cabcode.cpp.

◆ nrn_pt3dclear()

void nrn_pt3dclear ( Section ,
int   
)

Definition at line 1103 of file treeset.cpp.

◆ nrn_pushsec()

void nrn_pushsec ( Section )

Definition at line 97 of file cabcode.cpp.

◆ nrn_ra()

double nrn_ra ( Section )

Definition at line 392 of file cabcode.cpp.

◆ nrn_rangeconst()

void nrn_rangeconst ( Section ,
Symbol ,
double *  value,
int  op 
)

Definition at line 956 of file cabcode.cpp.

◆ nrn_rangepointer()

double* nrn_rangepointer ( Section ,
Symbol ,
double  x 
)

Definition at line 1334 of file cabcode.cpp.

◆ nrn_recalc_ptrs()

void nrn_recalc_ptrs ( double *(*)(double *)  r)

Definition at line 2178 of file treeset.cpp.

◆ nrn_recalc_ptrvector()

void nrn_recalc_ptrvector ( void  )

Definition at line 98 of file cachevec.cpp.

◆ nrn_relocate_old_points()

void nrn_relocate_old_points ( Section oldsec,
Node oldnode,
Section sec,
Node node 
)

Definition at line 162 of file point.cpp.

◆ nrn_rhs_ext()

void nrn_rhs_ext ( NrnThread )

Definition at line 360 of file extcelln.cpp.

◆ nrn_sec2cell()

Object* nrn_sec2cell ( Section )

Definition at line 224 of file cabcode.cpp.

◆ nrn_sec2cell_equals()

int nrn_sec2cell_equals ( Section ,
Object  
)

Definition at line 239 of file cabcode.cpp.

◆ nrn_sec2pysecname()

const char* nrn_sec2pysecname ( Section )

Definition at line 1821 of file cabcode.cpp.

◆ nrn_sec_pop()

Section* nrn_sec_pop ( void  )

Definition at line 743 of file cabcode.cpp.

◆ nrn_sec_ref()

void nrn_sec_ref ( Section **  ,
Section  
)

Definition at line 569 of file solve.cpp.

◆ nrn_secarg()

Section* nrn_secarg ( int  iarg)

Definition at line 50 of file seclist.cpp.

◆ nrn_secstack()

void nrn_secstack ( int  )

Definition at line 58 of file cabcode.cpp.

◆ nrn_section_orientation()

double nrn_section_orientation ( Section )

Definition at line 1651 of file cabcode.cpp.

◆ nrn_seg_or_x_arg()

void nrn_seg_or_x_arg ( int  iarg,
Section **  psec,
double *  px 
)

Definition at line 191 of file point.cpp.

◆ nrn_seg_or_x_arg2()

void nrn_seg_or_x_arg2 ( int  iarg,
Section **  psec,
double *  px 
)

Definition at line 207 of file point.cpp.

◆ nrn_setup_ext()

void nrn_setup_ext ( NrnThread )

Definition at line 438 of file extcelln.cpp.

◆ nrn_trueparent()

Section* nrn_trueparent ( Section )

Definition at line 1676 of file cabcode.cpp.

◆ nrn_update_ps2nt()

void nrn_update_ps2nt ( void  )

Definition at line 4850 of file netcvode.cpp.

◆ nrn_use_daspk()

void nrn_use_daspk ( int  )

Definition at line 309 of file netcvode.cpp.

◆ nrn_value_mark()

short nrn_value_mark ( Section )

Definition at line 457 of file solve.cpp.

◆ nrn_vartype()

int nrn_vartype ( Symbol )

Definition at line 488 of file eion.cpp.

◆ nrn_verify_ion_charge_defined()

void nrn_verify_ion_charge_defined ( )

Definition at line 232 of file eion.cpp.

◆ nrn_vext_pd()

double* nrn_vext_pd ( Symbol s,
int  indx,
Node nd 
)

Definition at line 2044 of file cabcode.cpp.

◆ nrniv_recalc_ptrs()

void nrniv_recalc_ptrs ( void  )

Definition at line 35 of file cachevec.cpp.

◆ nrnpy_dprop()

double* nrnpy_dprop ( Symbol s,
int  indx,
Section sec,
short  inode,
int err 
)

Definition at line 2105 of file cabcode.cpp.

◆ nrnpy_pysecname2sec()

Section* nrnpy_pysecname2sec ( const char *  )

Definition at line 40 of file pysecname2sec.cpp.

◆ nrnpy_pysecname2sec_add()

void nrnpy_pysecname2sec_add ( Section sec)

Definition at line 151 of file pysecname2sec.cpp.

◆ nrnpy_pysecname2sec_remove()

void nrnpy_pysecname2sec_remove ( Section sec)

Definition at line 172 of file pysecname2sec.cpp.

◆ nrnpy_sec2pysecname()

const char* nrnpy_sec2pysecname ( Section sec)

◆ ob_sec_access_push()

void ob_sec_access_push ( hoc_Item )

◆ oc_restore_cabcode()

void oc_restore_cabcode ( int a1,
int a2 
)

Definition at line 88 of file cabcode.cpp.

◆ oc_save_cabcode()

void oc_save_cabcode ( int a1,
int a2 
)

Definition at line 82 of file cabcode.cpp.

◆ prop_free()

void prop_free ( Prop **  )

Definition at line 724 of file treeset.cpp.

◆ recalc_diam()

void recalc_diam ( void  )

Definition at line 940 of file treeset.cpp.

◆ sec_and_position()

const char* sec_and_position ( Section sec,
Node nd 
)

Definition at line 1922 of file cabcode.cpp.

◆ sec_free()

void sec_free ( hoc_Item )

Definition at line 508 of file solve.cpp.

◆ secname()

const char* secname ( Section )

Definition at line 1787 of file cabcode.cpp.

◆ second_order_cur()

void second_order_cur ( NrnThread )

Definition at line 622 of file eion.cpp.

◆ section_order()

void section_order ( void  )

Definition at line 835 of file solve.cpp.

◆ section_ref()

void section_ref ( Section )

Definition at line 563 of file solve.cpp.

◆ section_unref()

void section_unref ( Section )

Definition at line 552 of file solve.cpp.

◆ SectionList_reg()

void SectionList_reg ( void  )

Definition at line 280 of file seclist.cpp.

◆ SectionRef_reg()

void SectionRef_reg ( void  )

Definition at line 365 of file secref.cpp.

◆ segment_limits()

int segment_limits ( double *  )

Definition at line 1934 of file cabcode.cpp.

◆ setup_topology()

void setup_topology ( void  )

Definition at line 1736 of file cabcode.cpp.

◆ single_prop_free()

void single_prop_free ( Prop )

Definition at line 736 of file treeset.cpp.

◆ special_pnt_call()

int special_pnt_call ( Object ,
Symbol ,
int   
)

Definition at line 96 of file hocmech.cpp.

◆ stim_prepare()

void stim_prepare ( void  )

Definition at line 151 of file fstim.cpp.

◆ stor_pt3d()

void stor_pt3d ( Section ,
double  x,
double  y,
double  z,
double  d 
)

Definition at line 1352 of file treeset.cpp.

◆ synapse_prepare()

void synapse_prepare ( void  )

Definition at line 196 of file synapse.cpp.

◆ topol_distance()

double topol_distance ( Section ,
Node ,
Section ,
Node ,
Section **  ,
Node **   
)

Definition at line 166 of file solve.cpp.

◆ v_setup_vectors()

void v_setup_vectors ( void  )

Definition at line 1623 of file treeset.cpp.

Variable Documentation

◆ nrn_netrec_state_adjust

int nrn_netrec_state_adjust

Definition at line 124 of file init.cpp.

◆ nrn_sparse_partrans

int nrn_sparse_partrans

Definition at line 125 of file init.cpp.

◆ nrn_use_fast_imem

int nrn_use_fast_imem

Definition at line 162 of file fadvance.cpp.

◆ section_object_seen

int section_object_seen

◆ state_discon_allowed_

int state_discon_allowed_

Definition at line 121 of file init.cpp.