codac 1.5.6
Loading...
Searching...
No Matches
codac_TPlane.h
Go to the documentation of this file.
1
12#ifndef __CODAC_TPLANE_H__
13#define __CODAC_TPLANE_H__
14
15#include "codac_Paving.h"
16#include "codac_TubeVector.h"
18
19namespace codac
20{
43 class TPlane : public Paving
44 {
45 public:
46
52 TPlane(const Interval& tdomain);
53
54 TPlane(const TPlane& t);
55
56 TPlane(const TPlane* t, const Paving* p);
57
62
63 TPlane& operator=(const TPlane& t);
64
73 void compute_loops(float precision, const TubeVector& p, const TubeVector& v);
74
81 void compute_detections(float precision, const TubeVector& p);
82
91 void compute_detections(float precision, const TubeVector& p, const TubeVector& v);
92
101
110 void compute_proofs(const TubeVector& p, const TubeVector& v);
111
120
128 int nb_loops_proofs() const;
129
137 const std::vector<ConnectedSubset>& detected_loops_subsets() const;
138
146 const std::vector<IntervalVector> detected_loops() const;
147
155 const std::vector<ConnectedSubset>& proven_loops_subsets() const;
156
164 const std::vector<IntervalVector> proven_loops() const;
165
175
181 static void verbose(bool verbose = true);
182
190 void compute_proofs(const std::function<IntervalVector(const IntervalVector&)>& f);
191
192 protected:
193
206 void compute_detections(float precision, const TubeVector& p, const TubeVector& v, bool with_derivative, bool extract_subsets);
207
208 float m_precision = 0.;
209 std::vector<ConnectedSubset> m_v_detected_loops;
210 std::vector<ConnectedSubset> m_v_proven_loops;
211
212 TPlane *m_first_subtplane, *m_second_subtplane;
213
214 static bool m_verbose;
215 };
216}
217
218#endif
Multi-dimensional paving as representation of a set.
Definition codac_Paving.h:30
Temporal representation of loops.
Definition codac_TPlane.h:44
std::vector< ConnectedSubset > m_v_detected_loops
set of loops detections
Definition codac_TPlane.h:209
void compute_proofs(const std::function< IntervalVector(const IntervalVector &)> &f)
Tries to prove the existence of loops in each detection set.
std::vector< ConnectedSubset > m_v_proven_loops
set of loops proofs
Definition codac_TPlane.h:210
float m_precision
precision of the SIVIA algorithm, used later on in traj_loops_summary()
Definition codac_TPlane.h:208
const std::vector< ConnectedSubset > & proven_loops_subsets() const
Returns the set of proven loops.
const std::vector< ConnectedSubset > & detected_loops_subsets() const
Returns the set of detected loops.
int nb_loops_detections() const
Returns the number of loop detections.
TPlane(const Interval &tdomain)
Creates a 2d temporal space .
static void verbose(bool verbose=true)
Enables verbose mode for displaying information related to loops computations.
Trajectory traj_loops_summary() const
Returns a temporal function of value 0 in case of no-detection, 1 in case of loop detection and 2 in ...
int nb_loops_proofs() const
Returns the number of proven loops.
const std::vector< IntervalVector > proven_loops() const
Returns the set of boxed proven loops.
void compute_proofs(const TubeVector &p)
Tries to prove the existence of loops in each detection set.
void compute_detections(float precision, const TubeVector &p, const TubeVector &v)
Computes this tplane as a subpaving, from the tube of positions and the tube of velocities .
~TPlane()
TPlane destructor.
void compute_detections(float precision, const TubeVector &p)
Computes this tplane as a subpaving, from the tube of positions only.
void compute_loops(float precision, const TubeVector &p, const TubeVector &v)
Computes the loops (detections and proofs) as a subpaving, from the tube of positions and the tube o...
const std::vector< IntervalVector > detected_loops() const
Returns the set of boxed detected loops.
void compute_detections(float precision, const TubeVector &p, const TubeVector &v, bool with_derivative, bool extract_subsets)
Recursive computation of the tplane, from the tube of positions and the tube of velocities .
void compute_proofs(const TubeVector &p, const TubeVector &v)
Tries to prove the existence of loops in each detection set.
One dimensional trajectory , defined as a temporal map of values.
Definition codac_Trajectory.h:35
n-dimensional tube , defined as an interval of n-dimensional trajectories
Definition codac_TubeVector.h:39
FixPoint of a separator The fixpoint of a separator is computed by calling the "::"separate function ...
Definition codac_capd_helpers.h:9