kdtree

Bindings for numeric::kdtree namespace

class pyrosetta.rosetta.numeric.kdtree.KDPointList

Bases: pybind11_builtins.pybind11_object

Class for keeping track of the closest N KDPoint objects by distance.

assign(self: pyrosetta.rosetta.numeric.kdtree.KDPointList, : pyrosetta.rosetta.numeric.kdtree.KDPointList) → pyrosetta.rosetta.numeric.kdtree.KDPointList

C++: numeric::kdtree::KDPointList::operator=(const class numeric::kdtree::KDPointList &) –> class numeric::kdtree::KDPointList &

begin(self: pyrosetta.rosetta.numeric.kdtree.KDPointList) → __gnu_cxx::__normal_iterator<std::shared_ptr<numeric::kdtree::KDPoint>*, std::vector<std::shared_ptr<numeric::kdtree::KDPoint>, std::allocator<std::shared_ptr<numeric::kdtree::KDPoint> > > >

C++: numeric::kdtree::KDPointList::begin() –> class __gnu_cxx::__normal_iterator<class std::shared_ptr<class numeric::kdtree::KDPoint> *, class std::vector<class std::shared_ptr<class numeric::kdtree::KDPoint>, class std::allocator<class std::shared_ptr<class numeric::kdtree::KDPoint> > > >

distance_cutoff(*args, **kwargs)

Overloaded function.

  1. distance_cutoff(self: pyrosetta.rosetta.numeric.kdtree.KDPointList) -> float

C++: numeric::kdtree::KDPointList::distance_cutoff() const –> double

  1. distance_cutoff(self: pyrosetta.rosetta.numeric.kdtree.KDPointList, cutoff: float) -> None

C++: numeric::kdtree::KDPointList::distance_cutoff(const double) –> void

end(self: pyrosetta.rosetta.numeric.kdtree.KDPointList) → __gnu_cxx::__normal_iterator<std::shared_ptr<numeric::kdtree::KDPoint>*, std::vector<std::shared_ptr<numeric::kdtree::KDPoint>, std::allocator<std::shared_ptr<numeric::kdtree::KDPoint> > > >

C++: numeric::kdtree::KDPointList::end() –> class __gnu_cxx::__normal_iterator<class std::shared_ptr<class numeric::kdtree::KDPoint> *, class std::vector<class std::shared_ptr<class numeric::kdtree::KDPoint>, class std::allocator<class std::shared_ptr<class numeric::kdtree::KDPoint> > > >

insert(self: pyrosetta.rosetta.numeric.kdtree.KDPointList, pt: pyrosetta.rosetta.numeric.kdtree.KDPoint) → None

C++: numeric::kdtree::KDPointList::insert(class std::shared_ptr<class numeric::kdtree::KDPoint>) –> void

max_values(self: pyrosetta.rosetta.numeric.kdtree.KDPointList) → int

C++: numeric::kdtree::KDPointList::max_values() const –> unsigned long

merge(self: pyrosetta.rosetta.numeric.kdtree.KDPointList, other: pyrosetta.rosetta.numeric.kdtree.KDPointList) → None
merge another KDPointList with this KDPointList.
This calls insert which is a little slow, and is a candidate for optimization if the insert() method shows up in profiling.

C++: numeric::kdtree::KDPointList::merge(const class numeric::kdtree::KDPointList &) –> void

show(self: pyrosetta.rosetta.numeric.kdtree.KDPointList, out: pyrosetta.rosetta.std.ostream) → None

C++: numeric::kdtree::KDPointList::show(class std::basic_ostream<char> &) const –> void

size(self: pyrosetta.rosetta.numeric.kdtree.KDPointList) → int

C++: numeric::kdtree::KDPointList::size() const –> unsigned long

sorted_values(self: pyrosetta.rosetta.numeric.kdtree.KDPointList) → pyrosetta.rosetta.utility.vector1_std_shared_ptr_numeric_kdtree_KDPoint_t

C++: numeric::kdtree::KDPointList::sorted_values() –> class utility::vector1<class std::shared_ptr<class numeric::kdtree::KDPoint>, class std::allocator<class std::shared_ptr<class numeric::kdtree::KDPoint> > >

worst_distance(self: pyrosetta.rosetta.numeric.kdtree.KDPointList) → float

C++: numeric::kdtree::KDPointList::worst_distance() const –> double

pyrosetta.rosetta.numeric.kdtree.construct_kd_tree(points: pyrosetta.rosetta.utility.vector1_std_shared_ptr_numeric_kdtree_KDPoint_t, depth: int, tree: pyrosetta.rosetta.numeric.kdtree.KDTree) → pyrosetta.rosetta.numeric.kdtree.KDNode
Function for constructing a KDTree. Returns a KDNodeOP that
represents the root of the tree. Points need to be sorted as the tree is being constructed, so the reference to the points is non-const.

C++: numeric::kdtree::construct_kd_tree(class utility::vector1<class std::shared_ptr<class numeric::kdtree::KDPoint>, class std::allocator<class std::shared_ptr<class numeric::kdtree::KDPoint> > > &, unsigned long, class numeric::kdtree::KDTree &) –> class std::shared_ptr<class numeric::kdtree::KDNode>

pyrosetta.rosetta.numeric.kdtree.get_percentile_bounds(points: pyrosetta.rosetta.utility.vector1_utility_vector1_double_std_allocator_double_t) → pyrosetta.rosetta.numeric.kdtree.HyperRectangle

C++: numeric::kdtree::get_percentile_bounds(class utility::vector1<class utility::vector1<double, class std::allocator<double> >, class std::allocator<class utility::vector1<double, class std::allocator<double> > > > &) –> class std::shared_ptr<class numeric::kdtree::HyperRectangle>

pyrosetta.rosetta.numeric.kdtree.hr_intersects_hs(hr: pyrosetta.rosetta.numeric.kdtree.HyperRectangle, pt: pyrosetta.rosetta.utility.vector1_double, r: float) → bool
returns true if the given hyper-rectangle intersects with the given
hypersphere.

C++: numeric::kdtree::hr_intersects_hs(class numeric::kdtree::HyperRectangle, const class utility::vector1<double, class std::allocator<double> > &, const double) –> bool

C++: numeric::kdtree::is_legal_greater_than(const class std::shared_ptr<class numeric::kdtree::KDNode> &, const unsigned long, const double) –> bool

C++: numeric::kdtree::is_legal_kdtree_below_node(const class std::shared_ptr<class numeric::kdtree::KDNode> &) –> bool

C++: numeric::kdtree::is_legal_less_than(const class std::shared_ptr<class numeric::kdtree::KDNode> &, const unsigned long, const double) –> bool

pyrosetta.rosetta.numeric.kdtree.make_points(points: pyrosetta.rosetta.utility.vector1_utility_vector1_double_std_allocator_double_t) → pyrosetta.rosetta.utility.vector1_std_shared_ptr_numeric_kdtree_KDPoint_t

Makes a vector of KDPoints.

C++: numeric::kdtree::make_points(const class utility::vector1<class utility::vector1<double, class std::allocator<double> >, class std::allocator<class utility::vector1<double, class std::allocator<double> > > > &) –> class utility::vector1<class std::shared_ptr<class numeric::kdtree::KDPoint>, class std::allocator<class std::shared_ptr<class numeric::kdtree::KDPoint> > >

pyrosetta.rosetta.numeric.kdtree.nearest_neighbor(*args, **kwargs)

Overloaded function.

  1. nearest_neighbor(tree: pyrosetta.rosetta.numeric.kdtree.KDTree, pt: pyrosetta.rosetta.utility.vector1_double, nearest: pyrosetta.rosetta.numeric.kdtree.KDNode, dist_sq: float) -> None
Searches the KDtree for the nearest neigbor to a given input point,
returns nearest neighbor and distance-squared to nearest neigbor by reference.

C++: numeric::kdtree::nearest_neighbor(class numeric::kdtree::KDTree &, const class utility::vector1<double, class std::allocator<double> > &, class std::shared_ptr<class numeric::kdtree::KDNode> &, double &) –> void

  1. nearest_neighbor(current: pyrosetta.rosetta.numeric.kdtree.KDNode, pt: pyrosetta.rosetta.utility.vector1_double, bounds: pyrosetta.rosetta.numeric.kdtree.HyperRectangle, max_dist_sq: float, nearest: pyrosetta.rosetta.numeric.kdtree.KDNode, dist_sq: float) -> None

returns the nearest neighbor to the given point.

Parameters are (in order): - current: the base of the tree - pt: the point that is being searched against the tree - bounds: hyper-rectangle in k-space that bounds all points in the tree - max_dist_sq: maximum squared distance that we care about.

  • nearest neighbor (returned by reference)
  • squared distance to the nearest neighbor

C++: numeric::kdtree::nearest_neighbor(class std::shared_ptr<class numeric::kdtree::KDNode> &, const class utility::vector1<double, class std::allocator<double> > &, class numeric::kdtree::HyperRectangle &, double, class std::shared_ptr<class numeric::kdtree::KDNode> &, double &) –> void

pyrosetta.rosetta.numeric.kdtree.nearest_neighbors(*args, **kwargs)

Overloaded function.

  1. nearest_neighbors(tree: pyrosetta.rosetta.numeric.kdtree.KDTree, pt: pyrosetta.rosetta.utility.vector1_double, wanted: int) -> pyrosetta.rosetta.numeric.kdtree.KDPointList
Returns a KDPointList of the N nearest neighbors from the KDTree to
the given input point.

C++: numeric::kdtree::nearest_neighbors(class numeric::kdtree::KDTree &, const class utility::vector1<double, class std::allocator<double> > &, const unsigned long) –> class numeric::kdtree::KDPointList

  1. nearest_neighbors(tree: pyrosetta.rosetta.numeric.kdtree.KDTree, pt: pyrosetta.rosetta.utility.vector1_double, wanted: int, max_dist_allowed: float) -> pyrosetta.rosetta.numeric.kdtree.KDPointList

C++: numeric::kdtree::nearest_neighbors(class numeric::kdtree::KDTree &, const class utility::vector1<double, class std::allocator<double> > &, const unsigned long, const double) –> class numeric::kdtree::KDPointList

  1. nearest_neighbors(current: pyrosetta.rosetta.numeric.kdtree.KDNode, pt: pyrosetta.rosetta.utility.vector1_double, bounds: pyrosetta.rosetta.numeric.kdtree.HyperRectangle, max_dist_sq: float, neighbors: pyrosetta.rosetta.numeric.kdtree.KDPointList) -> None
Recursive function definition for search for a list of the N nearest
neighbors, where N is defined as a member variable of the KDPointList object.

C++: numeric::kdtree::nearest_neighbors(class std::shared_ptr<class numeric::kdtree::KDNode> &, const class utility::vector1<double, class std::allocator<double> > &, class numeric::kdtree::HyperRectangle &, double, class numeric::kdtree::KDPointList &) –> void

pyrosetta.rosetta.numeric.kdtree.print_point(out: pyrosetta.rosetta.std.ostream, point: pyrosetta.rosetta.utility.vector1_double) → None

C++: numeric::kdtree::print_point(class std::basic_ostream<char> &, const class utility::vector1<double, class std::allocator<double> > &) –> void

pyrosetta.rosetta.numeric.kdtree.print_points(out: pyrosetta.rosetta.std.ostream, points: pyrosetta.rosetta.utility.vector1_utility_vector1_double_std_allocator_double_t) → None

C++: numeric::kdtree::print_points(class std::basic_ostream<char> &, const class utility::vector1<class utility::vector1<double, class std::allocator<double> >, class std::allocator<class utility::vector1<double, class std::allocator<double> > > > &) –> void

pyrosetta.rosetta.numeric.kdtree.print_tree(*args, **kwargs)

Overloaded function.

  1. print_tree(out: pyrosetta.rosetta.std.ostream, current: pyrosetta.rosetta.numeric.kdtree.KDNode, current_depth: int) -> None
  2. print_tree(out: pyrosetta.rosetta.std.ostream, current: pyrosetta.rosetta.numeric.kdtree.KDNode, current_depth: int, width: int) -> None

C++: numeric::kdtree::print_tree(class std::basic_ostream<char> &, const class std::shared_ptr<class numeric::kdtree::KDNode> &, unsigned long, const unsigned long) –> void

pyrosetta.rosetta.numeric.kdtree.sq_vec_distance(vec1: pyrosetta.rosetta.utility.vector1_double, vec2: pyrosetta.rosetta.utility.vector1_double) → float
Returns the square of the Euclidean distance between the two points
vec1 and vec2.

C++: numeric::kdtree::sq_vec_distance(const class utility::vector1<double, class std::allocator<double> > &, const class utility::vector1<double, class std::allocator<double> > &) –> double

pyrosetta.rosetta.numeric.kdtree.transform_percentile(*args, **kwargs)

Overloaded function.

  1. transform_percentile(points: pyrosetta.rosetta.utility.vector1_utility_vector1_double_std_allocator_double_t) -> None
Transforms the list of points given into percentiles using

a linear mapping from the input space to percentile-space for each variable.

For each variable X in row R, replaces X with the quantity ( X - min(R) ) / ( max(R) - min(R) ). Runs in O(N) time.

C++: numeric::kdtree::transform_percentile(class utility::vector1<class utility::vector1<double, class std::allocator<double> >, class std::allocator<class utility::vector1<double, class std::allocator<double> > > > &) –> void

  1. transform_percentile(points: pyrosetta.rosetta.utility.vector1_utility_vector1_double_std_allocator_double_t, bounds: pyrosetta.rosetta.numeric.kdtree.HyperRectangle) -> None

C++: numeric::kdtree::transform_percentile(class utility::vector1<class utility::vector1<double, class std::allocator<double> >, class std::allocator<class utility::vector1<double, class std::allocator<double> > > > &, class std::shared_ptr<class numeric::kdtree::HyperRectangle>) –> void

pyrosetta.rosetta.numeric.kdtree.transform_percentile_single_pt(point: pyrosetta.rosetta.utility.vector1_double, bounds: pyrosetta.rosetta.numeric.kdtree.HyperRectangle) → None

C++: numeric::kdtree::transform_percentile_single_pt(class utility::vector1<double, class std::allocator<double> > &, class std::shared_ptr<class numeric::kdtree::HyperRectangle>) –> void

pyrosetta.rosetta.numeric.kdtree.vec_distance(vec1: pyrosetta.rosetta.utility.vector1_double, vec2: pyrosetta.rosetta.utility.vector1_double) → float

Returns the Euclidean distance between the two points vec1 and vec2.

C++: numeric::kdtree::vec_distance(const class utility::vector1<double, class std::allocator<double> > &, const class utility::vector1<double, class std::allocator<double> > &) –> double