sleipnirgroup-jormungandr 0.6.5.dev7__tar.gz → 0.6.5.dev8__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.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/PKG-INFO +1 -1
  2. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/expression.hpp +13 -51
  3. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/src/sleipnir/__init__.py +1 -1
  4. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/CMakeLists.txt +0 -0
  5. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/LICENSE.txt +0 -0
  6. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/README.md +0 -0
  7. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/SleipnirConfig.cmake.in +0 -0
  8. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/cmake/BuildTypes.cmake +0 -0
  9. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/cmake/CompilerFlags.cmake +0 -0
  10. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/cmake/Pybind11Mkdoc.cmake +0 -0
  11. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/cmake/SubdirList.cmake +0 -0
  12. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/cmake/arm-none-eabi.cmake +0 -0
  13. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/expression_graph.hpp +0 -0
  14. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/expression_type.hpp +0 -0
  15. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/gradient.hpp +0 -0
  16. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/hessian.hpp +0 -0
  17. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/jacobian.hpp +0 -0
  18. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/sleipnir_base.hpp +0 -0
  19. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/slice.hpp +0 -0
  20. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/variable.hpp +0 -0
  21. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/variable_block.hpp +0 -0
  22. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/autodiff/variable_matrix.hpp +0 -0
  23. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/multistart.hpp +0 -0
  24. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/ocp/dynamics_type.hpp +0 -0
  25. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/ocp/timestep_method.hpp +0 -0
  26. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/ocp/transcription_method.hpp +0 -0
  27. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/ocp.hpp +0 -0
  28. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/problem.hpp +0 -0
  29. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/exit_status.hpp +0 -0
  30. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/interior_point.hpp +0 -0
  31. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/interior_point_matrix_callbacks.hpp +0 -0
  32. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/iteration_info.hpp +0 -0
  33. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/newton.hpp +0 -0
  34. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/newton_matrix_callbacks.hpp +0 -0
  35. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/options.hpp +0 -0
  36. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/sqp.hpp +0 -0
  37. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/sqp_matrix_callbacks.hpp +0 -0
  38. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/all_finite.hpp +0 -0
  39. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/append_as_triplets.hpp +0 -0
  40. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/bounds.hpp +0 -0
  41. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/dense_regularized_ldlt.hpp +0 -0
  42. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/feasibility_restoration.hpp +0 -0
  43. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/filter.hpp +0 -0
  44. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/fraction_to_the_boundary_rule.hpp +0 -0
  45. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/inertia.hpp +0 -0
  46. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/is_locally_infeasible.hpp +0 -0
  47. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/kkt_error.hpp +0 -0
  48. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/lagrange_multiplier_estimate.hpp +0 -0
  49. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/problem_scaling.hpp +0 -0
  50. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/regularized_ldlt.hpp +0 -0
  51. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/sparse_inf_norms.hpp +0 -0
  52. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/optimization/solver/util/sparse_regularized_ldlt.hpp +0 -0
  53. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/assert.hpp +0 -0
  54. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/concepts.hpp +0 -0
  55. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/empty.hpp +0 -0
  56. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/function_ref.hpp +0 -0
  57. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/intrusive_shared_ptr.hpp +0 -0
  58. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/pool.hpp +0 -0
  59. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/print.hpp +0 -0
  60. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/print_diagnostics.hpp +0 -0
  61. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/profiler.hpp +0 -0
  62. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/scope_exit.hpp +0 -0
  63. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/spy.hpp +0 -0
  64. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/include/sleipnir/util/symbol_exports.hpp +0 -0
  65. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/pyproject.toml +0 -0
  66. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/autodiff/bind_expression_type.cpp +0 -0
  67. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/autodiff/bind_gradient.cpp +0 -0
  68. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/autodiff/bind_hessian.cpp +0 -0
  69. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/autodiff/bind_jacobian.cpp +0 -0
  70. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/autodiff/bind_variable.cpp +0 -0
  71. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/autodiff/bind_variable_block.cpp +0 -0
  72. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/autodiff/bind_variable_matrix.cpp +0 -0
  73. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/binders.hpp +0 -0
  74. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/docstrings.hpp +0 -0
  75. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/for_each_type.hpp +0 -0
  76. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/main.cpp +0 -0
  77. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/bind_equality_constraints.cpp +0 -0
  78. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/bind_inequality_constraints.cpp +0 -0
  79. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/bind_ocp.cpp +0 -0
  80. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/bind_problem.cpp +0 -0
  81. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/ocp/bind_dynamics_type.cpp +0 -0
  82. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/ocp/bind_timestep_method.cpp +0 -0
  83. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/ocp/bind_transcription_method.cpp +0 -0
  84. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/solver/bind_exit_status.cpp +0 -0
  85. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/optimization/solver/bind_iteration_info.cpp +0 -0
  86. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/cpp/try_cast.hpp +0 -0
  87. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/src/sleipnir/autodiff/__init__.py +0 -0
  88. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/src/sleipnir/optimization/__init__.py +0 -0
  89. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/autodiff/gradient_test.py +0 -0
  90. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/autodiff/hessian_test.py +0 -0
  91. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/autodiff/jacobian_test.py +0 -0
  92. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/autodiff/variable_matrix_test.py +0 -0
  93. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/autodiff/variable_test.py +0 -0
  94. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/arm_on_elevator_problem_test.py +0 -0
  95. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/cart_pole_ocp_test.py +0 -0
  96. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/cart_pole_problem_test.py +0 -0
  97. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/cart_pole_util.py +0 -0
  98. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/constraints_test.py +0 -0
  99. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/decision_variable_test.py +0 -0
  100. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/differential_drive_ocp_test.py +0 -0
  101. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/differential_drive_problem_test.py +0 -0
  102. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/differential_drive_util.py +0 -0
  103. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/double_integrator_problem_test.py +0 -0
  104. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/flywheel_ocp_test.py +0 -0
  105. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/flywheel_problem_test.py +0 -0
  106. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/linear_problem_test.py +0 -0
  107. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/multistart_test.py +0 -0
  108. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/nonlinear_problem_test.py +0 -0
  109. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/problem_spy_test.py +0 -0
  110. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/quadratic_problem_test.py +0 -0
  111. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/rk4.py +0 -0
  112. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/solver/exit_status_test.py +0 -0
  113. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/python/test/optimization/trivial_problem_test.py +0 -0
  114. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/autodiff/gradient.cpp +0 -0
  115. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/autodiff/hessian.cpp +0 -0
  116. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/autodiff/jacobian.cpp +0 -0
  117. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/autodiff/variable_matrix.cpp +0 -0
  118. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/optimization/ocp.cpp +0 -0
  119. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/optimization/problem.cpp +0 -0
  120. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/optimization/solver/interior_point.cpp +0 -0
  121. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/optimization/solver/newton.cpp +0 -0
  122. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/src/optimization/solver/sqp.cpp +0 -0
  123. {sleipnirgroup_jormungandr-0.6.5.dev7 → sleipnirgroup_jormungandr-0.6.5.dev8}/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.5.dev7
3
+ Version: 0.6.5.dev8
4
4
  Summary: Reverse mode autodiff library and NLP solver DSL
5
5
  License-Expression: BSD-3-Clause
6
6
  License-File: LICENSE.txt
@@ -1486,39 +1486,23 @@ struct MaxExpression final : Expression<Scalar> {
1486
1486
  std::string_view name() const override { return "max"; }
1487
1487
 
1488
1488
  Scalar grad_l(Scalar a, Scalar b) const override {
1489
- if (a >= b) {
1490
- return this->adjoint;
1491
- } else {
1492
- return Scalar(0);
1493
- }
1489
+ return a >= b ? this->adjoint : Scalar(0);
1494
1490
  }
1495
1491
 
1496
1492
  Scalar grad_r(Scalar a, Scalar b) const override {
1497
- if (b > a) {
1498
- return this->adjoint;
1499
- } else {
1500
- return Scalar(0);
1501
- }
1493
+ return a >= b ? Scalar(0) : this->adjoint;
1502
1494
  }
1503
1495
 
1504
1496
  ExpressionPtr<Scalar> grad_expr_l(
1505
1497
  const ExpressionPtr<Scalar>& a,
1506
1498
  const ExpressionPtr<Scalar>& b) const override {
1507
- if (a->val >= b->val) {
1508
- return this->adjoint_expr;
1509
- } else {
1510
- return constant_ptr(Scalar(0));
1511
- }
1499
+ return a->val >= b->val ? this->adjoint_expr : constant_ptr(Scalar(0));
1512
1500
  }
1513
1501
 
1514
1502
  ExpressionPtr<Scalar> grad_expr_r(
1515
1503
  const ExpressionPtr<Scalar>& a,
1516
1504
  const ExpressionPtr<Scalar>& b) const override {
1517
- if (b->val > a->val) {
1518
- return this->adjoint_expr;
1519
- } else {
1520
- return constant_ptr(Scalar(0));
1521
- }
1505
+ return a->val >= b->val ? constant_ptr(Scalar(0)) : this->adjoint_expr;
1522
1506
  }
1523
1507
  };
1524
1508
 
@@ -1565,40 +1549,24 @@ struct MinExpression final : Expression<Scalar> {
1565
1549
  std::string_view name() const override { return "min"; }
1566
1550
 
1567
1551
  Scalar grad_l(Scalar a, Scalar b) const override {
1568
- if (a <= b) {
1569
- return this->adjoint;
1570
- } else {
1571
- return Scalar(0);
1572
- }
1552
+ return a <= b ? this->adjoint : Scalar(0);
1573
1553
  }
1574
1554
 
1575
1555
  Scalar grad_r([[maybe_unused]] Scalar a,
1576
1556
  [[maybe_unused]] Scalar b) const override {
1577
- if (b < a) {
1578
- return this->adjoint;
1579
- } else {
1580
- return Scalar(0);
1581
- }
1557
+ return a <= b ? Scalar(0) : this->adjoint;
1582
1558
  }
1583
1559
 
1584
1560
  ExpressionPtr<Scalar> grad_expr_l(
1585
1561
  const ExpressionPtr<Scalar>& a,
1586
1562
  const ExpressionPtr<Scalar>& b) const override {
1587
- if (a->val <= b->val) {
1588
- return this->adjoint_expr;
1589
- } else {
1590
- return constant_ptr(Scalar(0));
1591
- }
1563
+ return a->val <= b->val ? this->adjoint_expr : constant_ptr(Scalar(0));
1592
1564
  }
1593
1565
 
1594
1566
  ExpressionPtr<Scalar> grad_expr_r(
1595
1567
  const ExpressionPtr<Scalar>& a,
1596
1568
  const ExpressionPtr<Scalar>& b) const override {
1597
- if (b->val < a->val) {
1598
- return this->adjoint_expr;
1599
- } else {
1600
- return constant_ptr(Scalar(0));
1601
- }
1569
+ return a->val <= b->val ? constant_ptr(Scalar(0)) : this->adjoint_expr;
1602
1570
  }
1603
1571
  };
1604
1572
 
@@ -1657,11 +1625,8 @@ struct PowExpression final : Expression<Scalar> {
1657
1625
  using std::pow;
1658
1626
 
1659
1627
  // Since x log(x) -> 0 as x -> 0
1660
- if (base == Scalar(0)) {
1661
- return Scalar(0);
1662
- } else {
1663
- return this->adjoint * pow(base, power) * log(base);
1664
- }
1628
+ return base == Scalar(0) ? Scalar(0)
1629
+ : this->adjoint * pow(base, power) * log(base);
1665
1630
  }
1666
1631
 
1667
1632
  ExpressionPtr<Scalar> grad_expr_l(
@@ -1675,12 +1640,9 @@ struct PowExpression final : Expression<Scalar> {
1675
1640
  const ExpressionPtr<Scalar>& base,
1676
1641
  const ExpressionPtr<Scalar>& power) const override {
1677
1642
  // Since x log(x) -> 0 as x -> 0
1678
- if (base->val == Scalar(0)) {
1679
- // Return zero
1680
- return base;
1681
- } else {
1682
- return this->adjoint_expr * pow(base, power) * log(base);
1683
- }
1643
+ return base->val == Scalar(0)
1644
+ ? base // Return zero
1645
+ : this->adjoint_expr * pow(base, power) * log(base);
1684
1646
  }
1685
1647
  };
1686
1648
 
@@ -2,4 +2,4 @@
2
2
 
3
3
  from ._sleipnir import *
4
4
 
5
- __version__ = "0.6.5.dev7"
5
+ __version__ = "0.6.5.dev8"