Package: nat.fastcore 0.5.0

nat.fastcore: Re-implementation of nat core functions in Rust

A re-implementation of core 'nat' (Neuroanatomy Toolbox) functions in Rust for speed. Provides fast skeleton/tree (DAG) operations (geodesic distances, Strahler order, segment generation, twig pruning, synapse flow centrality, node classification, skeleton healing), mesh connected components, and NBLAST/synNBLAST neuron similarity scoring, exposed to R via extendr.

Authors:Philipp Schlegel [aut, cre]

nat.fastcore_0.5.0.tar.gz
nat.fastcore_0.5.0.zip(r-4.7)nat.fastcore_0.5.0.zip(r-4.6)nat.fastcore_0.5.0.zip(r-4.5)
nat.fastcore_0.5.0.tgz(r-4.6-x86_64)nat.fastcore_0.5.0.tgz(r-4.6-arm64)nat.fastcore_0.5.0.tgz(r-4.5-x86_64)nat.fastcore_0.5.0.tgz(r-4.5-arm64)
nat.fastcore_0.5.0.tar.gz(r-4.7-arm64)nat.fastcore_0.5.0.tar.gz(r-4.7-x86_64)nat.fastcore_0.5.0.tar.gz(r-4.6-arm64)nat.fastcore_0.5.0.tar.gz(r-4.6-x86_64)
manual.pdf |manual.html
DESCRIPTION
card.svg |card.png
nat.fastcore/json (API)

# Install 'nat.fastcore' in R:
install.packages('nat.fastcore', repos = c('https://schlegelp.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/schlegelp/fastcore-rs/issues

On CRAN:

Conda:

dagnavisneuronsrustcargo

3.00 score 2 stars 1 scripts 2 mentions 25 exports 0 dependencies

Last updated from:56dbffdea7. Checks:8 OK, 4 WARNING, 1 FAIL. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-arm64OK153
linux-devel-x86_64OK183
source / vignettesOK184
linux-release-arm64OK169
linux-release-x86_64OK144
macos-release-arm64WARNING104
macos-release-x86_64WARNING213
macos-oldrel-arm64WARNING106
macos-oldrel-x86_64WARNING301
windows-develOK166
windows-releaseOK167
windows-oldrelOK171
wasm-releaseFAIL111

Exports:all_dists_to_rootbreak_segmentschild_to_parent_distsclassify_nodesconnected_componentsdist_to_rootgenerate_segmentsgeodesic_distancesgeodesic_nearestgeodesic_pairshas_cyclesheal_skeletonmesh_connected_componentsnblastnblast_allbyallnblast_pairsnode_indicesprune_twigsreroot_rewiresmat_auto_limitstitch_fragmentsstrahler_indexsynapse_flow_centralitysynblastsynblast_allbyall

Dependencies:

Readme and manuals

Help Manual

Help pageTopics
Compute all distances to root.all_dists_to_root
Break the tree into its linear segments (one integer vector per segment).break_segments
Calculate child -> parent distances.child_to_parent_dists
Classify nodes into roots (0), leaves (1), branch points (2) and slabs (3).classify_nodes
Connected components.connected_components
Return path length from a single node to the root.dist_to_root
Generate linear segments while maximising segment lengths.generate_segments
Geodesic distances between nodes.geodesic_distances
Distance to the nearest target for each source.geodesic_nearest
Geodesic distances for explicit pairs of nodes.geodesic_pairs
Check whether the tree contains cycles.has_cycles
Heal a fragmented skeleton by reconnecting its fragments.heal_skeleton
Find connected components of a triangle mesh.mesh_connected_components
Forward NBLAST of every query neuron against every target neuron.nblast
All-by-all forward NBLAST.nblast_allbyall
Forward NBLAST for a set of (query, target) index pairs.nblast_pairs
For each node ID in 'parents' find its index in 'nodes'.node_indices
Prune twigs below given threshold.prune_twigs
Regenerate a parent vector after adding a set of undirected edges.reroot_rewire
The 'limit_dist="auto"' value for a scoring matrix.smat_auto_limit
Find the minimal-length edges that reconnect the fragments of a skeleton.stitch_fragments
Calculate Strahler Index.strahler_index
Synapse flow centrality for each node.synapse_flow_centrality
Forward syNBLAST of every query neuron against every target neuron.synblast
All-by-all forward syNBLAST over synapse clouds.synblast_allbyall