NEURON
solve.cpp File Reference
#include <../../nrnconf.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <nrnmpiuse.h>
#include "section.h"
#include "membdef.h"
#include "membfunc.h"
#include "spmatrix.h"

Go to the source code of this file.

Functions

static void node_free ()
 
static void triang (NrnThread *)
 
static void bksub (NrnThread *)
 
double node_dist (Section *sec, Node *node)
 
double topol_distance (Section *sec1, Node *node1, Section *sec2, Node *node2, Section **prootsec, Node **prootnode)
 
void distance (void)
 
static void dashes (Section *sec, int offset, int first)
 
void nrnhoc_topology (void)
 
void nrn_solve (NrnThread *_nt)
 
void nrn_clear_mark (void)
 
short nrn_increment_mark (Section *sec)
 
short nrn_value_mark (Section *sec)
 
Sectionsec_alloc (void)
 
static void node_free (Section *sec)
 
static void section_unlink (Section *sec)
 
void sec_free (hoc_Item *secitem)
 
void section_unref (Section *sec)
 
void section_ref (Section *sec)
 
void nrn_sec_ref (Section **psec, Section *sec)
 
Node ** node_construct (int n)
 
Nodenrn_node_construct1 (void)
 
void nrn_node_destruct1 (Node *nd)
 
void node_destruct (Node **pnode, int n)
 
static Nodenode_clone (Node *nd1)
 
static Nodenode_interp (Node *nd1, Node *nd2, double frac)
 
static void node_realloc (Section *sec, short nseg)
 
void node_alloc (Section *sec, short nseg)
 
void section_order (void)
 
 if (secorder)
 
 if (section_count)
 
 ForAllSections (sec) if(!sec -> parentsec)
 
 for (isec=0;isec< section_count;isec++)
 
 for (ch=sec->child;ch;ch=ch->sibling)
 
 assert (order==section_count)
 

Variables

int tree_changed
 
void(* nrn_multisplit_solve_ )()
 
void(* nrnpy_o2loc_p_ )(Object *, Section **, double *)
 
void(* nrnpy_o2loc2_p_ )(Object *, Section **, double *)
 
int section_count
 
Section ** secorder
 
static Sectionorigin_sec
 
int keep_nseg_parm_
 
 order = 0
 
 sec = secorder[isec]
 

Function Documentation

◆ assert()

assert ( order  = =section_count)

◆ bksub()

void bksub ( NrnThread _nt)

Definition at line 419 of file solve.cpp.

◆ dashes()

static void dashes ( Section sec,
int  offset,
int  first 
)
static

Definition at line 296 of file solve.cpp.

◆ distance()

void distance ( void  )

Definition at line 222 of file solve.cpp.

◆ for() [1/2]

for ( )

Definition at line 867 of file solve.cpp.

◆ for() [2/2]

for ( ch  = sec->child; ch; ch = ch->sibling)

Definition at line 886 of file solve.cpp.

◆ ForAllSections()

ForAllSections ( sec  ) -> parentsec)

Definition at line 859 of file solve.cpp.

◆ if() [1/2]

if ( secorder  )

Definition at line 851 of file solve.cpp.

◆ if() [2/2]

if ( section_count  )

Definition at line 855 of file solve.cpp.

◆ node_alloc()

void node_alloc ( Section sec,
short  nseg 
)

Definition at line 814 of file solve.cpp.

◆ node_clone()

static Node* node_clone ( Node nd1)
static

Definition at line 678 of file solve.cpp.

◆ node_construct()

Node** node_construct ( int  n)

Definition at line 593 of file solve.cpp.

◆ node_destruct()

void node_destruct ( Node **  pnode,
int  n 
)

Definition at line 661 of file solve.cpp.

◆ node_dist()

double node_dist ( Section sec,
Node node 
)

Definition at line 151 of file solve.cpp.

◆ node_free() [1/2]

static void node_free ( )
static

◆ node_free() [2/2]

static void node_free ( Section sec)
static

Definition at line 490 of file solve.cpp.

◆ node_interp()

static Node* node_interp ( Node nd1,
Node nd2,
double  frac 
)
static

Definition at line 727 of file solve.cpp.

◆ node_realloc()

static void node_realloc ( Section sec,
short  nseg 
)
static

Definition at line 738 of file solve.cpp.

◆ nrn_clear_mark()

void nrn_clear_mark ( void  )

Definition at line 450 of file solve.cpp.

◆ nrn_increment_mark()

short nrn_increment_mark ( Section sec)

Definition at line 456 of file solve.cpp.

◆ nrn_node_construct1()

Node* nrn_node_construct1 ( void  )

Definition at line 620 of file solve.cpp.

◆ nrn_node_destruct1()

void nrn_node_destruct1 ( Node nd)

Definition at line 629 of file solve.cpp.

◆ nrn_sec_ref()

void nrn_sec_ref ( Section **  psec,
Section sec 
)

Definition at line 569 of file solve.cpp.

◆ nrn_solve()

void nrn_solve ( NrnThread _nt)

Definition at line 328 of file solve.cpp.

◆ nrn_value_mark()

short nrn_value_mark ( Section sec)

Definition at line 457 of file solve.cpp.

◆ nrnhoc_topology()

void nrnhoc_topology ( void  )

Definition at line 279 of file solve.cpp.

◆ sec_alloc()

Section* sec_alloc ( void  )

Definition at line 461 of file solve.cpp.

◆ sec_free()

void sec_free ( hoc_Item secitem)

Definition at line 508 of file solve.cpp.

◆ section_order()

void section_order ( void  )

Definition at line 835 of file solve.cpp.

◆ section_ref()

void section_ref ( Section sec)

Definition at line 563 of file solve.cpp.

◆ section_unlink()

static void section_unlink ( Section sec)
static

Definition at line 581 of file solve.cpp.

◆ section_unref()

void section_unref ( Section sec)

Definition at line 552 of file solve.cpp.

◆ topol_distance()

double topol_distance ( Section sec1,
Node node1,
Section sec2,
Node node2,
Section **  prootsec,
Node **  prootnode 
)

Definition at line 166 of file solve.cpp.

◆ triang()

void triang ( NrnThread _nt)
static

Definition at line 391 of file solve.cpp.

Variable Documentation

◆ keep_nseg_parm_

int keep_nseg_parm_

Definition at line 1553 of file cabcode.cpp.

◆ nrn_multisplit_solve_

void(* nrn_multisplit_solve_) ()

Definition at line 71 of file solve.cpp.

◆ nrnpy_o2loc2_p_

void(* nrnpy_o2loc2_p_) (Object *, Section **, double *)

Definition at line 30 of file point.cpp.

◆ nrnpy_o2loc_p_

void(* nrnpy_o2loc_p_) (Object *, Section **, double *)

Definition at line 29 of file point.cpp.

◆ order

order = 0

Definition at line 858 of file solve.cpp.

◆ origin_sec

Section* origin_sec
static

Definition at line 220 of file solve.cpp.

◆ sec

sec = secorder[isec]

Definition at line 885 of file solve.cpp.

◆ secorder

Section** secorder

Definition at line 77 of file solve.cpp.

◆ section_count

int section_count

Definition at line 76 of file solve.cpp.

◆ tree_changed

int tree_changed

Definition at line 19 of file cabcode.cpp.