Skip to content

Commit 73f98c6

Browse files
committed
Merge branch 'codac2' into codac2_codac4matlab
2 parents 19450e0 + 256e811 commit 73f98c6

233 files changed

Lines changed: 9462 additions & 1685 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
sudo apt-get -y install doxygen graphviz
5353

5454
# Doxygen might need to be upgraded
55-
git clone --depth 1 -b Release_1_13_0 https://github.com/doxygen/doxygen.git ; cd doxygen ; mkdir build ; cd build ; cmake .. ; sudo cmake --build . -j 4 --config Release --target install ; cd ../..
55+
git clone --depth 1 -b Release_1_16_1 https://github.com/doxygen/doxygen.git ; cd doxygen ; mkdir build ; cd build ; cmake .. ; sudo cmake --build . -j 4 --config Release --target install ; cd ../..
5656

5757
# For Python wrapping
5858
#pip install wheel

CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,11 @@
144144
endif()
145145
# Adds Eigen3::Eigen
146146

147+
################################################################################
148+
# Looking for Threads
149+
################################################################################
150+
151+
find_package(Threads REQUIRED)
147152

148153
################################################################################
149154
# Looking for CAPD (if needed)

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# [Codac: constraint-programming for robotics](http://codac.io/v2) [![Build Status](https://github.com/codac-team/codac/workflows/.github/workflows/tests.yml/badge.svg)](https://github.com/codac-team/codac/actions)
1+
# [Codac: constraint-programming for robotics](http://codac.io) [![Build Status](https://github.com/codac-team/codac/workflows/.github/workflows/tests.yml/badge.svg)](https://github.com/codac-team/codac/actions)
22

3-
See the official website: http://codac.io/v2
3+
See the official website: http://codac.io
44

55
Codac (Catalog Of Domains And Contractors) is a C++/Python/Matlab library providing tools for interval computations and constraint programming over real numbers, trajectories and sets.
66
It has numerous applications in parameter estimation, guaranteed integration, robot localization, and provides reliable outputs.
@@ -30,7 +30,7 @@ from codac import *
3030

3131
x = VectorVar(3)
3232
f = AnalyticFunction([x], [
33-
-(x[2]^2)+2*x[2]*sin(x[2]*x[0])+cos(x[2]*x[1]),
33+
-sqr(x[2])+2*x[2]*sin(x[2]*x[0])+cos(x[2]*x[1]),
3434
2*x[2]*cos(x[2]*x[0])-sin(x[2]*x[1])
3535
])
3636

doc/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66

77
if(WITH_PYTHON)
88

9-
find_package(Doxygen)
9+
find_package(Doxygen)# 1.16.1 QUIET)
1010

1111
if(NOT DOXYGEN_FOUND)
1212

13-
message(STATUS "Doxygen not found, not able to generate/install the API documentation.")
13+
message(STATUS "The required version of Doxygen has not been found, the API documentation will not be generated.")
1414

1515
else()
1616

doc/manual/_static/css/custom.css

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -179,16 +179,21 @@ a .download:before {
179179
}
180180

181181
/* Adding VIBes + IPE logos in the lateral menu */
182-
.sidebar-tree li.toctree-l1 > a.reference.internal:has(+ input#toctree-checkbox-8) {
182+
.sidebar-tree li.toctree-l1 > a.reference.internal:has(+ input#toctree-checkbox-9) {
183183
background:url("../logos/logos_vibes_ipe.png") no-repeat center / contain;
184184
}
185185

186-
.sidebar-tree li.toctree-l1 > a.reference.internal:has(+ input#toctree-checkbox-8):hover {
186+
.sidebar-tree li.toctree-l1 > a.reference.internal:has(+ input#toctree-checkbox-9):hover {
187187
background: url("../logos/logos_vibes_ipe.png") no-repeat center / contain,
188188
var(--color-sidebar-item-background--hover);
189189
}
190190

191-
.sidebar-tree li.toctree-l1 > a.reference.internal.current:has(+ input#toctree-checkbox-8) {
191+
.sidebar-tree li.toctree-l1 > a.reference.internal.current:has(+ input#toctree-checkbox-9) {
192192
background: url("../logos/logos_vibes_ipe.png") no-repeat center / contain,
193193
var(--color-sidebar-item-background--current);
194+
}
195+
196+
figcaption .caption-text
197+
{
198+
font-style: italic;
194199
}

doc/manual/conf.py.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ html_theme_options = {
8989
"color-toc-item-text--active": "#FFFFFF",
9090
},
9191

92-
"announcement": "You are currently reading the new Codac documentation, which is currently in preparation. <a href=\"http://codac.io\">See the v1 website</a>.",
92+
#"announcement": "You are currently reading the new Codac documentation, which is currently in preparation. <a href=\"http://codac.io\">See the v1 website</a>.",
9393
}
9494

9595
# See https://www.sympy.org/sphinx-math-dollar/

doc/manual/development/changelog.rst

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,25 @@
33
Changelog
44
=========
55

6+
7+
Commit 52b81c8 ([cmake] warning for Doxygen version)
8+
----------------------------------------------------
9+
10+
Python binding build requirement
11+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12+
13+
Doxygen 1.16.1 or newer is now required when ``WITH_PYTHON`` is enabled.
14+
If this version is not available, the API documentation will not be generated,
15+
which may cause issues when building the Python binding from source.
16+
This has no impact on the C++ build nor on downloading/installing the Python packages.
17+
18+
619
Pull Request from godardma (15/10)
720
----------------------------------
821

22+
Parallelepiped drawing API
23+
~~~~~~~~~~~~~~~~~~~~~~~~~~
24+
925
Due to the addition of the Parallelepiped object the signature of the following functions has changed :
1026

1127
- DefaultFigure::draw_parallelepiped
@@ -40,6 +56,9 @@ They used to take a Vector and a Matrix as arguments, now they take a Parallelep
4056
fig_3d.draw_parallelepiped({{1,-1.5,1.5},
4157
{{1,0,0},{0,0.5,0},{0,0.2,0.1}}});
4258

59+
Zonotope drawing API
60+
~~~~~~~~~~~~~~~~~~~~
61+
4362
Due to the addition of the Zonotope object the signature of the following functions has changed :
4463

4564
- DefaultFigure::draw_zonotope
@@ -87,5 +106,4 @@ They used to take a Vector and a Matrix as arguments, now they take a Zonotope o
87106
fig_3d.draw_zonotope({{1.5,1.5,1.5},
88107
{{0.3,-0.2,-0.2,0.3,-0.1,0.0},
89108
{0.2,0.1,-0.1,0.0,0.05,0.2},
90-
{0.4,0.3,0.0,-0.1,0.2,0.1}}});
91-
109+
{0.4,0.3,0.0,-0.1,0.2,0.1}}});

doc/manual/development/info_dev.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ If you simply want to use the latest Codac release in Python, you can download t
4949
cd $HOME
5050
git clone https://github.com/doxygen/doxygen
5151
cd doxygen
52-
git checkout Release_1_13_0 # 1.13.0, or any newer release
52+
git checkout Release_1_16_1 # 1.16.1, or any newer release
5353
mkdir build ; cd build
5454
cmake -DCMAKE_INSTALL_PREFIX=$HOME/doxygen/build_install ..
5555
make ; make install

doc/manual/index.rst

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ The solution set is approximated from an initial box :math:`[\mathbf{x}_0]=[0,2]
3737

3838
x = VectorVar(3)
3939
f = AnalyticFunction([x], [
40-
-(x[2]^2)+2*x[2]*sin(x[2]*x[0])+cos(x[2]*x[1]),
40+
-sqr(x[2])+2*x[2]*sin(x[2]*x[0])+cos(x[2]*x[1]),
4141
2*x[2]*cos(x[2]*x[0])-sin(x[2]*x[1])
4242
])
4343

@@ -53,7 +53,7 @@ The solution set is approximated from an initial box :math:`[\mathbf{x}_0]=[0,2]
5353
{
5454
VectorVar x(3);
5555
AnalyticFunction f { {x}, {
56-
-(x[2]^2)+2*x[2]*sin(x[2]*x[0])+cos(x[2]*x[1]),
56+
-sqr(x[2])+2*x[2]*sin(x[2]*x[0])+cos(x[2]*x[1]),
5757
2*x[2]*cos(x[2]*x[0])-sin(x[2]*x[1])
5858
}
5959
};
@@ -213,10 +213,9 @@ User manual
213213
* The class SetMembershipFunction
214214
* Extension to custom expressions
215215

216-
* Tubes
217-
* What is a tube?
218-
* Temporal domains
219-
* The Tube classes
216+
* :ref:`sec-domains-tubes`
217+
* :ref:`sec-domains-tubes-tdomain`
218+
* :ref:`sec-domains-tubes-slicedtube`
220219
* The Trajectory classes
221220
* Increasing performances using views
222221

@@ -233,8 +232,8 @@ User manual
233232
* CtcGaussSeidel
234233
* CtcLinearPrecond
235234
* Set contractors
235+
* :ref:`sec-ctc-set-ctcinter`
236236
* CtcUnion
237-
* CtcInter
238237
* CtcQInter
239238
* CtcCartProd
240239
* CtcProj
@@ -243,9 +242,12 @@ User manual
243242
* Analytic contractors
244243
* :ref:`sec-ctc-analytic-ctcinverse`
245244
* CtcInverseNotIn
245+
* Dynamic contractors
246+
* :ref:`sec-ctc-dynamic-ctclohner`
246247
* Geometric contractors
247248
* :ref:`sec-ctc-geom-ctcdist`
248249
* :ref:`sec-ctc-geom-ctcpolar`
250+
* :ref:`sec-ctc-geom-ctcvisible`
249251
* CtcSegment
250252
* CtcPolygon
251253
* CtcPointCloud
@@ -284,6 +286,7 @@ User manual
284286
* SepInverse
285287
* SepTransform
286288
* Geometrical separators
289+
* SepVisible
287290
* SepPolarCart or SepCartPolar
288291
* SepPolygon
289292
* SepEllipse
@@ -397,6 +400,7 @@ Development
397400
manual/introduction/index.rst
398401
manual/installation/index.rst
399402
manual/intervals/index.rst
403+
manual/tubes/index.rst
400404
manual/linear/index.rst
401405
manual/functions/index.rst
402406
manual/contractors/index.rst

doc/manual/manual/contractors/analytic/ctcinverse.rst

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -297,15 +297,17 @@ Note that since Codac's design is based on C++ template programming, the most ge
297297
| +-------------------------+---------------------------+-------------------------------------+
298298
| | :math:`\mathbb{R}` |ms| | :math:`\mathbb{R}^n` |ms| | :math:`\mathbb{R}^{r\times c}` |ms| |
299299
+--------------------+--------------------------------+-------------------------+---------------------------+-------------------------------------+
300-
| Input(s) :math:`X` | :math:`\mathbb{R}` | |noa| | |noa| | |noa| |
300+
| Input(s) :math:`X` | :math:`\mathbb{R}` | |okk| | |okk| | |noa| |
301301
| +--------------------------------+-------------------------+---------------------------+-------------------------------------+
302302
| | :math:`\mathbb{R}^n` | |okk| | |okk| | |noa| |
303303
| +--------------------------------+-------------------------+---------------------------+-------------------------------------+
304-
| | :math:`\mathbb{R}^{r\times c}` | |noa| | |noa| | |noa| |
304+
| | :math:`\mathbb{R}^{r\times c}` | |okk| | |okk| | |noa| |
305305
| +--------------------------------+-------------------------+---------------------------+-------------------------------------+
306-
| | any mixed types | |noa| | |noa| | |noa| |
306+
| | any mixed types | |okk| | |okk| | |noa| |
307307
+--------------------+--------------------------------+-------------------------+---------------------------+-------------------------------------+
308308

309+
NB: *any mixed types* does not include matrix types yet.
310+
309311
.. group-tab:: C++
310312

311313
.. table:: Possible usages of ``CtcInverse``
@@ -335,15 +337,17 @@ Note that since Codac's design is based on C++ template programming, the most ge
335337
| +-------------------------+---------------------------+-------------------------------------+
336338
| | :math:`\mathbb{R}` |ms| | :math:`\mathbb{R}^n` |ms| | :math:`\mathbb{R}^{r\times c}` |ms| |
337339
+--------------------+--------------------------------+-------------------------+---------------------------+-------------------------------------+
338-
| Input(s) :math:`X` | :math:`\mathbb{R}` | |noa| | |noa| | |noa| |
340+
| Input(s) :math:`X` | :math:`\mathbb{R}` | |okk| | |okk| | |noa| |
339341
| +--------------------------------+-------------------------+---------------------------+-------------------------------------+
340342
| | :math:`\mathbb{R}^n` | |okk| | |okk| | |noa| |
341343
| +--------------------------------+-------------------------+---------------------------+-------------------------------------+
342-
| | :math:`\mathbb{R}^{r\times c}` | |noa| | |noa| | |noa| |
344+
| | :math:`\mathbb{R}^{r\times c}` | |okk| | |okk| | |noa| |
343345
| +--------------------------------+-------------------------+---------------------------+-------------------------------------+
344-
| | any mixed types | |noa| | |noa| | |noa| |
346+
| | any mixed types | |okk| | |okk| | |noa| |
345347
+--------------------+--------------------------------+-------------------------+---------------------------+-------------------------------------+
346348

349+
NB: *any mixed types* does not include matrix types yet.
350+
347351

348352
Not-in constraints: ``CtcInverseNotIn``
349353
---------------------------------------

0 commit comments

Comments
 (0)