summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorjan.reininghaus <jan.reininghaus@8e3bb3c2-eed4-f18f-5264-0b6c94e6926d>2013-04-23 15:29:46 +0000
committerjan.reininghaus <jan.reininghaus@8e3bb3c2-eed4-f18f-5264-0b6c94e6926d>2013-04-23 15:29:46 +0000
commit66cea4de50142ff60d4e5b79f7899ae4dbdb93b4 (patch)
tree7dd6d2fe515d0016b671989ed64bc51cd8e65598 /README
parent33e15d6aa9d5cfd1a51f740e2e743b9f9b5ffb0b (diff)
updated README
git-svn-id: https://phat.googlecode.com/svn/trunk@43 8e3bb3c2-eed4-f18f-5264-0b6c94e6926d
Diffstat (limited to 'README')
-rw-r--r--README5
1 files changed, 3 insertions, 2 deletions
diff --git a/README b/README
index 33e67b3..82201e4 100644
--- a/README
+++ b/README
@@ -36,10 +36,11 @@ class can be as important for the performance of the program as choosing the
algorithm. We provide the following choices of representation classes:
* {{{vector_vector}}}: Each column is represented as a sorted {{{std::vector}}} of integers, containing the indices of the non-zero entries of the column. The matrix itself is a {{{std::vector}}} of such columns.
- * {{{vector_set}}}: Each column is a {{{std::set}}} of integers, with the same meaning as before. The matrix is stored as a {{{std::vector}}} of such columns.
+ * {{{vector_set}}}: Each column is a {{{std::set}}} of integers, with the same meaning as above. The matrix is stored as a {{{std::vector}}} of such columns.
+ * {{{vector_list}}}: Each column is a sorted {{{std::list}}} of integers, with the same meaning as above. The matrix is stored as a {{{std::vector}}} of such columns.
* {{{sparse_pivot_column}}}: The matrix is stored as in the vector_vector representation. However, when a column is manipulated, it is first converted into a {{{std::set}}}, using an extra data field called the "pivot column". When another column is manipulated later, the pivot column is converted back to the {{{std::vector}}} representation. This can lead to speed improvements when many columns are added to a given pivot column consecutively. In a multicore setup, there is one pivot column per core.
* {{{full_pivot_column}}}: The same idea as in the sparse version. However, instead of a {{{std::set}}}, the pivot column is expanded into a bit vector of size n (the dimension of the matrix). To avoid costly initializations, the class remembers which entries have been manipulated for a pivot column and updates only those entries when another column becomes the pivot.
- * {{{bit_tree_pivot_column}}} (default representation): Similar to the {{{full_pivot_column}}} but the implementation is more efficient. Internally it is an bit-set with fast iteration over present elements, and fast access to the maximum element. The structure is initialized before the reduction algorithm is started and reused.
+ * {{{bit_tree_pivot_column}}} (default representation): Similar to the {{{full_pivot_column}}} but the implementation is more efficient. Internally it is a bit-set with fast iteration over present elements, and fast access to the maximum element. The structure is initialized before the reduction algorithm is started and reused.
There are two ways to interface with the library: