Codac manual

Welcome to the Codac website. This manual is currently under construction. We are actively working on it and appreciate your patience as we build a comprehensive guide.

Contributors

This list is in alphabetical order by surname.

We appreciate all contributions, whether they are code, documentation, bug reports, or suggestions. If you believe you should be listed here and are not, please contact us to update the list.

Provisional Plan

Below is a provisional plan for the structure of this manual. Some pages are already available. Please note that some sections may change or be added as we continue to develop the content.


Overview of Codac

  • Intervals and constraints

  • The Codac framework

  • Target audience

User manual

  • Installation guide
  • Intervals
  • Linear algebra
    • Vector, Matrix

    • IntervalVector, IntervalMatrix

    • Matrix operations and basic linear solving

    • Reliable inversions of matrices

    • C++: efficient matrix operations using Eigen

  • Inclusion functions
  • Tubes
    • What is a tube?

    • Temporal domains

    • The Tube classes

    • The Trajectory classes

    • Increasing performances using views

  • Contractors
    • What are contractors?

    • The Ctc class

    • Basic contractors
      • CtcIdentity

      • CtcEmpty

      • CtcLazy

      • CtcFixpoint

    • Linear contractors
      • CtcGaussElim

      • CtcGaussSeidel

      • CtcLinearPrecond

    • Set contractors
      • CtcUnion

      • CtcInter

      • CtcQInter

      • CtcCartProd

      • CtcProj

      • CtcNot

      • CtcAction

    • Analytic contractors
      • Directed operators

      • CtcInverse

      • CtcInverseNotIn

    • Geometric contractors
      • CtcDist

      • CtcPolar

      • CtcSegment

      • CtcPolygon

      • CtcEllipse

      • CtcNoCross

    • Shape contractors
      • CtcCtcBoundary

      • CtcWrapper

      • CtcImage

      • CtcDiscreteSet

    • Temporal contractors
      • Using static contractors on tubes

      • CtcDeriv

      • CtcEval

      • CtcDelay

      • CtcLinobs

      • CtcLohner

      • CtcPicard

      • CtcChain

      • CtcDiffInclusion

  • Separators
    • What are separators?

    • The Sep class

    • Basic separators
      • SepCtcPair

    • Set separators
      • SepUnion

      • SepInter

      • SepQInter

      • SepCartProd

      • SepProj

      • SepNot

      • SepAction

    • Analytic separators
      • SepInverse

      • SepTransform

    • Geometrical separators
      • SepPolarCart or SepCartPolar

      • SepPolygon

      • SepEllipse

    • Shape separators
      • SepCtcBoundary

      • SepWrapper

      • SepImage

    • Contractors obtained from separators
      • CtcInnerOuter

    • Towards thick separators

  • Pavers
    • The SIVIA algorithm

    • Pavers for contractors and separators

    • Paving structures
      • RegularPaving

      • NonRegularPaving

  • Contractor Networks
    • What is a CN?

    • The ContractorNetwork class

  • Geometry
    • Geometrical tools

    • Polygons and convex polygons

    • Polyhedron

  • Ellipsoids
  • Topology
    • Extract connected subsets from pavings

    • Topological degree: verify zeros of an inclusion function

  • Visualization
  • Tools
  • Codac extensions
    • CAPD (rigorous numerics in dynamical systems)

    • Interface with the IBEX library

    • Sympy (symbolic computation)

  • See also
  • References
    • Related papers

    • Contributors

    • How to cite Codac

How-to guides

  • Robotics
    • Non-linear state estimation

    • State estimation by solving data association

    • Range-only SLAM

    • Explored area

    • Loop detections and verifications

  • Geometry
    • 2d shape registration

  • Dynamical systems
    • Lie symmetries for guaranteed integration

    • Solving a discrete Lyapunov equation

    • Stability analysis of a non-linear system

Development