├── .gitignore ├── .gitmodules ├── CITATION.cff ├── CMakeLists.txt ├── LICENSE ├── README.md ├── bindings ├── CMakeLists.txt ├── contactbench.cc ├── contactbench.hh ├── context-cppad.hh ├── context.hh └── pycontact │ ├── __init__.py │ ├── inverse_dynamics.py │ ├── jax │ ├── __init__.py │ └── solvers.py │ ├── simulators.py │ ├── solvers.py │ ├── torch │ ├── __init__.py │ └── solvers.py │ └── utils │ ├── __init__.py │ ├── bench.py │ ├── callbacks.py │ └── pin_utils.py ├── examples ├── 2cubes.py ├── ball.py ├── cube.py ├── hand.py ├── humanoid.py ├── solo.py ├── solve_ncp.py ├── ur5.py └── utils │ ├── models.py │ └── visualize.py ├── include └── contactbench │ ├── bindings │ └── context.hh │ ├── contact-problem.hpp │ ├── contact-problem.hxx │ ├── contact-problem.txx │ ├── context.hpp │ ├── delassus-wrapper.hpp │ ├── delassus-wrapper.hxx │ ├── delassus-wrapper.txx │ ├── friction-constraint.hpp │ ├── friction-constraint.hxx │ ├── fwd.hpp │ ├── helpers.hpp │ ├── macros.hpp │ ├── math.hpp │ ├── solvers.hpp │ ├── solvers.hxx │ └── solvers.txx ├── setup.py ├── src ├── contact-problem.cpp ├── delassus-wrapper.cpp └── solvers.cpp └── tests ├── CMakeLists.txt ├── autodiff ├── CMakeLists.txt ├── contact-problem-cppad.cpp ├── delassus-cppad.cpp ├── friction-constraints-cppad.cpp └── solvers-cppad.cpp ├── contact-problem.cpp ├── delassus.cpp ├── friction-constraints.cpp ├── python ├── data │ ├── 2cubes_t0.npz │ └── sliding_cube.npz ├── test_collisions.py ├── test_contact_problem.py ├── test_delassus_wrapper.py ├── test_friction_constraint.py ├── test_jax_solvers.py ├── test_pytorch_solvers.py ├── test_solvers.py └── test_solvers_grad.py ├── solvers-derivatives.cpp └── solvers.cpp /.gitignore: -------------------------------------------------------------------------------- 1 | examples/log/ 2 | *.pyc 3 | build*/ 4 | compile_commands.json 5 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/.gitmodules -------------------------------------------------------------------------------- /CITATION.cff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/CITATION.cff -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/CMakeLists.txt -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/README.md -------------------------------------------------------------------------------- /bindings/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/CMakeLists.txt -------------------------------------------------------------------------------- /bindings/contactbench.cc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/contactbench.cc -------------------------------------------------------------------------------- /bindings/contactbench.hh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/contactbench.hh -------------------------------------------------------------------------------- /bindings/context-cppad.hh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/context-cppad.hh -------------------------------------------------------------------------------- /bindings/context.hh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/context.hh -------------------------------------------------------------------------------- /bindings/pycontact/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/__init__.py -------------------------------------------------------------------------------- /bindings/pycontact/inverse_dynamics.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/inverse_dynamics.py -------------------------------------------------------------------------------- /bindings/pycontact/jax/__init__.py: -------------------------------------------------------------------------------- 1 | from . import solvers 2 | -------------------------------------------------------------------------------- /bindings/pycontact/jax/solvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/jax/solvers.py -------------------------------------------------------------------------------- /bindings/pycontact/simulators.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/simulators.py -------------------------------------------------------------------------------- /bindings/pycontact/solvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/solvers.py -------------------------------------------------------------------------------- /bindings/pycontact/torch/__init__.py: -------------------------------------------------------------------------------- 1 | from . import solvers 2 | -------------------------------------------------------------------------------- /bindings/pycontact/torch/solvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/torch/solvers.py -------------------------------------------------------------------------------- /bindings/pycontact/utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/utils/__init__.py -------------------------------------------------------------------------------- /bindings/pycontact/utils/bench.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/utils/bench.py -------------------------------------------------------------------------------- /bindings/pycontact/utils/callbacks.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/utils/callbacks.py -------------------------------------------------------------------------------- /bindings/pycontact/utils/pin_utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/bindings/pycontact/utils/pin_utils.py -------------------------------------------------------------------------------- /examples/2cubes.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/2cubes.py -------------------------------------------------------------------------------- /examples/ball.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/ball.py -------------------------------------------------------------------------------- /examples/cube.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/cube.py -------------------------------------------------------------------------------- /examples/hand.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/hand.py -------------------------------------------------------------------------------- /examples/humanoid.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/humanoid.py -------------------------------------------------------------------------------- /examples/solo.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/solo.py -------------------------------------------------------------------------------- /examples/solve_ncp.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/solve_ncp.py -------------------------------------------------------------------------------- /examples/ur5.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/ur5.py -------------------------------------------------------------------------------- /examples/utils/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/utils/models.py -------------------------------------------------------------------------------- /examples/utils/visualize.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/examples/utils/visualize.py -------------------------------------------------------------------------------- /include/contactbench/bindings/context.hh: -------------------------------------------------------------------------------- 1 | /home/qlelidec/Documents/willow/diffcontact-bench/bindings/context.hh -------------------------------------------------------------------------------- /include/contactbench/contact-problem.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/contact-problem.hpp -------------------------------------------------------------------------------- /include/contactbench/contact-problem.hxx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/contact-problem.hxx -------------------------------------------------------------------------------- /include/contactbench/contact-problem.txx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/contact-problem.txx -------------------------------------------------------------------------------- /include/contactbench/context.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/context.hpp -------------------------------------------------------------------------------- /include/contactbench/delassus-wrapper.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/delassus-wrapper.hpp -------------------------------------------------------------------------------- /include/contactbench/delassus-wrapper.hxx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/delassus-wrapper.hxx -------------------------------------------------------------------------------- /include/contactbench/delassus-wrapper.txx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/delassus-wrapper.txx -------------------------------------------------------------------------------- /include/contactbench/friction-constraint.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/friction-constraint.hpp -------------------------------------------------------------------------------- /include/contactbench/friction-constraint.hxx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/friction-constraint.hxx -------------------------------------------------------------------------------- /include/contactbench/fwd.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/fwd.hpp -------------------------------------------------------------------------------- /include/contactbench/helpers.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/helpers.hpp -------------------------------------------------------------------------------- /include/contactbench/macros.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/macros.hpp -------------------------------------------------------------------------------- /include/contactbench/math.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/math.hpp -------------------------------------------------------------------------------- /include/contactbench/solvers.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/solvers.hpp -------------------------------------------------------------------------------- /include/contactbench/solvers.hxx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/solvers.hxx -------------------------------------------------------------------------------- /include/contactbench/solvers.txx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/include/contactbench/solvers.txx -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/setup.py -------------------------------------------------------------------------------- /src/contact-problem.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/src/contact-problem.cpp -------------------------------------------------------------------------------- /src/delassus-wrapper.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/src/delassus-wrapper.cpp -------------------------------------------------------------------------------- /src/solvers.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/src/solvers.cpp -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/CMakeLists.txt -------------------------------------------------------------------------------- /tests/autodiff/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/autodiff/CMakeLists.txt -------------------------------------------------------------------------------- /tests/autodiff/contact-problem-cppad.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/autodiff/contact-problem-cppad.cpp -------------------------------------------------------------------------------- /tests/autodiff/delassus-cppad.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/autodiff/delassus-cppad.cpp -------------------------------------------------------------------------------- /tests/autodiff/friction-constraints-cppad.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/autodiff/friction-constraints-cppad.cpp -------------------------------------------------------------------------------- /tests/autodiff/solvers-cppad.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/autodiff/solvers-cppad.cpp -------------------------------------------------------------------------------- /tests/contact-problem.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/contact-problem.cpp -------------------------------------------------------------------------------- /tests/delassus.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/delassus.cpp -------------------------------------------------------------------------------- /tests/friction-constraints.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/friction-constraints.cpp -------------------------------------------------------------------------------- /tests/python/data/2cubes_t0.npz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/data/2cubes_t0.npz -------------------------------------------------------------------------------- /tests/python/data/sliding_cube.npz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/data/sliding_cube.npz -------------------------------------------------------------------------------- /tests/python/test_collisions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_collisions.py -------------------------------------------------------------------------------- /tests/python/test_contact_problem.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_contact_problem.py -------------------------------------------------------------------------------- /tests/python/test_delassus_wrapper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_delassus_wrapper.py -------------------------------------------------------------------------------- /tests/python/test_friction_constraint.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_friction_constraint.py -------------------------------------------------------------------------------- /tests/python/test_jax_solvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_jax_solvers.py -------------------------------------------------------------------------------- /tests/python/test_pytorch_solvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_pytorch_solvers.py -------------------------------------------------------------------------------- /tests/python/test_solvers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_solvers.py -------------------------------------------------------------------------------- /tests/python/test_solvers_grad.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/python/test_solvers_grad.py -------------------------------------------------------------------------------- /tests/solvers-derivatives.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/solvers-derivatives.cpp -------------------------------------------------------------------------------- /tests/solvers.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Simple-Robotics/ContactBench/HEAD/tests/solvers.cpp --------------------------------------------------------------------------------