sleipnirgroup-jormungandr 0.0.1.dev473__tar.gz → 0.0.1.dev474__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.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/PKG-INFO +1 -1
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/pyproject.toml +1 -1
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/interior_point.cpp +0 -27
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/newton.cpp +0 -13
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/sqp.cpp +0 -13
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/CMakeLists.txt +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/LICENSE.txt +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/README.md +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/SleipnirConfig.cmake.in +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/cmake/modules/BuildTypes.cmake +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/cmake/modules/CompilerFlags.cmake +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/cmake/modules/Pybind11Mkdoc.cmake +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/cmake/modules/SubdirList.cmake +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/.styleguide +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/adjoint_expression_graph.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/expression.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/expression_graph.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/expression_type.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/gradient.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/hessian.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/jacobian.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/slice.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/variable.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/variable_block.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/autodiff/variable_matrix.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/control/ocp.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/multistart.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/problem.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/solver/exit_status.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/solver/interior_point.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/solver/iteration_info.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/solver/newton.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/solver/options.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/optimization/solver/sqp.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/assert.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/concepts.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/function_ref.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/intrusive_shared_ptr.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/pool.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/print.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/small_vector.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/spy.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/include/sleipnir/util/symbol_exports.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/__init__.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/autodiff/__init__.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/control/__init__.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/autodiff/bind_expression_type.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/autodiff/bind_gradient.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/autodiff/bind_hessian.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/autodiff/bind_jacobian.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/autodiff/bind_variable.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/autodiff/bind_variable_block.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/autodiff/bind_variable_matrix.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/binders.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/control/bind_ocp.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/docstrings.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/main.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/optimization/bind_equality_constraints.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/optimization/bind_inequality_constraints.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/optimization/bind_problem.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/optimization/solver/bind_exit_status.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/optimization/solver/bind_iteration_info.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/cpp/try_cast.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/optimization/__init__.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/autodiff/gradient_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/autodiff/hessian_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/autodiff/jacobian_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/autodiff/variable_matrix_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/autodiff/variable_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/cart_pole_util.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/control/cart_pole_ocp_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/control/differential_drive_ocp_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/control/flywheel_ocp_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/differential_drive_util.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/arm_on_elevator_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/cart_pole_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/constraints_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/decision_variable_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/differential_drive_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/double_integrator_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/exit_status_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/flywheel_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/linear_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/multistart_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/nonlinear_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/quadratic_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/optimization/trivial_problem_test.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/jormungandr/test/rk4.py +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/.styleguide +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/autodiff/variable_matrix.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/inertia.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/problem.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/regularized_ldlt.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/util/error_estimate.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/util/filter.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/util/fraction_to_the_boundary_rule.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/util/is_locally_infeasible.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/optimization/solver/util/kkt_error.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/util/pool.cpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/util/print_diagnostics.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/util/scope_exit.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/util/scoped_profiler.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/util/setup_profiler.hpp +0 -0
- {sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/util/solve_profiler.hpp +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: sleipnirgroup-jormungandr
|
3
|
-
Version: 0.0.1.
|
3
|
+
Version: 0.0.1.dev474
|
4
4
|
Summary: A linearity-exploiting sparse nonlinear constrained optimization problem solver that uses the interior-point method.
|
5
5
|
License: Copyright (c) Sleipnir contributors
|
6
6
|
|
{sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/pyproject.toml
RENAMED
@@ -1,7 +1,7 @@
|
|
1
1
|
[project]
|
2
2
|
name = "sleipnirgroup-jormungandr"
|
3
3
|
description = "A linearity-exploiting sparse nonlinear constrained optimization problem solver that uses the interior-point method."
|
4
|
-
version = "0.0.1.
|
4
|
+
version = "0.0.1.dev474"
|
5
5
|
readme = "README.md"
|
6
6
|
requires-python = ">=3.9"
|
7
7
|
dependencies = [ "matplotlib", "numpy", "scipy" ]
|
@@ -233,7 +233,6 @@ ExitStatus interior_point(
|
|
233
233
|
constexpr double α_min = 1e-7;
|
234
234
|
|
235
235
|
int full_step_rejected_counter = 0;
|
236
|
-
int step_too_small_counter = 0;
|
237
236
|
|
238
237
|
// Error estimate
|
239
238
|
double E_0 = std::numeric_limits<double>::infinity();
|
@@ -571,22 +570,6 @@ ExitStatus interior_point(
|
|
571
570
|
full_step_rejected_counter = 0;
|
572
571
|
}
|
573
572
|
|
574
|
-
// Handle very small search directions by letting αₖ = αₖᵐᵃˣ when
|
575
|
-
// max(|pₖˣ(i)|/(1 + |xₖ(i)|)) < 10ε_mach.
|
576
|
-
//
|
577
|
-
// See section 3.9 of [2].
|
578
|
-
double max_step_scaled = 0.0;
|
579
|
-
for (int row = 0; row < x.rows(); ++row) {
|
580
|
-
max_step_scaled = std::max(
|
581
|
-
max_step_scaled, std::abs(step.p_x[row]) / (1.0 + std::abs(x[row])));
|
582
|
-
}
|
583
|
-
if (max_step_scaled < 10.0 * std::numeric_limits<double>::epsilon()) {
|
584
|
-
α = α_max;
|
585
|
-
++step_too_small_counter;
|
586
|
-
} else {
|
587
|
-
step_too_small_counter = 0;
|
588
|
-
}
|
589
|
-
|
590
573
|
// xₖ₊₁ = xₖ + αₖpₖˣ
|
591
574
|
// sₖ₊₁ = sₖ + αₖpₖˢ
|
592
575
|
// yₖ₊₁ = yₖ + αₖᶻpₖʸ
|
@@ -665,16 +648,6 @@ ExitStatus interior_point(
|
|
665
648
|
if (std::chrono::steady_clock::now() - solve_start_time > options.timeout) {
|
666
649
|
return ExitStatus::TIMEOUT;
|
667
650
|
}
|
668
|
-
|
669
|
-
// The search direction has been very small twice, so assume the problem has
|
670
|
-
// been solved as well as possible given finite precision and reduce the
|
671
|
-
// barrier parameter.
|
672
|
-
//
|
673
|
-
// See section 3.9 of [2].
|
674
|
-
if (step_too_small_counter >= 2 && μ > μ_min) {
|
675
|
-
update_barrier_parameter_and_reset_filter();
|
676
|
-
continue;
|
677
|
-
}
|
678
651
|
}
|
679
652
|
|
680
653
|
return ExitStatus::SUCCESS;
|
@@ -214,19 +214,6 @@ ExitStatus newton(const NewtonMatrixCallbacks& matrix_callbacks,
|
|
214
214
|
}
|
215
215
|
}
|
216
216
|
|
217
|
-
// Handle very small search directions by letting αₖ = αₖᵐᵃˣ when
|
218
|
-
// max(|pₖˣ(i)|/(1 + |xₖ(i)|)) < 10ε_mach.
|
219
|
-
//
|
220
|
-
// See section 3.9 of [2].
|
221
|
-
double max_step_scaled = 0.0;
|
222
|
-
for (int row = 0; row < x.rows(); ++row) {
|
223
|
-
max_step_scaled = std::max(max_step_scaled,
|
224
|
-
std::abs(p_x(row)) / (1.0 + std::abs(x(row))));
|
225
|
-
}
|
226
|
-
if (max_step_scaled < 10.0 * std::numeric_limits<double>::epsilon()) {
|
227
|
-
α = α_max;
|
228
|
-
}
|
229
|
-
|
230
217
|
line_search_profiler.stop();
|
231
218
|
|
232
219
|
// xₖ₊₁ = xₖ + αₖpₖˣ
|
@@ -432,19 +432,6 @@ ExitStatus sqp(const SQPMatrixCallbacks& matrix_callbacks,
|
|
432
432
|
full_step_rejected_counter = 0;
|
433
433
|
}
|
434
434
|
|
435
|
-
// Handle very small search directions by letting αₖ = αₖᵐᵃˣ when
|
436
|
-
// max(|pₖˣ(i)|/(1 + |xₖ(i)|)) < 10ε_mach.
|
437
|
-
//
|
438
|
-
// See section 3.9 of [2].
|
439
|
-
double max_step_scaled = 0.0;
|
440
|
-
for (int row = 0; row < x.rows(); ++row) {
|
441
|
-
max_step_scaled = std::max(
|
442
|
-
max_step_scaled, std::abs(step.p_x(row)) / (1.0 + std::abs(x(row))));
|
443
|
-
}
|
444
|
-
if (max_step_scaled < 10.0 * std::numeric_limits<double>::epsilon()) {
|
445
|
-
α = α_max;
|
446
|
-
}
|
447
|
-
|
448
435
|
// xₖ₊₁ = xₖ + αₖpₖˣ
|
449
436
|
// yₖ₊₁ = yₖ + αₖpₖʸ
|
450
437
|
x += α * step.p_x;
|
{sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/CMakeLists.txt
RENAMED
File without changes
|
{sleipnirgroup_jormungandr-0.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/LICENSE.txt
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
|
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.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/.styleguide
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.0.1.dev473 → sleipnirgroup_jormungandr-0.0.1.dev474}/src/util/pool.cpp
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|