gaioguys / GAIO.jl

A Julia package for set oriented computations.
MIT License
9 stars 4 forks source link

Add chain recurrent set algorithm and knotted flow example #1

Closed FrederikSchnack closed 4 years ago

FrederikSchnack commented 4 years ago

This branch contains the chain recurrent set algorithm and knotted flow example.

For the calculation of the graph, this includes the function map_boxes_to_edges(g::BoxMap, source::BoxSet), wherein we define a arbitrary ordering of the boxes in a boxset. The same idea can be used to calculate the transition matrix quite easily. However, depending on the need, we could also introduce a ordering of the boxes in a boxset in GAIO itself. This should be discussed.

gaioguy commented 4 years ago

As it stands, a BoxSet is unordered, so by assigning an ordering, we introduce additional structure. We do not necessarily need this when constructing a graph (i.e. for computing strongly connected components), but we do need it when computing a transition (probability) matrix. The problem is - and this has been a problem since the early days - that the information that one typically computes from a transition matrix (e.g. eigenvectors) is later linked back to the BoxSet (by, e.g., assiging a color to each Boxaccording to the corresponding entry in the eigenvector), so one must not change the BoxSet in the meantime or otherwise the information from the transition matrix is no longer valid for the BoxSet. So the question is whether we should somehow 'tie' a transition matrix to a BoxSet, i.e. whether we should define something like BoxTransitionMatrix which, e.g., takes a BoxSet and a BoxMap for construction.

cafaxo commented 4 years ago

Please put this comment into an issue.