sleipnirgroup-jormungandr 0.6.3.dev2__tar.gz → 0.6.4__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.
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/CMakeLists.txt +2 -2
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/PKG-INFO +2 -2
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/README.md +1 -1
- sleipnirgroup_jormungandr-0.6.4/SleipnirConfig.cmake.in +7 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/variable_block.hpp +0 -16
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/variable_matrix.hpp +2 -2
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/docstrings.hpp +0 -9
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/src/sleipnir/__init__.py +1 -1
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/autodiff/variable_matrix_test.py +45 -0
- sleipnirgroup_jormungandr-0.6.3.dev2/SleipnirConfig.cmake.in +0 -3
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/LICENSE.txt +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/BuildTypes.cmake +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/CompilerFlags.cmake +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/Pybind11Mkdoc.cmake +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/SubdirList.cmake +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/arm-none-eabi.cmake +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/expression.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/expression_graph.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/expression_type.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/gradient.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/hessian.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/jacobian.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/sleipnir_base.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/slice.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/autodiff/variable.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/multistart.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/ocp/dynamics_type.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/ocp/timestep_method.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/ocp/transcription_method.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/ocp.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/problem.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/exit_status.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/interior_point.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/interior_point_matrix_callbacks.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/iteration_info.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/newton.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/newton_matrix_callbacks.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/options.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/sqp.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/sqp_matrix_callbacks.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/all_finite.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/append_as_triplets.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/bounds.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/dense_regularized_ldlt.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/feasibility_restoration.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/filter.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/fraction_to_the_boundary_rule.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/inertia.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/is_locally_infeasible.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/kkt_error.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/lagrange_multiplier_estimate.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/problem_scaling.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/regularized_ldlt.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/sparse_inf_norms.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/optimization/solver/util/sparse_regularized_ldlt.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/assert.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/concepts.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/empty.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/function_ref.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/intrusive_shared_ptr.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/pool.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/print.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/print_diagnostics.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/profiler.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/scope_exit.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/spy.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/include/sleipnir/util/symbol_exports.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/pyproject.toml +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/autodiff/bind_expression_type.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/autodiff/bind_gradient.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/autodiff/bind_hessian.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/autodiff/bind_jacobian.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/autodiff/bind_variable.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/autodiff/bind_variable_block.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/autodiff/bind_variable_matrix.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/binders.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/for_each_type.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/main.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/bind_equality_constraints.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/bind_inequality_constraints.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/bind_ocp.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/bind_problem.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/ocp/bind_dynamics_type.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/ocp/bind_timestep_method.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/ocp/bind_transcription_method.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/solver/bind_exit_status.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/optimization/solver/bind_iteration_info.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/try_cast.hpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/src/sleipnir/autodiff/__init__.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/src/sleipnir/optimization/__init__.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/autodiff/gradient_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/autodiff/hessian_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/autodiff/jacobian_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/autodiff/variable_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/arm_on_elevator_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/cart_pole_ocp_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/cart_pole_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/cart_pole_util.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/constraints_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/decision_variable_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/differential_drive_ocp_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/differential_drive_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/differential_drive_util.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/double_integrator_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/flywheel_ocp_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/flywheel_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/linear_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/multistart_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/nonlinear_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/problem_spy_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/quadratic_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/rk4.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/solver/exit_status_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/test/optimization/trivial_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/autodiff/gradient.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/autodiff/hessian.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/autodiff/jacobian.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/autodiff/variable_matrix.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/optimization/ocp.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/optimization/problem.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/optimization/solver/interior_point.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/optimization/solver/newton.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/optimization/solver/sqp.cpp +0 -0
- {sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/util/pool.cpp +0 -0
|
@@ -77,8 +77,8 @@ if(NOT SLEIPNIR_USE_SYSTEM_EIGEN)
|
|
|
77
77
|
FetchContent_Declare(
|
|
78
78
|
Eigen3
|
|
79
79
|
GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git
|
|
80
|
-
# master on 2026-
|
|
81
|
-
GIT_TAG
|
|
80
|
+
# master on 2026-06-29
|
|
81
|
+
GIT_TAG 3fccdcd589b11da58e5e5d87c9f1f537c7c642f6
|
|
82
82
|
SYSTEM
|
|
83
83
|
)
|
|
84
84
|
FetchContent_MakeAvailable(Eigen3)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sleipnirgroup-jormungandr
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.4
|
|
4
4
|
Summary: Reverse mode autodiff library and NLP solver DSL
|
|
5
5
|
License-Expression: BSD-3-Clause
|
|
6
6
|
License-File: LICENSE.txt
|
|
@@ -45,7 +45,7 @@ int main() {
|
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
```python
|
|
48
|
-
#!/usr/bin/env
|
|
48
|
+
#!/usr/bin/env python
|
|
49
49
|
|
|
50
50
|
from sleipnir.optimization import Problem
|
|
51
51
|
|
|
@@ -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.
|
|
@@ -507,7 +507,7 @@ class VariableMatrix : public SleipnirBase {
|
|
|
507
507
|
for (int j = 0; j < rhs.cols(); ++j) {
|
|
508
508
|
Variable sum{Scalar(0)};
|
|
509
509
|
for (int k = 0; k < lhs.cols(); ++k) {
|
|
510
|
-
sum += lhs
|
|
510
|
+
sum += lhs[i, k] * rhs[k, j];
|
|
511
511
|
}
|
|
512
512
|
result[i, j] = sum;
|
|
513
513
|
}
|
|
@@ -530,7 +530,7 @@ class VariableMatrix : public SleipnirBase {
|
|
|
530
530
|
for (int j = 0; j < rhs.cols(); ++j) {
|
|
531
531
|
Variable sum{Scalar(0)};
|
|
532
532
|
for (int k = 0; k < lhs.cols(); ++k) {
|
|
533
|
-
sum += lhs[i, k] * rhs
|
|
533
|
+
sum += lhs[i, k] * rhs[k, j];
|
|
534
534
|
}
|
|
535
535
|
result[i, j] = sum;
|
|
536
536
|
}
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/docstrings.hpp
RENAMED
|
@@ -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
|
|
|
@@ -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]
|
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/BuildTypes.cmake
RENAMED
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/CompilerFlags.cmake
RENAMED
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/Pybind11Mkdoc.cmake
RENAMED
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/SubdirList.cmake
RENAMED
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/cmake/arm-none-eabi.cmake
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/binders.hpp
RENAMED
|
File without changes
|
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/main.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/python/cpp/try_cast.hpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/autodiff/gradient.cpp
RENAMED
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/autodiff/hessian.cpp
RENAMED
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/autodiff/jacobian.cpp
RENAMED
|
File without changes
|
|
File without changes
|
{sleipnirgroup_jormungandr-0.6.3.dev2 → sleipnirgroup_jormungandr-0.6.4}/src/optimization/ocp.cpp
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|