NEURON
cellorder2.cpp File Reference
#include <cstdio>
#include <map>
#include <set>
#include <algorithm>
#include <cstring>
#include <numeric>
#include "oc/nrnassrt.h"
#include "coreneuron/permute/cellorder.hpp"
#include "coreneuron/network/tnode.hpp"

Go to the source code of this file.

Namespaces

 neuron
 In mechanism libraries, cannot use auto const token = nrn_ensure_model_data_are_sorted(); because the return type is incomplete (from include/neuron/model_data.hpp).
 

Typedefs

using neuron::VTN = VecTNode
 
using neuron::VVTN = std::vector< VTN >
 
using neuron::VVVTN = std::vector< VVTN >
 

Functions

void neuron::chklevel (VTN &level, size_t nident=8)
 
static bool neuron::sortlevel_cmp (TNode *a, TNode *b)
 
static void neuron::sortlevel (VTN &level)
 
static void neuron::set_treenode_order (VVTN &levels)
 
static bool neuron::is_parent_race2 (TNode *nd)
 
static bool neuron::is_child_race2 (TNode *nd)
 
size_t neuron::dist2child (TNode *nd)
 
template<typename T >
static void neuron::move_range (size_t start, size_t length, size_t dst, std::vector< T > &v)
 
static void neuron::move_nodes (size_t start, size_t length, size_t dst, VTN &nodes)
 
static size_t neuron::next_leaf (TNode *nd, VTN &nodes)
 
static void neuron::checkrace (TNode *nd, VTN &nodes)
 
static bool neuron::eliminate_race (TNode *nd, size_t d, VTN &nodes, TNode *look)
 
static void neuron::eliminate_prace (TNode *nd, VTN &nodes)
 
static void neuron::eliminate_crace (TNode *nd, VTN &nodes)
 
static void neuron::question2 (VVTN &levels)
 
static void neuron::analyze (VVTN &levels)
 
void neuron::prgroupsize (VVVTN &groups)
 
static bool neuron::final_nodevec_cmp (TNode *a, TNode *b)
 
static void neuron::set_nodeindex (VecTNode &nodevec)
 
void neuron::group_order2 (VecTNode &, size_t groupsize, size_t ncell)
 Implementation of the advanced interleaving strategy (interleave_permute_type == 2) More...