NEURON
node_permute.cpp File Reference
#include <vector>
#include <utility>
#include <algorithm>
#include "nrnoc/multicore.h"
#include "oc/nrnassrt.h"
#include "node_order_optim/permute_utils.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).
 

Functions

static int neuron::nrn_soa_padded_size (int cnt, int layout)
 
static int neuron::nrn_i_layout (int icnt, int cnt, int isz, int sz, int layout)
 
template<typename T >
void neuron::permute (T *data, int cnt, int sz, int layout, int *p)
 
int * neuron::inverse_permute (int *p, int n)
 
static void neuron::invert_permute (int *p, int n)
 
void neuron::update_parent_index (int *vec, int vec_size, const std::vector< int > &permute)
 
void neuron::permute_ptr (int *vec, int n, int *p)
 
void neuron::permute_data (double *vec, int n, int *p)
 
static bool neuron::nrn_index_sort_cmp (const std::pair< int, int > &a, const std::pair< int, int > &b)
 
std::vector< int > neuron::nrn_index_sort (int *values, int n)
 
void neuron::sort_ml (Memb_list *ml)