sleipnirgroup-jormungandr 0.6.7.dev2__tar.gz → 0.6.7.dev4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of sleipnirgroup-jormungandr might be problematic. Click here for more details.

Files changed (122) hide show
  1. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/PKG-INFO +1 -1
  2. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/cmake/Pybind11Mkdoc.cmake +10 -12
  3. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/ipm.hpp +2 -2
  4. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/newton.hpp +2 -2
  5. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/sqp.hpp +2 -2
  6. sleipnirgroup_jormungandr-0.6.7.dev2/include/sleipnir/optimization/solver/util/dense_regularized_ldlt.hpp → sleipnirgroup_jormungandr-0.6.7.dev4/include/sleipnir/optimization/solver/util/dense_kkt_solver.hpp +13 -12
  7. sleipnirgroup_jormungandr-0.6.7.dev2/include/sleipnir/optimization/solver/util/regularized_ldlt.hpp → sleipnirgroup_jormungandr-0.6.7.dev4/include/sleipnir/optimization/solver/util/kkt_solver.hpp +18 -16
  8. sleipnirgroup_jormungandr-0.6.7.dev2/include/sleipnir/optimization/solver/util/sparse_regularized_ldlt.hpp → sleipnirgroup_jormungandr-0.6.7.dev4/include/sleipnir/optimization/solver/util/sparse_kkt_solver.hpp +13 -13
  9. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/pyproject.toml +2 -2
  10. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/src/sleipnir/__init__.py +1 -1
  11. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/CMakeLists.txt +0 -0
  12. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/LICENSE.txt +0 -0
  13. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/README.md +0 -0
  14. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/SleipnirConfig.cmake.in +0 -0
  15. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/cmake/BuildTypes.cmake +0 -0
  16. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/cmake/CompilerFlags.cmake +0 -0
  17. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/cmake/SubdirList.cmake +0 -0
  18. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/cmake/arm-none-eabi.cmake +0 -0
  19. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/expression.hpp +0 -0
  20. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/expression_graph.hpp +0 -0
  21. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/expression_type.hpp +0 -0
  22. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/gradient.hpp +0 -0
  23. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/hessian.hpp +0 -0
  24. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/jacobian.hpp +0 -0
  25. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/sleipnir_base.hpp +0 -0
  26. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/slice.hpp +0 -0
  27. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/variable.hpp +0 -0
  28. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/variable_block.hpp +0 -0
  29. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/autodiff/variable_matrix.hpp +0 -0
  30. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/multistart.hpp +0 -0
  31. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/ocp/dynamics_type.hpp +0 -0
  32. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/ocp/timestep_method.hpp +0 -0
  33. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/ocp/transcription_method.hpp +0 -0
  34. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/ocp.hpp +0 -0
  35. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/problem.hpp +0 -0
  36. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/exit_status.hpp +0 -0
  37. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/ipm_matrix_callbacks.hpp +0 -0
  38. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/iteration_info.hpp +0 -0
  39. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/newton_matrix_callbacks.hpp +0 -0
  40. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/options.hpp +0 -0
  41. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/sqp_matrix_callbacks.hpp +0 -0
  42. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/all_finite.hpp +0 -0
  43. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/append_as_triplets.hpp +0 -0
  44. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/bounds.hpp +0 -0
  45. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/feasibility_restoration.hpp +0 -0
  46. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/filter.hpp +0 -0
  47. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/fraction_to_the_boundary_rule.hpp +0 -0
  48. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/inertia.hpp +0 -0
  49. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/kkt_error.hpp +0 -0
  50. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/lagrange_multiplier_estimate.hpp +0 -0
  51. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/problem_scaling.hpp +0 -0
  52. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/optimization/solver/util/sparse_inf_norms.hpp +0 -0
  53. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/assert.hpp +0 -0
  54. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/concepts.hpp +0 -0
  55. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/empty.hpp +0 -0
  56. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/function_ref.hpp +0 -0
  57. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/intrusive_shared_ptr.hpp +0 -0
  58. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/pool.hpp +0 -0
  59. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/print.hpp +0 -0
  60. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/print_diagnostics.hpp +0 -0
  61. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/profiler.hpp +0 -0
  62. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/scope_exit.hpp +0 -0
  63. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/spy.hpp +0 -0
  64. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/include/sleipnir/util/symbol_exports.hpp +0 -0
  65. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/autodiff/bind_expression_type.cpp +0 -0
  66. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/autodiff/bind_gradient.cpp +0 -0
  67. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/autodiff/bind_hessian.cpp +0 -0
  68. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/autodiff/bind_jacobian.cpp +0 -0
  69. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/autodiff/bind_variable.cpp +0 -0
  70. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/autodiff/bind_variable_block.cpp +0 -0
  71. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/autodiff/bind_variable_matrix.cpp +0 -0
  72. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/binders.hpp +0 -0
  73. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/docstrings.hpp +0 -0
  74. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/for_each_type.hpp +0 -0
  75. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/main.cpp +0 -0
  76. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/bind_equality_constraints.cpp +0 -0
  77. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/bind_inequality_constraints.cpp +0 -0
  78. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/bind_ocp.cpp +0 -0
  79. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/bind_problem.cpp +0 -0
  80. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/ocp/bind_dynamics_type.cpp +0 -0
  81. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/ocp/bind_timestep_method.cpp +0 -0
  82. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/ocp/bind_transcription_method.cpp +0 -0
  83. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/solver/bind_exit_status.cpp +0 -0
  84. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/optimization/solver/bind_iteration_info.cpp +0 -0
  85. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/cpp/try_cast.hpp +0 -0
  86. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/src/sleipnir/autodiff/__init__.py +0 -0
  87. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/src/sleipnir/optimization/__init__.py +0 -0
  88. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/autodiff/gradient_test.py +0 -0
  89. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/autodiff/hessian_test.py +0 -0
  90. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/autodiff/jacobian_test.py +0 -0
  91. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/autodiff/variable_matrix_test.py +0 -0
  92. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/autodiff/variable_test.py +0 -0
  93. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/arm_on_elevator_problem_test.py +0 -0
  94. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/cart_pole_ocp_test.py +0 -0
  95. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/cart_pole_problem_test.py +0 -0
  96. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/cart_pole_util.py +0 -0
  97. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/constraints_test.py +0 -0
  98. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/decision_variable_test.py +0 -0
  99. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/differential_drive_ocp_test.py +0 -0
  100. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/differential_drive_problem_test.py +0 -0
  101. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/differential_drive_util.py +0 -0
  102. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/double_integrator_problem_test.py +0 -0
  103. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/flywheel_ocp_test.py +0 -0
  104. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/flywheel_problem_test.py +0 -0
  105. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/linear_problem_test.py +0 -0
  106. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/multistart_test.py +0 -0
  107. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/nonlinear_problem_test.py +0 -0
  108. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/problem_spy_test.py +0 -0
  109. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/quadratic_problem_test.py +0 -0
  110. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/rk4.py +0 -0
  111. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/solver/exit_status_test.py +0 -0
  112. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/python/test/optimization/trivial_problem_test.py +0 -0
  113. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/autodiff/gradient.cpp +0 -0
  114. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/autodiff/hessian.cpp +0 -0
  115. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/autodiff/jacobian.cpp +0 -0
  116. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/autodiff/variable_matrix.cpp +0 -0
  117. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/optimization/ocp.cpp +0 -0
  118. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/optimization/problem.cpp +0 -0
  119. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/optimization/solver/ipm.cpp +0 -0
  120. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/optimization/solver/newton.cpp +0 -0
  121. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/optimization/solver/sqp.cpp +0 -0
  122. {sleipnirgroup_jormungandr-0.6.7.dev2 → sleipnirgroup_jormungandr-0.6.7.dev4}/src/util/pool.cpp +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sleipnirgroup-jormungandr
3
- Version: 0.6.7.dev2
3
+ Version: 0.6.7.dev4
4
4
  Summary: Reverse mode autodiff library and NLP solver DSL
5
5
  License-Expression: BSD-3-Clause
6
6
  License-File: LICENSE.txt
@@ -5,16 +5,16 @@ function(pybind11_mkdoc target headers)
5
5
  get_target_property(target_flags ${target} INCLUDE_DIRECTORIES)
6
6
  list(TRANSFORM target_flags PREPEND "-I")
7
7
 
8
- # Get default clang version
9
- execute_process(
10
- COMMAND clang++ --version
11
- OUTPUT_VARIABLE clang_version
12
- COMMAND_ERROR_IS_FATAL ANY
13
- )
14
- string(REGEX MATCH "[0-9]+" clang_version ${clang_version})
15
-
16
- # LLVM environment variables
17
8
  if(UNIX AND NOT APPLE)
9
+ # Get default clang version
10
+ execute_process(
11
+ COMMAND clang++ --version
12
+ OUTPUT_VARIABLE clang_version
13
+ COMMAND_ERROR_IS_FATAL ANY
14
+ )
15
+ string(REGEX MATCH "[0-9]+" clang_version ${clang_version})
16
+
17
+ # LLVM environment variables
18
18
  if(EXISTS /usr/lib/libclang.so)
19
19
  set(env_vars
20
20
  LLVM_DIR_PATH=/usr/lib
@@ -26,10 +26,8 @@ function(pybind11_mkdoc target headers)
26
26
  LIBCLANG_PATH=/usr/lib/llvm-${clang_version}/lib/libclang.so
27
27
  )
28
28
  endif()
29
- endif()
30
29
 
31
- # Clang compiler flags
32
- if(UNIX AND NOT APPLE)
30
+ # Clang compiler flags
33
31
  set(clang_flags -I/usr/lib/clang/${clang_version}/include)
34
32
  endif()
35
33
 
@@ -22,7 +22,7 @@
22
22
  #include "sleipnir/optimization/solver/util/filter.hpp"
23
23
  #include "sleipnir/optimization/solver/util/fraction_to_the_boundary_rule.hpp"
24
24
  #include "sleipnir/optimization/solver/util/kkt_error.hpp"
25
- #include "sleipnir/optimization/solver/util/regularized_ldlt.hpp"
25
+ #include "sleipnir/optimization/solver/util/kkt_solver.hpp"
26
26
  #include "sleipnir/util/assert.hpp"
27
27
  #include "sleipnir/util/print_diagnostics.hpp"
28
28
  #include "sleipnir/util/profiler.hpp"
@@ -333,7 +333,7 @@ ExitStatus ipm(const IPMMatrixCallbacks<Scalar>& matrix_callbacks,
333
333
 
334
334
  const int lhs_rows =
335
335
  matrices.num_decision_variables + matrices.num_equality_constraints;
336
- RegularizedLDLT<Scalar> solver{
336
+ KKTSolver<Scalar> solver{
337
337
  // Use sparse solver if lower triangle fills < 25% of system
338
338
  H.nonZeros() +
339
339
  (A_i.transpose() * A_i)
@@ -18,7 +18,7 @@
18
18
  #include "sleipnir/optimization/solver/util/all_finite.hpp"
19
19
  #include "sleipnir/optimization/solver/util/filter.hpp"
20
20
  #include "sleipnir/optimization/solver/util/kkt_error.hpp"
21
- #include "sleipnir/optimization/solver/util/regularized_ldlt.hpp"
21
+ #include "sleipnir/optimization/solver/util/kkt_solver.hpp"
22
22
  #include "sleipnir/util/assert.hpp"
23
23
  #include "sleipnir/util/print_diagnostics.hpp"
24
24
  #include "sleipnir/util/profiler.hpp"
@@ -131,7 +131,7 @@ ExitStatus newton(
131
131
 
132
132
  Filter<Scalar> filter;
133
133
 
134
- RegularizedLDLT<Scalar> solver{
134
+ KKTSolver<Scalar> solver{
135
135
  // Use sparse solver if lower triangle fills < 25% of system
136
136
  H.nonZeros() < 0.25 * H.size(), matrices.num_decision_variables, 0};
137
137
 
@@ -20,7 +20,7 @@
20
20
  #include "sleipnir/optimization/solver/util/feasibility_restoration.hpp"
21
21
  #include "sleipnir/optimization/solver/util/filter.hpp"
22
22
  #include "sleipnir/optimization/solver/util/kkt_error.hpp"
23
- #include "sleipnir/optimization/solver/util/regularized_ldlt.hpp"
23
+ #include "sleipnir/optimization/solver/util/kkt_solver.hpp"
24
24
  #include "sleipnir/util/assert.hpp"
25
25
  #include "sleipnir/util/print_diagnostics.hpp"
26
26
  #include "sleipnir/util/profiler.hpp"
@@ -225,7 +225,7 @@ ExitStatus sqp(const SQPMatrixCallbacks<Scalar>& matrix_callbacks,
225
225
 
226
226
  const int lhs_rows =
227
227
  matrices.num_decision_variables + matrices.num_equality_constraints;
228
- RegularizedLDLT<Scalar> solver{
228
+ KKTSolver<Scalar> solver{
229
229
  // Use sparse solver if lower triangle fills < 25% of system
230
230
  H.nonZeros() + A_e.nonZeros() < 0.25 * lhs_rows * lhs_rows,
231
231
  matrices.num_decision_variables, matrices.num_equality_constraints};
@@ -12,37 +12,38 @@
12
12
 
13
13
  namespace slp {
14
14
 
15
- /// Solves dense systems of linear equations using a regularized LDLT
16
- /// factorization.
15
+ /// Solves a dense KKT system.
16
+ ///
17
+ /// Applies regularization so the solution is a descent direction.
17
18
  ///
18
19
  /// @tparam Scalar Scalar type.
19
20
  template <typename Scalar>
20
- class DenseRegularizedLDLT {
21
+ class DenseKKTSolver {
21
22
  public:
22
23
  /// Type alias for dense matrix.
23
24
  using DenseMatrix = Eigen::Matrix<Scalar, Eigen::Dynamic, Eigen::Dynamic>;
24
25
  /// Type alias for dense vector.
25
26
  using DenseVector = Eigen::Vector<Scalar, Eigen::Dynamic>;
26
27
 
27
- /// Constructs a DenseRegularizedLDLT instance.
28
+ /// Constructs a DenseKKTSolver instance.
28
29
  ///
29
30
  /// @param num_decision_variables The number of decision variables in the
30
31
  /// system.
31
32
  /// @param num_equality_constraints The number of equality constraints in the
32
33
  /// system.
33
- DenseRegularizedLDLT(int num_decision_variables, int num_equality_constraints)
34
+ DenseKKTSolver(int num_decision_variables, int num_equality_constraints)
34
35
  : m_num_decision_variables{num_decision_variables},
35
36
  m_num_equality_constraints{num_equality_constraints} {}
36
37
 
37
- /// Constructs a DenseRegularizedLDLT instance.
38
+ /// Constructs a DenseKKTSolver instance.
38
39
  ///
39
40
  /// @param num_decision_variables The number of decision variables in the
40
41
  /// system.
41
42
  /// @param num_equality_constraints The number of equality constraints in the
42
43
  /// system.
43
44
  /// @param γ_min The minimum constraint regularization.
44
- DenseRegularizedLDLT(int num_decision_variables, int num_equality_constraints,
45
- Scalar γ_min)
45
+ DenseKKTSolver(int num_decision_variables, int num_equality_constraints,
46
+ Scalar γ_min)
46
47
  : m_num_decision_variables{num_decision_variables},
47
48
  m_num_equality_constraints{num_equality_constraints},
48
49
  m_γ_min{γ_min} {}
@@ -52,11 +53,11 @@ class DenseRegularizedLDLT {
52
53
  /// @return Whether previous computation was successful.
53
54
  Eigen::ComputationInfo info() const { return m_info; }
54
55
 
55
- /// Computes the regularized LDLT factorization of a matrix.
56
+ /// Computes the factorization of the KKT matrix.
56
57
  ///
57
58
  /// @param lhs Left-hand side of the system.
58
59
  /// @return The factorization.
59
- DenseRegularizedLDLT& compute(const DenseMatrix& lhs) {
60
+ DenseKKTSolver& compute(const DenseMatrix& lhs) {
60
61
  m_info = m_solver.compute(lhs).info();
61
62
 
62
63
  if (m_info == Eigen::Success) {
@@ -135,7 +136,7 @@ class DenseRegularizedLDLT {
135
136
  }
136
137
  }
137
138
 
138
- /// Solves the system of equations using a regularized LDLT factorization.
139
+ /// Solves the system of equations.
139
140
  ///
140
141
  /// @param rhs Right-hand side of the system.
141
142
  /// @return The solution.
@@ -144,7 +145,7 @@ class DenseRegularizedLDLT {
144
145
  return m_solver.solve(rhs);
145
146
  }
146
147
 
147
- /// Solves the system of equations using a regularized LDLT factorization.
148
+ /// Solves the system of equations.
148
149
  ///
149
150
  /// @param rhs Right-hand side of the system.
150
151
  /// @return The solution.
@@ -5,36 +5,38 @@
5
5
  #include <Eigen/Core>
6
6
  #include <Eigen/SparseCore>
7
7
 
8
- #include "sleipnir/optimization/solver/util/dense_regularized_ldlt.hpp"
9
- #include "sleipnir/optimization/solver/util/sparse_regularized_ldlt.hpp"
8
+ #include "sleipnir/optimization/solver/util/dense_kkt_solver.hpp"
9
+ #include "sleipnir/optimization/solver/util/sparse_kkt_solver.hpp"
10
10
 
11
11
  namespace slp {
12
12
 
13
- /// Solves systems of linear equations using a regularized LDLT factorization.
13
+ /// Solves a KKT system.
14
+ ///
15
+ /// Applies regularization so the solution is a descent direction.
14
16
  ///
15
17
  /// @tparam Scalar Scalar type.
16
18
  template <typename Scalar>
17
- class RegularizedLDLT {
19
+ class KKTSolver {
18
20
  public:
19
21
  /// Type alias for dense vector.
20
22
  using DenseVector = Eigen::Vector<Scalar, Eigen::Dynamic>;
21
23
  /// Type alias for sparse matrix.
22
24
  using SparseMatrix = Eigen::SparseMatrix<Scalar>;
23
25
 
24
- /// Constructs a RegularizedLDLT instance.
26
+ /// Constructs a KKTSolver instance.
25
27
  ///
26
28
  /// @param use_sparse_solver Whether to use sparse or dense solver.
27
29
  /// @param num_decision_variables The number of decision variables in the
28
30
  /// system.
29
31
  /// @param num_equality_constraints The number of equality constraints in the
30
32
  /// system.
31
- RegularizedLDLT(bool use_sparse_solver, int num_decision_variables,
32
- int num_equality_constraints)
33
+ KKTSolver(bool use_sparse_solver, int num_decision_variables,
34
+ int num_equality_constraints)
33
35
  : m_use_sparse_solver{use_sparse_solver},
34
36
  m_sparse_solver{num_decision_variables, num_equality_constraints},
35
37
  m_dense_solver{num_decision_variables, num_equality_constraints} {}
36
38
 
37
- /// Constructs a RegularizedLDLT instance.
39
+ /// Constructs a KKTSolver instance.
38
40
  ///
39
41
  /// @param use_sparse_solver Whether to use sparse or dense solver.
40
42
  /// @param num_decision_variables The number of decision variables in the
@@ -42,8 +44,8 @@ class RegularizedLDLT {
42
44
  /// @param num_equality_constraints The number of equality constraints in the
43
45
  /// system.
44
46
  /// @param γ_min The minimum constraint regularization.
45
- RegularizedLDLT(bool use_sparse_solver, int num_decision_variables,
46
- int num_equality_constraints, Scalar γ_min)
47
+ KKTSolver(bool use_sparse_solver, int num_decision_variables,
48
+ int num_equality_constraints, Scalar γ_min)
47
49
  : m_use_sparse_solver{use_sparse_solver},
48
50
  m_sparse_solver{num_decision_variables, num_equality_constraints,
49
51
  γ_min},
@@ -61,7 +63,7 @@ class RegularizedLDLT {
61
63
  }
62
64
  }
63
65
 
64
- /// Computes the regularized LDLT factorization of a matrix.
66
+ /// Computes the factorization of the KKT matrix.
65
67
  ///
66
68
  /// In sparse mode, the matrix's symbolic decomposition is reused in
67
69
  /// subsequent calls, so subsequent calls must be given a matrix with the same
@@ -69,7 +71,7 @@ class RegularizedLDLT {
69
71
  ///
70
72
  /// @param lhs Left-hand side of the system.
71
73
  /// @return The factorization.
72
- RegularizedLDLT& compute(const SparseMatrix& lhs) {
74
+ KKTSolver& compute(const SparseMatrix& lhs) {
73
75
  if (m_use_sparse_solver) {
74
76
  m_sparse_solver.compute(lhs);
75
77
  } else {
@@ -79,7 +81,7 @@ class RegularizedLDLT {
79
81
  return *this;
80
82
  }
81
83
 
82
- /// Solves the system of equations using a regularized LDLT factorization.
84
+ /// Solves the system of equations.
83
85
  ///
84
86
  /// @param rhs Right-hand side of the system.
85
87
  /// @return The solution.
@@ -92,7 +94,7 @@ class RegularizedLDLT {
92
94
  }
93
95
  }
94
96
 
95
- /// Solves the system of equations using a regularized LDLT factorization.
97
+ /// Solves the system of equations.
96
98
  ///
97
99
  /// @param rhs Right-hand side of the system.
98
100
  /// @return The solution.
@@ -129,8 +131,8 @@ class RegularizedLDLT {
129
131
 
130
132
  private:
131
133
  bool m_use_sparse_solver;
132
- SparseRegularizedLDLT<Scalar> m_sparse_solver;
133
- DenseRegularizedLDLT<Scalar> m_dense_solver;
134
+ SparseKKTSolver<Scalar> m_sparse_solver;
135
+ DenseKKTSolver<Scalar> m_dense_solver;
134
136
  };
135
137
 
136
138
  } // namespace slp
@@ -13,38 +13,38 @@
13
13
 
14
14
  namespace slp {
15
15
 
16
- /// Solves sparse systems of linear equations using a regularized LDLT
17
- /// factorization.
16
+ /// Solves a sparse KKT system.
17
+ ///
18
+ /// Applies regularization so the solution is a descent direction.
18
19
  ///
19
20
  /// @tparam Scalar Scalar type.
20
21
  template <typename Scalar>
21
- class SparseRegularizedLDLT {
22
+ class SparseKKTSolver {
22
23
  public:
23
24
  /// Type alias for dense vector.
24
25
  using DenseVector = Eigen::Vector<Scalar, Eigen::Dynamic>;
25
26
  /// Type alias for sparse matrix.
26
27
  using SparseMatrix = Eigen::SparseMatrix<Scalar>;
27
28
 
28
- /// Constructs a SparseRegularizedLDLT instance.
29
+ /// Constructs a SparseKKTSolver instance.
29
30
  ///
30
31
  /// @param num_decision_variables The number of decision variables in the
31
32
  /// system.
32
33
  /// @param num_equality_constraints The number of equality constraints in the
33
34
  /// system.
34
- SparseRegularizedLDLT(int num_decision_variables,
35
- int num_equality_constraints)
35
+ SparseKKTSolver(int num_decision_variables, int num_equality_constraints)
36
36
  : m_num_decision_variables{num_decision_variables},
37
37
  m_num_equality_constraints{num_equality_constraints} {}
38
38
 
39
- /// Constructs a SparseRegularizedLDLT instance.
39
+ /// Constructs a SparseKKTSolver instance.
40
40
  ///
41
41
  /// @param num_decision_variables The number of decision variables in the
42
42
  /// system.
43
43
  /// @param num_equality_constraints The number of equality constraints in the
44
44
  /// system.
45
45
  /// @param γ_min The minimum constraint regularization.
46
- SparseRegularizedLDLT(int num_decision_variables,
47
- int num_equality_constraints, Scalar γ_min)
46
+ SparseKKTSolver(int num_decision_variables, int num_equality_constraints,
47
+ Scalar γ_min)
48
48
  : m_num_decision_variables{num_decision_variables},
49
49
  m_num_equality_constraints{num_equality_constraints},
50
50
  m_γ_min{γ_min} {}
@@ -54,14 +54,14 @@ class SparseRegularizedLDLT {
54
54
  /// @return Whether previous computation was successful.
55
55
  Eigen::ComputationInfo info() const { return m_info; }
56
56
 
57
- /// Computes the regularized LDLT factorization of a matrix.
57
+ /// Computes the factorization of the KKT matrix.
58
58
  ///
59
59
  /// The matrix's symbolic decomposition is reused in subsequent calls, so
60
60
  /// subsequent calls must be given a matrix with the same sparsity pattern.
61
61
  ///
62
62
  /// @param lhs Left-hand side of the system.
63
63
  /// @return The factorization.
64
- SparseRegularizedLDLT& compute(const SparseMatrix& lhs) {
64
+ SparseKKTSolver& compute(const SparseMatrix& lhs) {
65
65
  // Regularization with zeros ensures the pattern analysis in the sparse
66
66
  // solver is reused by all factorizations
67
67
  SparseMatrix unregularized_lhs = lhs + regularization(Scalar(0), Scalar(0));
@@ -151,7 +151,7 @@ class SparseRegularizedLDLT {
151
151
  }
152
152
  }
153
153
 
154
- /// Solves the system of equations using a regularized LDLT factorization.
154
+ /// Solves the system of equations.
155
155
  ///
156
156
  /// @param rhs Right-hand side of the system.
157
157
  /// @return The solution.
@@ -160,7 +160,7 @@ class SparseRegularizedLDLT {
160
160
  return m_solver.solve(rhs);
161
161
  }
162
162
 
163
- /// Solves the system of equations using a regularized LDLT factorization.
163
+ /// Solves the system of equations.
164
164
  ///
165
165
  /// @param rhs Right-hand side of the system.
166
166
  /// @return The solution.
@@ -13,8 +13,8 @@ license-files = ["LICENSE.txt"]
13
13
 
14
14
  [build-system]
15
15
  requires = [
16
- "nanobind~=2.15.0",
17
- "py-build-cmake~=0.5.0",
16
+ "nanobind~=3.0.1",
17
+ "py-build-cmake~=0.5.1",
18
18
  "pybind11-mkdoc~=3.0.0",
19
19
  ]
20
20
  build-backend = "py_build_cmake.build"
@@ -2,4 +2,4 @@
2
2
 
3
3
  from ._sleipnir import *
4
4
 
5
- __version__ = "0.6.7.dev2"
5
+ __version__ = "0.6.7.dev4"