.. index:: pair: namespace; tum::device .. _doxid-namespacetum_1_1device: namespace tum::device ===================== .. toctree:: :hidden: Overview ~~~~~~~~ .. ref-code-block:: cpp :class: doxyrest-overview-code-block namespace device { // global functions bool :target:`bonded`(const int* deg, const int* cols, int nAtoms, int kMax, int a, int b); bool :target:`inSix`(const int* r, int atom); bool :target:`shareAtoms`(const int* a, const int* b); int :target:`commonCount`(const int* a, const int* b); bool :target:`commonInThree`(const int* a, const int* b, const int* c); bool :target:`shareNeigh`(const int* deg, const int* cols, int nAtoms, int kMax, int a, int b); int :ref:`hopsAtMost`(const int* deg, const int* cols, int nAtoms, int kMax, int a, int b, int cap); bool :ref:`hopBoundPrimitiveSix`(const int* r, const int* deg, const int* cols, int nAtoms, int kMax); bool :target:`basalNeighbours`(const int* deg, const int* cols, int nAtoms, int kMax, int n1, int n2, int atomOne, int atomTwo); bool :target:`notNeighboursOfRing`(const int* deg, const int* cols, int nAtoms, int kMax, const int* trip, const int* ring); bool :target:`basalConditions`(const int* deg, const int* cols, int nAtoms, int kMax, const int* b1, const int* b2); int :target:`firstRingThrough`(const int* A, int nA, const int* B, int nB, const int* C, int nC, int skipA, int skipB); int :target:`ringsThrough`(const int* A, int nA, const int* B, int nB, const int* C, int nC, int skipA, int skipB, int* out, int cap); int :target:`fetchAdd`(int* p); void :ref:`enumSixFrom`(int i, const int* deg, const int* cols, int nAtoms, int kMax, int maxRings, int* nRings, int* ringAtoms, int* dropped); void :target:`invertOneRing`(int r, const int* nRings, const int* ringAtoms, int nAtoms, int maxPer, int* throughCount, int* through); void :target:`sortThroughRow`(int* row, int n); void :target:`emitBasalFrom`(int i, const int* nRings, const int* ringAtoms, const int* deg, const int* cols, const int* throughCount, const int* through, int nAtoms, int kMax, int maxPer, int maxPairs, int* nPairs, int* pairs); void :target:`applyHcPair`(int p, const int* nPairs, const int* pairs, const int* ringAtoms, const int* throughCount, const int* through, int nAtoms, int maxPer, int* hc); void :target:`ddcFrom`(int i, const int* nRings, const int* ringAtoms, const int* throughCount, const int* through, const int* hc, int nAtoms, int maxPer, int* ddc); void :target:`atomIceFrom`(int r, const int* nRings, const int* ringAtoms, const int* hc, const int* ddc, int nAtoms, int* atomHc, int* atomDdc); } // namespace device .. _details-namespacetum_1_1device: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Global Functions ---------------- .. index:: pair: function; hopsAtMost .. _doxid-namespacetum_1_1device_1ae9a6f5c08baa53d7971e42539faeb3f1: .. ref-code-block:: cpp :class: doxyrest-title-code-block int hopsAtMost(const int* deg, const int* cols, int nAtoms, int kMax, int a, int b, int cap) Graph distance from a to b when it is at most cap, else -1. cap is 1 or 2: the Franzblau reject bound for a six-ring. .. index:: pair: function; hopBoundPrimitiveSix .. _doxid-namespacetum_1_1device_1adb611a8926577921d4770b84aacc5902: .. ref-code-block:: cpp :class: doxyrest-title-code-block bool hopBoundPrimitiveSix(const int* r, const int* deg, const int* cols, int nAtoms, int kMax) Hop-bounded Franzblau SP test on a six-cycle of the bond graph. .. index:: pair: function; enumSixFrom .. _doxid-namespacetum_1_1device_1a306c6a414e63cd34a04365f1e2b03d93: .. ref-code-block:: cpp :class: doxyrest-title-code-block void enumSixFrom(int i, const int* deg, const int* cols, int nAtoms, int kMax, int maxRings, int* nRings, int* ringAtoms, int* dropped) Enumerate hop-bound primitive six-rings whose lowest vertex is i.