sleipnirgroup-jormungandr 0.6.3.dev2__tar.gz → 0.6.4.dev1__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 (123) hide show
  1. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/PKG-INFO +1 -1
  2. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/variable_block.hpp +0 -16
  3. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/docstrings.hpp +0 -9
  4. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/src/sleipnir/__init__.py +1 -1
  5. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/autodiff/variable_matrix_test.py +45 -0
  6. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/CMakeLists.txt +0 -0
  7. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/LICENSE.txt +0 -0
  8. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/README.md +0 -0
  9. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/SleipnirConfig.cmake.in +0 -0
  10. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/cmake/BuildTypes.cmake +0 -0
  11. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/cmake/CompilerFlags.cmake +0 -0
  12. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/cmake/Pybind11Mkdoc.cmake +0 -0
  13. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/cmake/SubdirList.cmake +0 -0
  14. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/cmake/arm-none-eabi.cmake +0 -0
  15. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/expression.hpp +0 -0
  16. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/expression_graph.hpp +0 -0
  17. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/expression_type.hpp +0 -0
  18. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/gradient.hpp +0 -0
  19. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/hessian.hpp +0 -0
  20. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/jacobian.hpp +0 -0
  21. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/sleipnir_base.hpp +0 -0
  22. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/slice.hpp +0 -0
  23. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/variable.hpp +0 -0
  24. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/autodiff/variable_matrix.hpp +0 -0
  25. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/multistart.hpp +0 -0
  26. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/ocp/dynamics_type.hpp +0 -0
  27. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/ocp/timestep_method.hpp +0 -0
  28. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/ocp/transcription_method.hpp +0 -0
  29. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/ocp.hpp +0 -0
  30. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/problem.hpp +0 -0
  31. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/exit_status.hpp +0 -0
  32. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/interior_point.hpp +0 -0
  33. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/interior_point_matrix_callbacks.hpp +0 -0
  34. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/iteration_info.hpp +0 -0
  35. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/newton.hpp +0 -0
  36. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/newton_matrix_callbacks.hpp +0 -0
  37. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/options.hpp +0 -0
  38. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/sqp.hpp +0 -0
  39. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/sqp_matrix_callbacks.hpp +0 -0
  40. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/all_finite.hpp +0 -0
  41. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/append_as_triplets.hpp +0 -0
  42. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/bounds.hpp +0 -0
  43. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/dense_regularized_ldlt.hpp +0 -0
  44. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/feasibility_restoration.hpp +0 -0
  45. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/filter.hpp +0 -0
  46. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/fraction_to_the_boundary_rule.hpp +0 -0
  47. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/inertia.hpp +0 -0
  48. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/is_locally_infeasible.hpp +0 -0
  49. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/kkt_error.hpp +0 -0
  50. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/lagrange_multiplier_estimate.hpp +0 -0
  51. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/problem_scaling.hpp +0 -0
  52. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/regularized_ldlt.hpp +0 -0
  53. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/sparse_inf_norms.hpp +0 -0
  54. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/optimization/solver/util/sparse_regularized_ldlt.hpp +0 -0
  55. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/assert.hpp +0 -0
  56. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/concepts.hpp +0 -0
  57. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/empty.hpp +0 -0
  58. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/function_ref.hpp +0 -0
  59. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/intrusive_shared_ptr.hpp +0 -0
  60. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/pool.hpp +0 -0
  61. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/print.hpp +0 -0
  62. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/print_diagnostics.hpp +0 -0
  63. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/profiler.hpp +0 -0
  64. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/scope_exit.hpp +0 -0
  65. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/spy.hpp +0 -0
  66. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/include/sleipnir/util/symbol_exports.hpp +0 -0
  67. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/pyproject.toml +0 -0
  68. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/autodiff/bind_expression_type.cpp +0 -0
  69. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/autodiff/bind_gradient.cpp +0 -0
  70. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/autodiff/bind_hessian.cpp +0 -0
  71. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/autodiff/bind_jacobian.cpp +0 -0
  72. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/autodiff/bind_variable.cpp +0 -0
  73. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/autodiff/bind_variable_block.cpp +0 -0
  74. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/autodiff/bind_variable_matrix.cpp +0 -0
  75. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/binders.hpp +0 -0
  76. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/for_each_type.hpp +0 -0
  77. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/main.cpp +0 -0
  78. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/bind_equality_constraints.cpp +0 -0
  79. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/bind_inequality_constraints.cpp +0 -0
  80. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/bind_ocp.cpp +0 -0
  81. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/bind_problem.cpp +0 -0
  82. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/ocp/bind_dynamics_type.cpp +0 -0
  83. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/ocp/bind_timestep_method.cpp +0 -0
  84. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/ocp/bind_transcription_method.cpp +0 -0
  85. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/solver/bind_exit_status.cpp +0 -0
  86. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/optimization/solver/bind_iteration_info.cpp +0 -0
  87. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/cpp/try_cast.hpp +0 -0
  88. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/src/sleipnir/autodiff/__init__.py +0 -0
  89. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/src/sleipnir/optimization/__init__.py +0 -0
  90. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/autodiff/gradient_test.py +0 -0
  91. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/autodiff/hessian_test.py +0 -0
  92. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/autodiff/jacobian_test.py +0 -0
  93. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/autodiff/variable_test.py +0 -0
  94. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/arm_on_elevator_problem_test.py +0 -0
  95. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/cart_pole_ocp_test.py +0 -0
  96. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/cart_pole_problem_test.py +0 -0
  97. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/cart_pole_util.py +0 -0
  98. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/constraints_test.py +0 -0
  99. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/decision_variable_test.py +0 -0
  100. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/differential_drive_ocp_test.py +0 -0
  101. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/differential_drive_problem_test.py +0 -0
  102. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/differential_drive_util.py +0 -0
  103. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/double_integrator_problem_test.py +0 -0
  104. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/flywheel_ocp_test.py +0 -0
  105. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/flywheel_problem_test.py +0 -0
  106. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/linear_problem_test.py +0 -0
  107. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/multistart_test.py +0 -0
  108. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/nonlinear_problem_test.py +0 -0
  109. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/problem_spy_test.py +0 -0
  110. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/quadratic_problem_test.py +0 -0
  111. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/rk4.py +0 -0
  112. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/solver/exit_status_test.py +0 -0
  113. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/python/test/optimization/trivial_problem_test.py +0 -0
  114. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/autodiff/gradient.cpp +0 -0
  115. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/autodiff/hessian.cpp +0 -0
  116. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/autodiff/jacobian.cpp +0 -0
  117. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/autodiff/variable_matrix.cpp +0 -0
  118. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/optimization/ocp.cpp +0 -0
  119. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/optimization/problem.cpp +0 -0
  120. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/optimization/solver/interior_point.cpp +0 -0
  121. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/optimization/solver/newton.cpp +0 -0
  122. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/src/optimization/solver/sqp.cpp +0 -0
  123. {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4.dev1}/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.3.dev2
3
+ Version: 0.6.4.dev1
4
4
  Summary: Reverse mode autodiff library and NLP solver DSL
5
5
  License-Expression: BSD-3-Clause
6
6
  License-File: LICENSE.txt
@@ -461,22 +461,6 @@ class VariableBlock : public SleipnirBase {
461
461
  return *this;
462
462
  }
463
463
 
464
- /// Compound matrix division-assignment operator.
465
- ///
466
- /// @param rhs Variable to divide.
467
- /// @return Result of division.
468
- VariableBlock<Mat>& operator/=(const MatrixLike auto& rhs) {
469
- slp_assert(rhs.rows() == 1 && rhs.cols() == 1);
470
-
471
- for (int row = 0; row < rows(); ++row) {
472
- for (int col = 0; col < cols(); ++col) {
473
- (*this)[row, col] /= rhs[0, 0];
474
- }
475
- }
476
-
477
- return *this;
478
- }
479
-
480
464
  /// Compound matrix division-assignment operator.
481
465
  ///
482
466
  /// @param rhs Variable to divide.
@@ -1377,15 +1377,6 @@ Returns:
1377
1377
  static const char *__doc_slp_VariableBlock_operator_idiv =
1378
1378
  R"doc(Compound matrix division-assignment operator.
1379
1379
 
1380
- Parameter ``rhs``:
1381
- Variable to divide.
1382
-
1383
- Returns:
1384
- Result of division.)doc";
1385
-
1386
- static const char *__doc_slp_VariableBlock_operator_idiv_2 =
1387
- R"doc(Compound matrix division-assignment operator.
1388
-
1389
1380
  Parameter ``rhs``:
1390
1381
  Variable to divide.
1391
1382
 
@@ -2,4 +2,4 @@
2
2
 
3
3
  from ._sleipnir import * # noqa: F403
4
4
 
5
- __version__ = "0.6.3.dev2"
5
+ __version__ = "0.6.4.dev1"
@@ -213,6 +213,51 @@ def test_subslicing():
213
213
  ).all()
214
214
 
215
215
 
216
+ def test_compound_assignment_operators():
217
+ A1 = VariableMatrix([[1]])
218
+ A2 = VariableMatrix([[1, 2], [3, 4]])
219
+ B = VariableMatrix([[1, 2], [3, 4]])
220
+ b = 2
221
+
222
+ # VariableMatrix matrix-matrix operators
223
+ A2 += B
224
+ assert (A2.value() == np.array([[2, 4], [6, 8]])).all()
225
+ A2 -= B
226
+ assert (A2.value() == np.array([[1, 2], [3, 4]])).all()
227
+ A2 *= B
228
+ assert (A2.value() == np.array([[7, 10], [15, 22]])).all()
229
+ A2.set_value(np.array([[1, 2], [3, 4]]))
230
+
231
+ # VariableBlock matrix-matrix operators
232
+ A2[:, :] += B
233
+ assert (A2.value() == np.array([[2, 4], [6, 8]])).all()
234
+ A2[:, :] -= B
235
+ assert (A2.value() == np.array([[1, 2], [3, 4]])).all()
236
+ A2[:, :] *= B
237
+ assert (A2.value() == np.array([[7, 10], [15, 22]])).all()
238
+ A2.set_value(np.array([[1, 2], [3, 4]]))
239
+
240
+ # VariableMatrix matrix-scalar operators
241
+ A1 += b
242
+ assert (A1.value() == np.array([[3]])).all()
243
+ A1 -= b
244
+ assert (A1.value() == np.array([[1]])).all()
245
+ A2 *= b
246
+ assert (A2.value() == np.array([[2, 4], [6, 8]])).all()
247
+ A2 /= b
248
+ assert (A2.value() == np.array([[1, 2], [3, 4]])).all()
249
+
250
+ # VariableBlock matrix-scalar operators
251
+ A2[:1, :1] += b
252
+ assert (A2.value() == np.array([[3, 2], [3, 4]])).all()
253
+ A2[:1, :1] -= b
254
+ assert (A2.value() == np.array([[1, 2], [3, 4]])).all()
255
+ A2[:, :] *= b
256
+ assert (A2.value() == np.array([[2, 4], [6, 8]])).all()
257
+ A2[:, :] /= b
258
+ assert (A2.value() == np.array([[1, 2], [3, 4]])).all()
259
+
260
+
216
261
  def test_iterators():
217
262
  A = VariableMatrix([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0], [7.0, 8.0, 9.0]])
218
263
  sub_A = A[2:3, 1:3]