Class managing the vine swaps for RU_matrix.
More...
#include <gudhi/Persistence_matrix/ru_vine_swap.h>
|
using | Index = typename Master_matrix::Index |
|
using | ID_index = typename Master_matrix::ID_index |
|
using | Pos_index = typename Master_matrix::Pos_index |
|
|
| RU_vine_swap () |
| Default constructor.
|
|
| RU_vine_swap (const RU_vine_swap &matrixToCopy) |
| Copy constructor. More...
|
|
| RU_vine_swap (RU_vine_swap &&other) noexcept |
| Move constructor. More...
|
|
bool | vine_swap_with_z_eq_1_case (Pos_index index) |
| Does the same than vine_swap, but assumes that the swap is non trivial and therefore skips a part of the case study. More...
|
|
bool | vine_swap (Pos_index index) |
| Does a vine swap between two cells which are consecutive in the filtration. Roughly, if \( F \) is the current filtration represented by the matrix, the method modifies the matrix such that the new state corresponds to a valid state for the filtration \( F' \) equal to \( F \) but with the two cells at position position and position + 1 swapped. Of course, the two cells should not have a face/coface relation which each other ; \( F' \) has to be a valid filtration. See [21] for more information about vine and vineyards. More...
|
|
RU_vine_swap & | operator= (RU_vine_swap other) |
| Assign operator.
|
|
template<class Master_matrix>
class Gudhi::persistence_matrix::RU_vine_swap< Master_matrix >
Class managing the vine swaps for RU_matrix.
- Template Parameters
-
Master_matrix | An instantiation of Matrix from which all types and options are deduced. |
◆ ID_index
template<class Master_matrix >
◆ Index
template<class Master_matrix >
◆ Pos_index
template<class Master_matrix >
◆ RU_vine_swap() [1/2]
template<class Master_matrix >
Copy constructor.
- Parameters
-
◆ RU_vine_swap() [2/2]
template<class Master_matrix >
Move constructor.
- Parameters
-
◆ vine_swap()
template<class Master_matrix >
Does a vine swap between two cells which are consecutive in the filtration. Roughly, if \( F \) is the current filtration represented by the matrix, the method modifies the matrix such that the new state corresponds to a valid state for the filtration \( F' \) equal to \( F \) but with the two cells at position position
and position + 1
swapped. Of course, the two cells should not have a face/coface relation which each other ; \( F' \) has to be a valid filtration. See [21] for more information about vine and vineyards.
- Parameters
-
index | PosIdx index of the first cell to swap. The second one has to be at position + 1 . |
- Returns
- true If the barcode changed from the swap.
-
false Otherwise.
◆ vine_swap_with_z_eq_1_case()
template<class Master_matrix >
Does the same than vine_swap, but assumes that the swap is non trivial and therefore skips a part of the case study.
- Parameters
-
index | PosIdx index of the first cell to swap. The second one has to be at position + 1 . |
- Returns
- true If the barcode changed from the swap.
-
false Otherwise.
The documentation for this class was generated from the following file: