diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..07fe41c
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,2 @@
+# GitHub syntax highlighting
+pixi.lock linguist-language=YAML linguist-generated=true
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6b80ba7
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+
+# pixi environments
+.pixi
+*.egg-info
+# folder used by pixi to install source depenencies
+.pixi_ws
\ No newline at end of file
diff --git a/README.md b/README.md
index c9b8d53..f51600e 100644
--- a/README.md
+++ b/README.md
@@ -32,8 +32,22 @@ https://user-images.githubusercontent.com/38210073/169066254-753c29e0-2e25-4599-
This article takes a step to provide humanoid robots with adaptive morphology abilities. We present a systematic approach for enabling robotic covers to morph their shape, with an overall size fitting the anthropometric dimensions of a humanoid robot. More precisely, we present a cover concept consisting of two main components: a skeleton, which is a repetition of a basic element called node, and a soft membrane, which encloses the cover and deforms with its motion. This article focuses on the cover skeleton and addresses the challenging problems of node design, system modeling, motor positioning, and control design of the morphing system. The cover modeling focuses on kinematics, and a systematic approach for defining the system kinematic constraints is presented. Then, we apply genetic algorithms to find the motor locations so that the morphing cover is fully actuated. Finally, we present control algorithms that allow the cover to morph into a time-varying shape. The entire approach is validated by performing kinematic simulations with four different covers of square dimensions and having 3x3, 4x8, 8x8, and 20x20 nodes, respectively. For each cover, we apply the genetic algorithms to choose the motor locations and perform simulations for tracking a desired shape. The simulation results show that the presented approach ensures the covers to track a desired shape with good tracking performances.
+## MATLAB
+
+The code in this repo requires MATLAB and the MATLAB's Curve Fitting Toolbox, make sure that you have them installed on your machine.
+
+To quickly install those dependencies with [`mpm`](https://www.mathworks.com/help/install/ug/get-mpm-os-command-line.html), you can run:
+
+~~~
+mpm install --release=R2024b --products=MATLAB Curve_Fitting_Toolbox
+~~~
+
## Installation
+To install the software in this repo, follow the instructions in either the "Traditional Installation" or the "Pixi installation" section.
+
+### Traditional Installation
+
1. Clone the repository and [`mystica`](https://github.com/ami-iit/mystica/):
```bash
git clone https://github.com/ami-iit/paper_bergonti_2022_tro_kinematics-control-morphingcovers.git
@@ -47,6 +61,26 @@ This article takes a step to provide humanoid robots with adaptive morphology ab
```
The function [`install()`](https://github.com/ami-iit/mystica/blob/main/install.m) downloads [`mambaforge`](https://github.com/conda-forge/miniforge#mambaforge). [`mambaforge`](https://github.com/conda-forge/miniforge#mambaforge) is a package manager that downloads and configures our dependencies in conda enviroment called `mystica`.
+### Pixi Installation
+
+If you already have [pixi](https://pixi.sh/) installed in your machine, just run `pixi run matlab` from inside the repo:
+
+~~~bash
+cd paper_bergonti_2022_tro_kinematics-control-morphingcovers
+pixi run matlab
+~~~
+
+This will install all required dependencies, and launch matlab with the dependencies added in the path.
+
+To launch one of experiments of the paper, you can also just run:
+
+~~~bash
+cd paper_bergonti_2022_tro_kinematics-control-morphingcovers
+pixi run sim1
+~~~
+
+where in place of `sim1` you can also run `sim2`, `sim3` or `sim4` depending on the experiment you want to run.
+
## Usage
This repository stores:
@@ -67,12 +101,12 @@ run('sim1')
If you open the script, you can modify the `config.simulation_with_noise` parameter deciding whether to apply noise. Instead, the parameter `config.run_only_controller` allows you to choose if you want to run only the controller without evaluating a new motor placement.
-| # | mesh | script | $t_{run}$* | result |
-| - | - | - | - | - |
-| 1 | 3x3 | [sim1.m](./scripts/sim1.m) | 30s | |
-| 2 | 8x8 | [sim2.m](./scripts/sim2.m) | 5min | |
-| 3 | 20x20 | [sim3.m](./scripts/sim3.m) | 2h | |
-| 4 | 4x8 | [sim4.m](./scripts/sim4.m) | 3min | |
+| # | mesh | script | pixi command | $t_{run}$* | result |
+| - | - | - | - | - | - |
+| 1 | 3x3 | [sim1.m](./scripts/sim1.m) | `pixi run sim1` | 30s | |
+| 2 | 8x8 | [sim2.m](./scripts/sim2.m) | `pixi run sim2` | 5min | |
+| 3 | 20x20 | [sim3.m](./scripts/sim3.m) | `pixi run sim3` | 2h | |
+| 4 | 4x8 | [sim4.m](./scripts/sim4.m) | `pixi run sim4` | 3min | |
\* $t_{run}$ is the script running time evaluated with a PC with Intel Xeon Gold 6128 3.40GHz and RAM 128GB.
diff --git a/pixi.lock b/pixi.lock
new file mode 100644
index 0000000..9587c18
--- /dev/null
+++ b/pixi.lock
@@ -0,0 +1,1640 @@
+version: 5
+environments:
+ default:
+ channels:
+ - url: https://conda.anaconda.org/conda-forge/
+ - url: https://conda.anaconda.org/robotology/
+ packages:
+ linux-64:
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ampl-mp-3.1.0-h2cc385e_1006.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-heb4867d_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/casadi-3.5.5-py39h19f53c4_3.tar.bz2
+ - conda: https://conda.anaconda.org/robotology/linux-64/casadi-matlab-bindings-3.5.5.2-ha7f347e_83.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/git-2.47.0-pl5321h59d505e_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/git-lfs-3.5.1-h647637d_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ipopt-3.13.3-he21f442_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-7.5.0-h14aa051_20.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran4-7.5.0-h14aa051_20.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-hd0bcaf9_1007.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py39h474f0d3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.44-hba22ea6_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-7_hd590300_perl5.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.9.20-h13acc7a_1_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.9-5_cp39.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/unixodbc-2.3.12-h661eb56_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda
+ win-64:
+ - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h2466b09_7.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.8.30-h56e8100_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/casadi-3.5.5-py311he26517d_18.conda
+ - conda: https://conda.anaconda.org/robotology/win-64/casadi-matlab-bindings-3.5.5.2-hc351297_83.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/git-2.47.0-h57928b3_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/git-lfs-3.5.1-h50ec22b_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ipopt-3.14.11-ha9547d1_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-25_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-25_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.4-he0c23c2_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.11.1-default_h8125262_1000.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libosqp-0.6.2-h63175ca_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libqdldl-0.1.5-h63175ca_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.13.5-h442d1da_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/metis-5.1.0-h17e2fc9_1007.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.2.2-h66d3029_14.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/mumps-seq-5.2.1-h1f49738_14.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py311h0b4df5a_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2
+ - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-h2466b09_4.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.10-hce54a09_3_cpython.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-5_cp311.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.13.0-hc790b64_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_1.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-ha32ba9b_22.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-hcc2c482_22.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_22.conda
+ - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2
+packages:
+- kind: conda
+ name: _libgcc_mutex
+ version: '0.1'
+ build: conda_forge
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2
+ sha256: fe51de6107f9edc7aa4f786a70f4a883943bc9d39b3bb7307c04c41410990726
+ md5: d7c89558ba9fa0495403155b64376d81
+ license: None
+ size: 2562
+ timestamp: 1578324546067
+- kind: conda
+ name: _openmp_mutex
+ version: '4.5'
+ build: 2_gnu
+ build_number: 16
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2
+ sha256: fbe2c5e56a653bebb982eda4876a9178aedfc2b545f25d0ce9c4c0b508253d22
+ md5: 73aaf86a425cc6e73fcf236a5a46396d
+ depends:
+ - _libgcc_mutex 0.1 conda_forge
+ - libgomp >=7.5.0
+ constrains:
+ - openmp_impl 9999
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 23621
+ timestamp: 1650670423406
+- kind: conda
+ name: ampl-mp
+ version: 3.1.0
+ build: h2cc385e_1006
+ build_number: 1006
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/ampl-mp-3.1.0-h2cc385e_1006.tar.bz2
+ sha256: ff6e942d6490496d98d670f783275078d2a30c694202304ecd49fb759b93c07f
+ md5: 6c2f16f5650a7c66ffdfee57b890ea06
+ depends:
+ - libgcc-ng >=9.4.0
+ - libgfortran-ng
+ - libgfortran5 >=9.4.0
+ - libstdcxx-ng >=9.4.0
+ - unixodbc >=2.3.9,<2.4.0a0
+ license: HPND
+ size: 1137486
+ timestamp: 1645057516176
+- kind: conda
+ name: bzip2
+ version: 1.0.8
+ build: h2466b09_7
+ build_number: 7
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h2466b09_7.conda
+ sha256: 35a5dad92e88fdd7fc405e864ec239486f4f31eec229e31686e61a140a8e573b
+ md5: 276e7ffe9ffe39688abc665ef0f45596
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: bzip2-1.0.6
+ license_family: BSD
+ size: 54927
+ timestamp: 1720974860185
+- kind: conda
+ name: bzip2
+ version: 1.0.8
+ build: h4bc722e_7
+ build_number: 7
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda
+ sha256: 5ced96500d945fb286c9c838e54fa759aa04a7129c59800f0846b4335cee770d
+ md5: 62ee74e96c5ebb0af99386de58cf9553
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc-ng >=12
+ license: bzip2-1.0.6
+ license_family: BSD
+ size: 252783
+ timestamp: 1720974456583
+- kind: conda
+ name: c-ares
+ version: 1.34.3
+ build: heb4867d_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-heb4867d_0.conda
+ sha256: 1015d731c05ef7de298834833d680b08dea58980b907f644345bd457f9498c99
+ md5: 09a6c610d002e54e18353c06ef61a253
+ depends:
+ - __glibc >=2.28,<3.0.a0
+ - libgcc >=13
+ license: MIT
+ license_family: MIT
+ size: 205575
+ timestamp: 1731181837907
+- kind: conda
+ name: ca-certificates
+ version: 2024.8.30
+ build: h56e8100_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.8.30-h56e8100_0.conda
+ sha256: 0fcac3a7ffcc556649e034a1802aedf795e64227eaa7194d207b01eaf26454c4
+ md5: 4c4fd67c18619be5aa65dc5b6c72e490
+ license: ISC
+ size: 158773
+ timestamp: 1725019107649
+- kind: conda
+ name: ca-certificates
+ version: 2024.8.30
+ build: hbcca054_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda
+ sha256: afee721baa6d988e27fef1832f68d6f32ac8cc99cdf6015732224c2841a09cea
+ md5: c27d1c142233b5bc9ca570c6e2e0c244
+ license: ISC
+ size: 159003
+ timestamp: 1725018903918
+- kind: conda
+ name: casadi
+ version: 3.5.5
+ build: py311he26517d_18
+ build_number: 18
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/casadi-3.5.5-py311he26517d_18.conda
+ sha256: c4cd5622cac86dbb01ab508ac7599120d89f0b1a88913fd9a56d6cfd530c7366
+ md5: e72242d7b1c2961a8876c5cb3e172b74
+ depends:
+ - ipopt >=3.14.11,<3.14.12.0a0
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libflang >=5.0.0,<6.0.0.a0
+ - libosqp >=0.6.2,<0.6.3.0a0
+ - numpy >=1.23.5,<2.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vs2015_runtime >=14.29.30139
+ license: LGPL-3.0-or-later
+ license_family: LGPL
+ size: 3451971
+ timestamp: 1675806004035
+- kind: conda
+ name: casadi
+ version: 3.5.5
+ build: py39h19f53c4_3
+ build_number: 3
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/casadi-3.5.5-py39h19f53c4_3.tar.bz2
+ sha256: c4a64d54a7c691324d18418e572e9bc4639b810eb669eb53463f74df33bf66e3
+ md5: 2f0f5557d84167443aa59f73ffbcb3ee
+ depends:
+ - ipopt >=3.13.3,<3.13.4.0a0
+ - libblas >=3.8.0,<4.0a0
+ - libcblas >=3.8.0,<4.0a0
+ - libgcc-ng >=9.3.0
+ - libgfortran-ng
+ - libgfortran5 >=9.3.0
+ - libstdcxx-ng >=9.3.0
+ - numpy >=1.19.5,<2.0a0
+ - python >=3.9,<3.10.0a0
+ - python_abi 3.9.* *_cp39
+ license: LGPL-3.0-or-later
+ license_family: LGPL
+ size: 5234061
+ timestamp: 1612746963528
+- kind: conda
+ name: casadi-matlab-bindings
+ version: 3.5.5.2
+ build: ha7f347e_83
+ build_number: 83
+ subdir: linux-64
+ url: https://conda.anaconda.org/robotology/linux-64/casadi-matlab-bindings-3.5.5.2-ha7f347e_83.tar.bz2
+ sha256: ec06c199975ba273f6b6e165cc6b6446d46efa3bd745d7b7ff62bd20150b3161
+ md5: 3be9e81419d649ae8b60f4359e6f77d3
+ depends:
+ - casadi >=3.5.5,<3.6.0a0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ arch: x86_64
+ platform: linux
+ size: 1114244
+ timestamp: 1680811984614
+- kind: conda
+ name: casadi-matlab-bindings
+ version: 3.5.5.2
+ build: hc351297_83
+ build_number: 83
+ subdir: win-64
+ url: https://conda.anaconda.org/robotology/win-64/casadi-matlab-bindings-3.5.5.2-hc351297_83.tar.bz2
+ sha256: 303d209a8565747f2b8d7ea906b7019d816e7b9c26cc0376231f60d91bacbdd9
+ md5: a090250015f215f0916de25d01c65973
+ depends:
+ - casadi >=3.5.5,<3.6.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vs2015_runtime >=14.29.30139
+ arch: x86_64
+ platform: win
+ size: 968400
+ timestamp: 1680817227635
+- kind: conda
+ name: git
+ version: 2.47.0
+ build: h57928b3_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/git-2.47.0-h57928b3_0.conda
+ sha256: 21ee8885842d12d91b79d9eb40480423c2b1472073197ddd101c758e8a7669fb
+ md5: 69d4c5c9c03b7cbfc042b2a9db4963b9
+ license: GPL-2.0-or-later and LGPL-2.1-or-later
+ size: 122567948
+ timestamp: 1728492005102
+- kind: conda
+ name: git
+ version: 2.47.0
+ build: pl5321h59d505e_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/git-2.47.0-pl5321h59d505e_0.conda
+ sha256: ec0e20ae0aa8146895a107adf7ef9949759942617f5cbecb783284528df6b06c
+ md5: 5cb49c00a7aa5f400b70e95b84d90595
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libcurl >=8.10.1,<9.0a0
+ - libexpat >=2.6.3,<3.0a0
+ - libgcc >=13
+ - libiconv >=1.17,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - openssl >=3.3.2,<4.0a0
+ - pcre2 >=10.44,<10.45.0a0
+ - perl 5.*
+ license: GPL-2.0-or-later and LGPL-2.1-or-later
+ size: 10510958
+ timestamp: 1728491333125
+- kind: conda
+ name: git-lfs
+ version: 3.5.1
+ build: h50ec22b_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/git-lfs-3.5.1-h50ec22b_1.conda
+ sha256: 8261e8975a48030d9aff745cc454db73784d7514ce42bce65fa77772116094a7
+ md5: 8389e50ae247ba0a1d470cc30ef726da
+ license: MIT
+ license_family: MIT
+ size: 3927291
+ timestamp: 1730911445048
+- kind: conda
+ name: git-lfs
+ version: 3.5.1
+ build: h647637d_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/git-lfs-3.5.1-h647637d_1.conda
+ sha256: 082b4b1e59ac7c3a15dfc61d077b6b2b36c82ab15a268d0facfdc82737b983d5
+ md5: 6dfad56d8b8f5f72f615b60f0baf1dea
+ license: MIT
+ license_family: MIT
+ size: 4043713
+ timestamp: 1730911305948
+- kind: conda
+ name: intel-openmp
+ version: 2024.2.1
+ build: h57928b3_1083
+ build_number: 1083
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda
+ sha256: 0fd2b0b84c854029041b0ede8f4c2369242ee92acc0092f8407b1fe9238a8209
+ md5: 2d89243bfb53652c182a7c73182cce4f
+ license: LicenseRef-IntelSimplifiedSoftwareOct2022
+ license_family: Proprietary
+ size: 1852356
+ timestamp: 1723739573141
+- kind: conda
+ name: ipopt
+ version: 3.13.3
+ build: he21f442_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/ipopt-3.13.3-he21f442_1.tar.bz2
+ sha256: da1ac774cf98cf0c50a2e12c962c58483a8fb190d94943e9830e1db530af5e52
+ md5: c2fe798306f0166cea2c13667cda5987
+ depends:
+ - ampl-mp >=3.1.0,<3.2.0a0
+ - libblas >=3.8.0,<4.0a0
+ - libgcc-ng >=7.5.0
+ - libgfortran-ng
+ - libgfortran4 >=7.5.0
+ - liblapack >=3.8.0,<4.0a0
+ - libstdcxx-ng >=7.5.0
+ - metis >=5.1.0,<5.1.1.0a0
+ license: EPL-1.0
+ size: 1736329
+ timestamp: 1604317728065
+- kind: conda
+ name: ipopt
+ version: 3.14.11
+ build: ha9547d1_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/ipopt-3.14.11-ha9547d1_0.conda
+ sha256: bac9c5bc8d133699897480b00d5474c2742cb3cc4b227ea0219fe95125987fc1
+ md5: 034ed5d17e12975b2fa621df1a505b1e
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libflang >=5.0.0,<6.0.0.a0
+ - liblapack >=3.9.0,<4.0a0
+ - metis >=5.1.0,<5.1.1.0a0
+ - mumps-seq >=5.2.1,<5.2.2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vs2015_runtime >=14.29.30139
+ license: EPL-1.0
+ size: 897742
+ timestamp: 1675755407691
+- kind: conda
+ name: keyutils
+ version: 1.6.1
+ build: h166bdaf_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2
+ sha256: 150c05a6e538610ca7c43beb3a40d65c90537497a4f6a5f4d15ec0451b6f5ebb
+ md5: 30186d27e2c9fa62b45fb1476b7200e3
+ depends:
+ - libgcc-ng >=10.3.0
+ license: LGPL-2.1-or-later
+ size: 117831
+ timestamp: 1646151697040
+- kind: conda
+ name: krb5
+ version: 1.21.3
+ build: h659f571_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda
+ sha256: 99df692f7a8a5c27cd14b5fb1374ee55e756631b9c3d659ed3ee60830249b238
+ md5: 3f43953b7d3fb3aaa1d0d0723d91e368
+ depends:
+ - keyutils >=1.6.1,<2.0a0
+ - libedit >=3.1.20191231,<3.2.0a0
+ - libedit >=3.1.20191231,<4.0a0
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - openssl >=3.3.1,<4.0a0
+ license: MIT
+ license_family: MIT
+ size: 1370023
+ timestamp: 1719463201255
+- kind: conda
+ name: ld_impl_linux-64
+ version: '2.43'
+ build: h712a8e2_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda
+ sha256: 7c91cea91b13f4314d125d1bedb9d03a29ebbd5080ccdea70260363424646dbe
+ md5: 048b02e3962f066da18efe3a21b77672
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ constrains:
+ - binutils_impl_linux-64 2.43
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 669211
+ timestamp: 1729655358674
+- kind: conda
+ name: libblas
+ version: 3.9.0
+ build: 25_linux64_openblas
+ build_number: 25
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda
+ sha256: d6d12dc437d060f838820e9e61bf73baab651f91935ac594cf10beb9ef1b4450
+ md5: 8ea26d42ca88ec5258802715fe1ee10b
+ depends:
+ - libopenblas >=0.3.28,<0.3.29.0a0
+ - libopenblas >=0.3.28,<1.0a0
+ constrains:
+ - liblapack 3.9.0 25_linux64_openblas
+ - libcblas 3.9.0 25_linux64_openblas
+ - blas * openblas
+ - liblapacke 3.9.0 25_linux64_openblas
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15677
+ timestamp: 1729642900350
+- kind: conda
+ name: libblas
+ version: 3.9.0
+ build: 25_win64_mkl
+ build_number: 25
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-25_win64_mkl.conda
+ sha256: 5468bb91c44b41ce060bbd997c797b2f91e2b7ce91a7cbf4ddf7e7b734a8dc98
+ md5: 499208e81242efb6e5abc7366c91c816
+ depends:
+ - mkl 2024.2.2 h66d3029_14
+ constrains:
+ - blas * mkl
+ - libcblas 3.9.0 25_win64_mkl
+ - liblapack 3.9.0 25_win64_mkl
+ - liblapacke 3.9.0 25_win64_mkl
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 3736641
+ timestamp: 1729643534444
+- kind: conda
+ name: libcblas
+ version: 3.9.0
+ build: 25_linux64_openblas
+ build_number: 25
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda
+ sha256: ab87b0477078837c91d9cda62a9faca18fba7c57cc77aa779ae24b3ac783b5dd
+ md5: 5dbd1b0fc0d01ec5e0e1fbe667281a11
+ depends:
+ - libblas 3.9.0 25_linux64_openblas
+ constrains:
+ - liblapack 3.9.0 25_linux64_openblas
+ - blas * openblas
+ - liblapacke 3.9.0 25_linux64_openblas
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15613
+ timestamp: 1729642905619
+- kind: conda
+ name: libcblas
+ version: 3.9.0
+ build: 25_win64_mkl
+ build_number: 25
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-25_win64_mkl.conda
+ sha256: 21528cdfe67dafdb2d21925515a167f13963e002c2b6d06d68984767f731850c
+ md5: 3ed189ba03a9888a8013aaee0d67c49d
+ depends:
+ - libblas 3.9.0 25_win64_mkl
+ constrains:
+ - blas * mkl
+ - liblapack 3.9.0 25_win64_mkl
+ - liblapacke 3.9.0 25_win64_mkl
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 3732258
+ timestamp: 1729643561581
+- kind: conda
+ name: libcurl
+ version: 8.10.1
+ build: hbbe4b11_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda
+ sha256: 54e6114dfce566c3a22ad3b7b309657e3600cdb668398e95f1301360d5d52c99
+ md5: 6e801c50a40301f6978c53976917b277
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - krb5 >=1.21.3,<1.22.0a0
+ - libgcc >=13
+ - libnghttp2 >=1.58.0,<2.0a0
+ - libssh2 >=1.11.0,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - openssl >=3.3.2,<4.0a0
+ - zstd >=1.5.6,<1.6.0a0
+ license: curl
+ license_family: MIT
+ size: 424900
+ timestamp: 1726659794676
+- kind: conda
+ name: libedit
+ version: 3.1.20191231
+ build: he28a2e2_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2
+ sha256: a57d37c236d8f7c886e01656f4949d9dcca131d2a0728609c6f7fa338b65f1cf
+ md5: 4d331e44109e3f0e19b4cb8f9b82f3e1
+ depends:
+ - libgcc-ng >=7.5.0
+ - ncurses >=6.2,<7.0.0a0
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 123878
+ timestamp: 1597616541093
+- kind: conda
+ name: libev
+ version: '4.33'
+ build: hd590300_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda
+ sha256: 1cd6048169fa0395af74ed5d8f1716e22c19a81a8a36f934c110ca3ad4dd27b4
+ md5: 172bf1cd1ff8629f2b1179945ed45055
+ depends:
+ - libgcc-ng >=12
+ license: BSD-2-Clause
+ license_family: BSD
+ size: 112766
+ timestamp: 1702146165126
+- kind: conda
+ name: libexpat
+ version: 2.6.4
+ build: h5888daf_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda
+ sha256: 56541b98447b58e52d824bd59d6382d609e11de1f8adf20b23143e353d2b8d26
+ md5: db833e03127376d461e1e13e76f09b6c
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ constrains:
+ - expat 2.6.4.*
+ license: MIT
+ license_family: MIT
+ size: 73304
+ timestamp: 1730967041968
+- kind: conda
+ name: libexpat
+ version: 2.6.4
+ build: he0c23c2_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.4-he0c23c2_0.conda
+ sha256: 0c0447bf20d1013d5603499de93a16b6faa92d7ead870d96305c0f065b6a5a12
+ md5: eb383771c680aa792feb529eaf9df82f
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - expat 2.6.4.*
+ license: MIT
+ license_family: MIT
+ size: 139068
+ timestamp: 1730967442102
+- kind: conda
+ name: libffi
+ version: 3.4.2
+ build: h7f98852_5
+ build_number: 5
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2
+ sha256: ab6e9856c21709b7b517e940ae7028ae0737546122f83c2aa5d692860c3b149e
+ md5: d645c6d2ac96843a2bfaccd2d62b3ac3
+ depends:
+ - libgcc-ng >=9.4.0
+ license: MIT
+ license_family: MIT
+ size: 58292
+ timestamp: 1636488182923
+- kind: conda
+ name: libffi
+ version: 3.4.2
+ build: h8ffe710_5
+ build_number: 5
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2
+ sha256: 1951ab740f80660e9bc07d2ed3aefb874d78c107264fd810f24a1a6211d4b1a5
+ md5: 2c96d1b6915b408893f9472569dee135
+ depends:
+ - vc >=14.1,<15.0a0
+ - vs2015_runtime >=14.16.27012
+ license: MIT
+ license_family: MIT
+ size: 42063
+ timestamp: 1636489106777
+- kind: conda
+ name: libflang
+ version: 5.0.0
+ build: h6538335_20180525
+ build_number: 20180525
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libflang-5.0.0-h6538335_20180525.tar.bz2
+ sha256: 0b893b511190332320f4a3e3d6424fbd350271ffbca34eb25b5cd8bc451f1a05
+ md5: 9f473a344e18668e99a93f7e21a54b69
+ depends:
+ - openmp 5.0.0
+ - vc >=14,<15.0a0
+ arch: x86_64
+ platform: win
+ track_features:
+ - flang
+ license: Apache 2.0
+ size: 531143
+ timestamp: 1527899216421
+- kind: conda
+ name: libgcc
+ version: 14.2.0
+ build: h77fa898_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda
+ sha256: 53eb8a79365e58849e7b1a068d31f4f9e718dc938d6f2c03e960345739a03569
+ md5: 3cb76c3f10d3bc7f1105b2fc9db984df
+ depends:
+ - _libgcc_mutex 0.1 conda_forge
+ - _openmp_mutex >=4.5
+ constrains:
+ - libgomp 14.2.0 h77fa898_1
+ - libgcc-ng ==14.2.0=*_1
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 848745
+ timestamp: 1729027721139
+- kind: conda
+ name: libgcc-ng
+ version: 14.2.0
+ build: h69a702a_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda
+ sha256: 3a76969c80e9af8b6e7a55090088bc41da4cffcde9e2c71b17f44d37b7cb87f7
+ md5: e39480b9ca41323497b05492a63bc35b
+ depends:
+ - libgcc 14.2.0 h77fa898_1
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 54142
+ timestamp: 1729027726517
+- kind: conda
+ name: libgfortran-ng
+ version: 7.5.0
+ build: h14aa051_20
+ build_number: 20
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-7.5.0-h14aa051_20.tar.bz2
+ sha256: 7347a7a57f992d3d4fdb1bf98582ec0963d45b16d9dfb3efe2045ff2cb157527
+ md5: c3b2ad091c043c08689e64b10741484b
+ depends:
+ - libgfortran4 7.5.0.*
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 23435
+ timestamp: 1644093859248
+- kind: conda
+ name: libgfortran4
+ version: 7.5.0
+ build: h14aa051_20
+ build_number: 20
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran4-7.5.0-h14aa051_20.tar.bz2
+ sha256: a8f3ae8e6c9fbe52f7403bfb2e00bf0c5169ab0702a4a5f3ad88494867e03427
+ md5: a072eab836c3a9578ce72b5640ce592d
+ constrains:
+ - libgfortran-ng 7.5.0 *_20
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 1309697
+ timestamp: 1644093800802
+- kind: conda
+ name: libgfortran5
+ version: 14.2.0
+ build: hd5240d6_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda
+ sha256: d149a37ca73611e425041f33b9d8dbed6e52ec506fe8cc1fc0ee054bddeb6d5d
+ md5: 9822b874ea29af082e5d36098d25427d
+ depends:
+ - libgcc >=14.2.0
+ constrains:
+ - libgfortran 14.2.0
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 1462645
+ timestamp: 1729027735353
+- kind: conda
+ name: libgomp
+ version: 14.2.0
+ build: h77fa898_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda
+ sha256: 1911c29975ec99b6b906904040c855772ccb265a1c79d5d75c8ceec4ed89cd63
+ md5: cc3573974587f12dda90d96e3e55a702
+ depends:
+ - _libgcc_mutex 0.1 conda_forge
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 460992
+ timestamp: 1729027639220
+- kind: conda
+ name: libhwloc
+ version: 2.11.1
+ build: default_h8125262_1000
+ build_number: 1000
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.11.1-default_h8125262_1000.conda
+ sha256: 92728e292640186759d6dddae3334a1bc0b139740b736ffaeccb825fb8c07a2e
+ md5: 933bad6e4658157f1aec9b171374fde2
+ depends:
+ - libxml2 >=2.12.7,<3.0a0
+ - pthreads-win32
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 2379689
+ timestamp: 1720461835526
+- kind: conda
+ name: libiconv
+ version: '1.17'
+ build: hcfcfb64_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda
+ sha256: 5f844dd19b046d43174ad80c6ea75b5d504020e3b63cfbc4ace97b8730d35c7b
+ md5: e1eb10b1cca179f2baa3601e4efc8712
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: LGPL-2.1-only
+ size: 636146
+ timestamp: 1702682547199
+- kind: conda
+ name: libiconv
+ version: '1.17'
+ build: hd590300_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda
+ sha256: 8ac2f6a9f186e76539439e50505d98581472fedb347a20e7d1f36429849f05c9
+ md5: d66573916ffcf376178462f1b61c941e
+ depends:
+ - libgcc-ng >=12
+ license: LGPL-2.1-only
+ size: 705775
+ timestamp: 1702682170569
+- kind: conda
+ name: liblapack
+ version: 3.9.0
+ build: 25_linux64_openblas
+ build_number: 25
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda
+ sha256: 9d1ff017714edb2d84868f0f931a4a0e7c289a971062b2ac66cfc8145df7e20e
+ md5: 4dc03a53fc69371a6158d0ed37214cd3
+ depends:
+ - libblas 3.9.0 25_linux64_openblas
+ constrains:
+ - liblapacke 3.9.0 25_linux64_openblas
+ - libcblas 3.9.0 25_linux64_openblas
+ - blas * openblas
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 15608
+ timestamp: 1729642910812
+- kind: conda
+ name: liblapack
+ version: 3.9.0
+ build: 25_win64_mkl
+ build_number: 25
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda
+ sha256: 98c13a28596389539abe3f608c6fbd2826df47671f77c58a331df878c6140c53
+ md5: f716ef84564c574e8e74ae725f5d5f93
+ depends:
+ - libblas 3.9.0 25_win64_mkl
+ constrains:
+ - blas * mkl
+ - libcblas 3.9.0 25_win64_mkl
+ - liblapacke 3.9.0 25_win64_mkl
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 3736560
+ timestamp: 1729643588182
+- kind: conda
+ name: libnghttp2
+ version: 1.64.0
+ build: h161d5f1_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda
+ sha256: b0f2b3695b13a989f75d8fd7f4778e1c7aabe3b36db83f0fe80b2cd812c0e975
+ md5: 19e57602824042dfd0446292ef90488b
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - c-ares >=1.32.3,<2.0a0
+ - libev >=4.33,<4.34.0a0
+ - libev >=4.33,<5.0a0
+ - libgcc >=13
+ - libstdcxx >=13
+ - libzlib >=1.3.1,<2.0a0
+ - openssl >=3.3.2,<4.0a0
+ license: MIT
+ license_family: MIT
+ size: 647599
+ timestamp: 1729571887612
+- kind: conda
+ name: libnsl
+ version: 2.0.1
+ build: hd590300_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda
+ sha256: 26d77a3bb4dceeedc2a41bd688564fe71bf2d149fdcf117049970bc02ff1add6
+ md5: 30fd6e37fe21f86f4bd26d6ee73eeec7
+ depends:
+ - libgcc-ng >=12
+ license: LGPL-2.1-only
+ license_family: GPL
+ size: 33408
+ timestamp: 1697359010159
+- kind: conda
+ name: libopenblas
+ version: 0.3.28
+ build: pthreads_h94d23a6_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_0.conda
+ sha256: 1e41a6d63e07be996238a1e840a426f86068956a45e0c0bb24e49a8dad9874c1
+ md5: 9ebc9aedafaa2515ab247ff6bb509458
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc-ng >=14
+ - libgfortran-ng
+ - libgfortran5 >=14.1.0
+ constrains:
+ - openblas >=0.3.28,<0.3.29.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 5572213
+ timestamp: 1723932528810
+- kind: conda
+ name: libosqp
+ version: 0.6.2
+ build: h63175ca_4
+ build_number: 4
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libosqp-0.6.2-h63175ca_4.conda
+ sha256: 7b1bd40712b792de49c3541788bfc80b8d362a99fbd6f48f74cfd645a3335354
+ md5: 3bc7345cec066e85b38bd54b4a0d5bb1
+ depends:
+ - libqdldl >=0.1.5,<0.1.6.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vs2015_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: APACHE
+ size: 72974
+ timestamp: 1672824232941
+- kind: conda
+ name: libqdldl
+ version: 0.1.5
+ build: h63175ca_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libqdldl-0.1.5-h63175ca_1.tar.bz2
+ sha256: 5d2050ea36f32b009712accc9eeb34d731a56f2d5dd27eb40f64870eb0f9d901
+ md5: 6a8beb414077e9aa543c0897541f69ad
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vs2015_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: APACHE
+ size: 20960
+ timestamp: 1667007089765
+- kind: conda
+ name: libsqlite
+ version: 3.47.0
+ build: h2466b09_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda
+ sha256: 3342d6fe787f5830f7e8466d9c65c914bfd8d67220fb5673041b338cbba47afe
+ md5: 5b1f36012cc3d09c4eb9f24ad0e2c379
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Unlicense
+ size: 892175
+ timestamp: 1730208431651
+- kind: conda
+ name: libsqlite
+ version: 3.47.0
+ build: hadc24fc_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda
+ sha256: 8a9aadf996a2399f65b679c6e7f29139d5059f699c63e6d7b50e20db10c00508
+ md5: b6f02b52a174e612e89548f4663ce56a
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - libzlib >=1.3.1,<2.0a0
+ license: Unlicense
+ size: 875349
+ timestamp: 1730208050020
+- kind: conda
+ name: libssh2
+ version: 1.11.0
+ build: h0841786_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda
+ sha256: 50e47fd9c4f7bf841a11647ae7486f65220cfc988ec422a4475fe8d5a823824d
+ md5: 1f5a58e686b13bcfde88b93f547d23fe
+ depends:
+ - libgcc-ng >=12
+ - libzlib >=1.2.13,<2.0.0a0
+ - openssl >=3.1.1,<4.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 271133
+ timestamp: 1685837707056
+- kind: conda
+ name: libstdcxx
+ version: 14.2.0
+ build: hc0a3c3a_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda
+ sha256: 4661af0eb9bdcbb5fb33e5d0023b001ad4be828fccdcc56500059d56f9869462
+ md5: 234a5554c53625688d51062645337328
+ depends:
+ - libgcc 14.2.0 h77fa898_1
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 3893695
+ timestamp: 1729027746910
+- kind: conda
+ name: libstdcxx-ng
+ version: 14.2.0
+ build: h4852527_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda
+ sha256: 25bb30b827d4f6d6f0522cc0579e431695503822f144043b93c50237017fffd8
+ md5: 8371ac6457591af2cf6159439c1fd051
+ depends:
+ - libstdcxx 14.2.0 hc0a3c3a_1
+ license: GPL-3.0-only WITH GCC-exception-3.1
+ license_family: GPL
+ size: 54105
+ timestamp: 1729027780628
+- kind: conda
+ name: libuuid
+ version: 2.38.1
+ build: h0b41bf4_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda
+ sha256: 787eb542f055a2b3de553614b25f09eefb0a0931b0c87dbcce6efdfd92f04f18
+ md5: 40b61aab5c7ba9ff276c41cfffe6b80b
+ depends:
+ - libgcc-ng >=12
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 33601
+ timestamp: 1680112270483
+- kind: conda
+ name: libxcrypt
+ version: 4.4.36
+ build: hd590300_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda
+ sha256: 6ae68e0b86423ef188196fff6207ed0c8195dd84273cb5623b85aa08033a410c
+ md5: 5aa797f8787fe7a17d1b0821485b5adc
+ depends:
+ - libgcc-ng >=12
+ license: LGPL-2.1-or-later
+ size: 100393
+ timestamp: 1702724383534
+- kind: conda
+ name: libxml2
+ version: 2.13.5
+ build: h442d1da_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.13.5-h442d1da_0.conda
+ sha256: 020466b17c143190bd5a6540be2ceef4c1f8d514408bd5f0adaafcd9d0057b5c
+ md5: 1fbabbec60a3c7c519a5973b06c3b2f4
+ depends:
+ - libiconv >=1.17,<2.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: MIT
+ license_family: MIT
+ size: 1511585
+ timestamp: 1731489892312
+- kind: conda
+ name: libzlib
+ version: 1.3.1
+ build: h2466b09_2
+ build_number: 2
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda
+ sha256: ba945c6493449bed0e6e29883c4943817f7c79cbff52b83360f7b341277c6402
+ md5: 41fbfac52c601159df6c01f875de31b9
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - zlib 1.3.1 *_2
+ license: Zlib
+ license_family: Other
+ size: 55476
+ timestamp: 1727963768015
+- kind: conda
+ name: libzlib
+ version: 1.3.1
+ build: hb9d3cd8_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.3.1-hb9d3cd8_2.conda
+ sha256: d4bfe88d7cb447768e31650f06257995601f89076080e76df55e3112d4e47dc4
+ md5: edb0dca6bc32e4f4789199455a1dbeb8
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ constrains:
+ - zlib 1.3.1 *_2
+ license: Zlib
+ license_family: Other
+ size: 60963
+ timestamp: 1727963148474
+- kind: conda
+ name: llvm-meta
+ version: 5.0.0
+ build: '0'
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/llvm-meta-5.0.0-0.tar.bz2
+ sha256: 090bbeacc3297ff579b53f55ad184f05c30e316fe9d5d7df63df1d2ad4578b79
+ md5: 213b5b5ad34008147a824460e50a691c
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 2667
+- kind: conda
+ name: metis
+ version: 5.1.0
+ build: h17e2fc9_1007
+ build_number: 1007
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/metis-5.1.0-h17e2fc9_1007.conda
+ sha256: 4c1dff710c59bb42a7a5d3e77f1772585c56df9fd62744b53b554bbdb682e2a8
+ md5: b1885dc9fc4136aba77ca8ac6c3c307a
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: APACHE
+ size: 4139214
+ timestamp: 1728064718935
+- kind: conda
+ name: metis
+ version: 5.1.0
+ build: hd0bcaf9_1007
+ build_number: 1007
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/metis-5.1.0-hd0bcaf9_1007.conda
+ sha256: e8a00971e6d00bd49f375c5d8d005b37a9abba0b1768533aed0f90a422bf5cc7
+ md5: 28eb714416de4eb83e2cbc47e99a1b45
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc >=13
+ - libstdcxx >=13
+ license: Apache-2.0
+ license_family: APACHE
+ size: 3923560
+ timestamp: 1728064567817
+- kind: conda
+ name: mkl
+ version: 2024.2.2
+ build: h66d3029_14
+ build_number: 14
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.2.2-h66d3029_14.conda
+ sha256: 098ba4a3cb82f627bc79dc0ab1111b44859c9ef4aaa8d75ce043bce107770cb3
+ md5: f011e7cc21918dc9d1efe0209e27fa16
+ depends:
+ - intel-openmp 2024.*
+ - tbb 2021.*
+ license: LicenseRef-IntelSimplifiedSoftwareOct2022
+ license_family: Proprietary
+ size: 103019089
+ timestamp: 1727378392081
+- kind: conda
+ name: mumps-seq
+ version: 5.2.1
+ build: h1f49738_14
+ build_number: 14
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/mumps-seq-5.2.1-h1f49738_14.conda
+ sha256: 718bc0a54a34f6dcf2221bcd6557b706f16d43e2fbe31e79e6f557534e5bc4b6
+ md5: 793026cd946ca04c37a6903fefeef62b
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libflang >=5.0.0,<6.0.0.a0
+ - liblapack >=3.9.0,<4.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: CECILL-C
+ size: 2765952
+ timestamp: 1702304778125
+- kind: conda
+ name: ncurses
+ version: '6.5'
+ build: he02047a_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda
+ sha256: 6a1d5d8634c1a07913f1c525db6455918cbc589d745fac46d9d6e30340c8731a
+ md5: 70caf8bb6cf39a0b6b7efc885f51c0fe
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - libgcc-ng >=12
+ license: X11 AND BSD-3-Clause
+ size: 889086
+ timestamp: 1724658547447
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py311h0b4df5a_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/numpy-1.26.4-py311h0b4df5a_0.conda
+ sha256: 14116e72107de3089cc58119a5ce5905c22abf9a715c9fe41f8ac14db0992326
+ md5: 7b240edd44fd7a0991aa409b07cee776
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - liblapack >=3.9.0,<4.0a0
+ - python >=3.11,<3.12.0a0
+ - python_abi 3.11.* *_cp311
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 7104093
+ timestamp: 1707226459646
+- kind: conda
+ name: numpy
+ version: 1.26.4
+ build: py39h474f0d3_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/numpy-1.26.4-py39h474f0d3_0.conda
+ sha256: fa792c330e1d18854e4ca1ea8bf90ffae6787c133ebdc331f1ba6f565d28b599
+ md5: aa265f5697237aa13cc10f53fa8acc4f
+ depends:
+ - libblas >=3.9.0,<4.0a0
+ - libcblas >=3.9.0,<4.0a0
+ - libgcc-ng >=12
+ - liblapack >=3.9.0,<4.0a0
+ - libstdcxx-ng >=12
+ - python >=3.9,<3.10.0a0
+ - python_abi 3.9.* *_cp39
+ constrains:
+ - numpy-base <0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 7039431
+ timestamp: 1707225726227
+- kind: conda
+ name: openmp
+ version: 5.0.0
+ build: vc14_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/openmp-5.0.0-vc14_1.tar.bz2
+ sha256: 05c19170938b589f59049679d4e0679c98160fecc6fd1bf721b0f4980bd235dd
+ md5: 8284c925330fa53668ade00db3c9e787
+ depends:
+ - llvm-meta 5.0.0|5.0.0.*
+ - vc 14.*
+ arch: x86_64
+ platform: win
+ license: NCSA
+ size: 590466
+- kind: conda
+ name: openssl
+ version: 3.4.0
+ build: h2466b09_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda
+ sha256: e03045a0837e01ff5c75e9273a572553e7522290799807f918c917a9826a6484
+ md5: d0d805d9b5524a14efb51b3bff965e83
+ depends:
+ - ca-certificates
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: Apache
+ size: 8491156
+ timestamp: 1731379715927
+- kind: conda
+ name: openssl
+ version: 3.4.0
+ build: hb9d3cd8_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda
+ sha256: 814b9dff1847b132c676ee6cc1a8cb2d427320779b93e1b6d76552275c128705
+ md5: 23cc74f77eb99315c0360ec3533147a9
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - ca-certificates
+ - libgcc >=13
+ license: Apache-2.0
+ license_family: Apache
+ size: 2947466
+ timestamp: 1731377666602
+- kind: conda
+ name: pcre2
+ version: '10.44'
+ build: hba22ea6_2
+ build_number: 2
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/pcre2-10.44-hba22ea6_2.conda
+ sha256: 1087716b399dab91cc9511d6499036ccdc53eb29a288bebcb19cf465c51d7c0d
+ md5: df359c09c41cd186fffb93a2d87aa6f5
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - bzip2 >=1.0.8,<2.0a0
+ - libgcc-ng >=12
+ - libzlib >=1.3.1,<2.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 952308
+ timestamp: 1723488734144
+- kind: conda
+ name: perl
+ version: 5.32.1
+ build: 7_hd590300_perl5
+ build_number: 7
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/perl-5.32.1-7_hd590300_perl5.conda
+ sha256: 9ec32b6936b0e37bcb0ed34f22ec3116e75b3c0964f9f50ecea5f58734ed6ce9
+ md5: f2cfec9406850991f4e3d960cc9e3321
+ depends:
+ - libgcc-ng >=12
+ - libxcrypt >=4.4.36
+ license: GPL-1.0-or-later OR Artistic-1.0-Perl
+ size: 13344463
+ timestamp: 1703310653947
+- kind: conda
+ name: pthreads-win32
+ version: 2.9.1
+ build: h2466b09_4
+ build_number: 4
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-h2466b09_4.conda
+ sha256: b989bdcf0a22ba05a238adac1ad3452c11871681f565e509f629e225a26b7d45
+ md5: cf98a67a1ec8040b42455002a24f0b0b
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: LGPL-2.1-or-later
+ size: 265827
+ timestamp: 1728400965968
+- kind: conda
+ name: python
+ version: 3.9.20
+ build: h13acc7a_1_cpython
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/python-3.9.20-h13acc7a_1_cpython.conda
+ sha256: 6a30aa8df1745eded1e5c24d167cb10e6f379e75d2f2fa2a212e6dab76030698
+ md5: 951cff166a5f170e27908811917165f8
+ depends:
+ - __glibc >=2.17,<3.0.a0
+ - bzip2 >=1.0.8,<2.0a0
+ - ld_impl_linux-64 >=2.36.1
+ - libffi >=3.4,<4.0a0
+ - libgcc >=13
+ - libnsl >=2.0.1,<2.1.0a0
+ - libsqlite >=3.46.1,<4.0a0
+ - libuuid >=2.38.1,<3.0a0
+ - libxcrypt >=4.4.36
+ - libzlib >=1.3.1,<2.0a0
+ - ncurses >=6.5,<7.0a0
+ - openssl >=3.3.2,<4.0a0
+ - readline >=8.2,<9.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.9.* *_cp39
+ license: Python-2.0
+ size: 23684398
+ timestamp: 1727719528404
+- kind: conda
+ name: python
+ version: 3.11.10
+ build: hce54a09_3_cpython
+ build_number: 3
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/python-3.11.10-hce54a09_3_cpython.conda
+ sha256: 3931c546219d069918389e4dbe12057af4cc68a1060577a04014c6b5fc618aa0
+ md5: 5d54d429c0eb2273d1cc69763de6edaf
+ depends:
+ - bzip2 >=1.0.8,<2.0a0
+ - libexpat >=2.6.3,<3.0a0
+ - libffi >=3.4,<4.0a0
+ - libsqlite >=3.46.1,<4.0a0
+ - libzlib >=1.3.1,<2.0a0
+ - openssl >=3.3.2,<4.0a0
+ - tk >=8.6.13,<8.7.0a0
+ - tzdata
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ - xz >=5.2.6,<6.0a0
+ constrains:
+ - python_abi 3.11.* *_cp311
+ license: Python-2.0
+ size: 18206702
+ timestamp: 1729041779073
+- kind: conda
+ name: python_abi
+ version: '3.9'
+ build: 5_cp39
+ build_number: 5
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.9-5_cp39.conda
+ sha256: 019e2f8bca1d1f1365fbb9965cd95bb395c92c89ddd03165db82f5ae89a20812
+ md5: 40363a30db350596b5f225d0d5a33328
+ constrains:
+ - python 3.9.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6193
+ timestamp: 1723823354399
+- kind: conda
+ name: python_abi
+ version: '3.11'
+ build: 5_cp311
+ build_number: 5
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-5_cp311.conda
+ sha256: 9b210e5807dd9c9ed71ff192a95f1872da597ddd10e7cefec93a922fe22e598a
+ md5: 895b873644c11ccc0ab7dba2d8513ae6
+ constrains:
+ - python 3.11.* *_cpython
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 6707
+ timestamp: 1723823225752
+- kind: conda
+ name: readline
+ version: '8.2'
+ build: h8228510_1
+ build_number: 1
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda
+ sha256: 5435cf39d039387fbdc977b0a762357ea909a7694d9528ab40f005e9208744d7
+ md5: 47d31b792659ce70f470b5c82fdfb7a4
+ depends:
+ - libgcc-ng >=12
+ - ncurses >=6.3,<7.0a0
+ license: GPL-3.0-only
+ license_family: GPL
+ size: 281456
+ timestamp: 1679532220005
+- kind: conda
+ name: tbb
+ version: 2021.13.0
+ build: hc790b64_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.13.0-hc790b64_0.conda
+ sha256: 990dbe4fb42f14700c22bd434d8312607bf8d0bd9f922b054e51fda14c41994c
+ md5: 28496a1e6af43c63927da4f80260348d
+ depends:
+ - libhwloc >=2.11.1,<2.11.2.0a0
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: Apache-2.0
+ license_family: APACHE
+ size: 151494
+ timestamp: 1725532984828
+- kind: conda
+ name: tk
+ version: 8.6.13
+ build: h5226925_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda
+ sha256: 2c4e914f521ccb2718946645108c9bd3fc3216ba69aea20c2c3cedbd8db32bb1
+ md5: fc048363eb8f03cd1737600a5d08aafe
+ depends:
+ - ucrt >=10.0.20348.0
+ - vc >=14.2,<15
+ - vc14_runtime >=14.29.30139
+ license: TCL
+ license_family: BSD
+ size: 3503410
+ timestamp: 1699202577803
+- kind: conda
+ name: tk
+ version: 8.6.13
+ build: noxft_h4845f30_101
+ build_number: 101
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda
+ sha256: e0569c9caa68bf476bead1bed3d79650bb080b532c64a4af7d8ca286c08dea4e
+ md5: d453b98d9c83e71da0741bb0ff4d76bc
+ depends:
+ - libgcc-ng >=12
+ - libzlib >=1.2.13,<2.0.0a0
+ license: TCL
+ license_family: BSD
+ size: 3318875
+ timestamp: 1699202167581
+- kind: conda
+ name: tzdata
+ version: 2024b
+ build: hc8b5060_0
+ subdir: noarch
+ noarch: generic
+ url: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda
+ sha256: 4fde5c3008bf5d2db82f2b50204464314cc3c91c1d953652f7bd01d9e52aefdf
+ md5: 8ac3367aafb1cc0a068483c580af8015
+ license: LicenseRef-Public-Domain
+ size: 122354
+ timestamp: 1728047496079
+- kind: conda
+ name: ucrt
+ version: 10.0.22621.0
+ build: h57928b3_1
+ build_number: 1
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_1.conda
+ sha256: db8dead3dd30fb1a032737554ce91e2819b43496a0db09927edf01c32b577450
+ md5: 6797b005cd0f439c4c5c9ac565783700
+ constrains:
+ - vs2015_runtime >=14.29.30037
+ license: LicenseRef-MicrosoftWindowsSDK10
+ size: 559710
+ timestamp: 1728377334097
+- kind: conda
+ name: unixodbc
+ version: 2.3.12
+ build: h661eb56_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/unixodbc-2.3.12-h661eb56_0.conda
+ sha256: 718eb807a5e6e6993ee06745cb2a25a6b353427485a6e50df01db99c6016a53f
+ md5: a737e5c549c13fbb5590c581848b0446
+ depends:
+ - libedit >=3.1.20191231,<3.2.0a0
+ - libgcc-ng >=12
+ - libiconv >=1.17,<2.0a0
+ - libstdcxx-ng >=12
+ license: LGPL-2.1
+ size: 281830
+ timestamp: 1691504075258
+- kind: conda
+ name: vc
+ version: '14.3'
+ build: ha32ba9b_22
+ build_number: 22
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-ha32ba9b_22.conda
+ sha256: 2a47c5bd8bec045959afada7063feacd074ad66b170c1ea92dd139b389fcf8fd
+ md5: 311c9ba1dfdd2895a8cb08346ff26259
+ depends:
+ - vc14_runtime >=14.38.33135
+ track_features:
+ - vc14
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 17447
+ timestamp: 1728400826998
+- kind: conda
+ name: vc14_runtime
+ version: 14.40.33810
+ build: hcc2c482_22
+ build_number: 22
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-hcc2c482_22.conda
+ sha256: 4c669c65007f88a7cdd560192f7e6d5679d191ac71610db724e18b2410964d64
+ md5: ce23a4b980ee0556a118ed96550ff3f3
+ depends:
+ - ucrt >=10.0.20348.0
+ constrains:
+ - vs2015_runtime 14.40.33810.* *_22
+ license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime
+ license_family: Proprietary
+ size: 750719
+ timestamp: 1728401055788
+- kind: conda
+ name: vs2015_runtime
+ version: 14.40.33810
+ build: h3bf8584_22
+ build_number: 22
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_22.conda
+ sha256: 80aa9932203d65a96f817b8be4fafc176fb2b3fe6cf6899ede678b8f0317fbff
+ md5: 8c6b061d44cafdfc8e8c6eb5f100caf0
+ depends:
+ - vc14_runtime >=14.40.33810
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 17453
+ timestamp: 1728400827536
+- kind: conda
+ name: xz
+ version: 5.2.6
+ build: h166bdaf_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2
+ sha256: 03a6d28ded42af8a347345f82f3eebdd6807a08526d47899a42d62d319609162
+ md5: 2161070d867d1b1204ea749c8eec4ef0
+ depends:
+ - libgcc-ng >=12
+ license: LGPL-2.1 and GPL-2.0
+ size: 418368
+ timestamp: 1660346797927
+- kind: conda
+ name: xz
+ version: 5.2.6
+ build: h8d14728_0
+ subdir: win-64
+ url: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2
+ sha256: 54d9778f75a02723784dc63aff4126ff6e6749ba21d11a6d03c1f4775f269fe0
+ md5: 515d77642eaa3639413c6b1bc3f94219
+ depends:
+ - vc >=14.1,<15
+ - vs2015_runtime >=14.16.27033
+ license: LGPL-2.1 and GPL-2.0
+ size: 217804
+ timestamp: 1660346976440
+- kind: conda
+ name: zstd
+ version: 1.5.6
+ build: ha6fb4c9_0
+ subdir: linux-64
+ url: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda
+ sha256: c558b9cc01d9c1444031bd1ce4b9cff86f9085765f17627a6cd85fc623c8a02b
+ md5: 4d056880988120e29d75bfff282e0f45
+ depends:
+ - libgcc-ng >=12
+ - libstdcxx-ng >=12
+ - libzlib >=1.2.13,<2.0.0a0
+ license: BSD-3-Clause
+ license_family: BSD
+ size: 554846
+ timestamp: 1714722996770
diff --git a/pixi.toml b/pixi.toml
new file mode 100644
index 0000000..73684bd
--- /dev/null
+++ b/pixi.toml
@@ -0,0 +1,41 @@
+[project]
+authors = ["Fabio Bergonti "]
+# robotology channel is necessary as casadi-matlab-bindings are only available in the robotology channel,
+# conda-forge does not host matlab libraries
+channels = ["conda-forge", "robotology"]
+description = "Add a short description here"
+name = "paper_bergonti_2022_tro_kinematics-control-morphingcovers"
+platforms = ["win-64", "linux-64"]
+version = "0.0.0"
+
+[target.win.activation.env]
+CMAKE_INSTALL_PREFIX = "%CONDA_PREFIX%\\Library"
+# We need to add also the mystica mesh folder to MATLABPATH
+# See https://github.com/ami-iit/mystica/pull/4
+MATLABPATH = "%MATLABPATH%;%CONDA_PREFIX%\\Library\\mex\\+mystica\\meshes"
+
+[target.unix.activation.env]
+CMAKE_INSTALL_PREFIX = "$CONDA_PREFIX"
+# We need to add also the mystica mesh folder to MATLABPATH
+# See https://github.com/ami-iit/mystica/pull/4
+MATLABPATH = "$MATLABPATH;$CONDA_PREFIX/mex/+mystica/meshes"
+
+[tasks]
+# Download and install src deps (in this case a pure MATLAB library, mystica)
+download_src_deps = {cmd = "echo Download src deps && git lfs install && mkdir -p ./.pixi_ws/src && git clone https://github.com/ami-iit/mystica.git --branch v2022.06.0 ./.pixi_ws/src/mystica", outputs=[".pixi_ws/src/mystica/README.md"]}
+# We copy the +mystica MATLAB package to $CMAKE_INSTALL_PREFIX/mex as this directory is already part of MATLABPATH thanks to casadi-matlab-bindings activation scripts
+install_src_deps = {cmd = "echo Install src deps && cp -r ./.pixi_ws/src/mystica/+mystica $CMAKE_INSTALL_PREFIX/mex/+mystica && cp -r ./.pixi_ws/src/mystica/meshes $CMAKE_INSTALL_PREFIX/mex/+mystica/meshes", depends-on = "download_src_deps" }
+# If there is any problem, run uninstall_src_deps to uninstall the source dependencies
+cleanup_src_deps = {cmd = "echo Uninstall src deps && rm -rf $CMAKE_INSTALL_PREFIX/mex/+mystica && rm -rf ./.pixi_ws/src"}
+run_scripts = { cmd = "echo test", depends-on = "install_src_deps"}
+sim1 = {cmd = "matlab -nosplash -nodesktop -batch \"run('./scripts/sim1.m')\"", depends-on = "install_src_deps"}
+sim2 = {cmd = "matlab -nosplash -nodesktop -batch \"run('./scripts/sim2.m')\"", depends-on = "install_src_deps"}
+sim3 = {cmd = "matlab -nosplash -nodesktop -batch \"run('./scripts/sim3.m')\"", depends-on = "install_src_deps"}
+sim4 = {cmd = "matlab -nosplash -nodesktop -batch \"run('./scripts/sim4.m')\"", depends-on = "install_src_deps"}
+
+[dependencies]
+# The version of mystica installed is only compatible with casadi 3.5.*
+casadi-matlab-bindings = "3.5.*"
+# Ensure that we have git and git lfs as mystica uses git-lfs
+git = "*"
+git-lfs = "*"