openscvx 0.3.2.dev317__tar.gz → 0.3.2.dev325__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.
- {openscvx-0.3.2.dev317/openscvx.egg-info → openscvx-0.3.2.dev325}/PKG-INFO +1 -1
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/dr_vp_polytope.py +2 -4
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/_version.py +3 -3
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/algorithms/penalized_trust_region.py +1 -1
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/solvers/ptr_solver.py +5 -5
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325/openscvx.egg-info}/PKG-INFO +1 -1
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_brachistochrone.py +3 -4
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/assets/logo.svg +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/release-drafter.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/_docs.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/branch-name.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/docs.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/lint.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/nightly.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/release-drafter.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/release.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/tests-integration.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.github/workflows/tests-unit.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/.gitignore +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/CONTRIBUTING.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/LICENSE +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/README.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/constraint_reformulation.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/control_parameterization.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/discretization.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/ocp.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/scvx.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/time_dilation.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UnderTheHood/lowering_architecture.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UnderTheHood/vectorization_and_vmapping.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/00_introduction.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/01_hello_world_brachistochrone.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/02_drone_racing_constraints.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/03_obstacle_avoidance_vmap.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/04_viewpoint_constraints.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/05_visualization.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/06_logic.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/07_lie.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/favicon.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/images/ct-scvx_dark.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/images/ct-scvx_light.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/images/ctcs_dark.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/images/ctcs_light.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/images/problem_class_dark.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/images/problem_class_light.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/assets/logo.svg +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/citation.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/examples.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/getting-started.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/index.md +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/javascripts/mathjax.js +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/abstract/brachistochrone.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/arm/three_link_arm.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/car/dubins_car.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/car/dubins_car_conditional.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/car/dubins_car_disjoint.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/car/dubins_car_stljax.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/cinema_vp.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/cinema_vp_realtime_base.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/dr_double_integrator.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/dr_vp.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/dr_vp_nodal.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/drone_racing.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/obstacle_avoidance.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/obstacle_avoidance_nodal.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/obstacle_avoidance_realtime_base.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/obstacle_avoidance_vmap.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/plotting.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/plotting_viser.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/realtime/cinema_vp_realtime.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/realtime/drone_racing_realtime.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/realtime/dubins_car_realtime.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/realtime/obstacle_avoidance_realtime.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/rocket/3DoF_pdg.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/spacecraft/proxops_cw.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/ctlos_cine.gif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/ctlos_dr.gif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/dtlos_cine.gif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/dtlos_dr.gif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/openscvx_logo.svg +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/openscvx_logo_square.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/oscvx_structure_full_dark.svg +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/figures/video_preview.png +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/1-background.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/1-background@1x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/1-background@2x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/1-background@3x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/1-background@4x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/2-mars.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/2-mars@1x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/2-mars@2x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/2-mars@3x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/2-mars@4x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/3-moon.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/3-moon@1x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/3-moon@2x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/3-moon@3x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/3-moon@4x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/4-sat1.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/4-sat1@1x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/4-sat1@2x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/4-sat1@3x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/4-sat1@4x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/5-space.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/5-space@1x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/5-space@2x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/5-space@3x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/5-space@4x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/6-earth.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/6-earth@1x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/6-earth@2x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/6-earth@3x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/6-earth@4x.avif +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/javascripts/parallax.js +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/logo.svg +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/stylesheets/custom.css +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/stylesheets/parallax.css +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/home.html +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/main.html +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/partials/parallax/hero.html +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/partials/parallax.html +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/mkdocs.yml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/algorithms/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/algorithms/autotuning.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/algorithms/base.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/algorithms/optimization_results.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/config.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/discretization/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/discretization/discretization.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/expert/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/expert/byof.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/expert/lowering.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/expert/validation.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/init/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/init/interpolation.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/integrators/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/integrators/runge_kutta.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/cvxpy_constraints.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/cvxpy_variables.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/dynamics.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/jax_constraints.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/parameters.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/problem.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/lowered/unified.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/plotting.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/scp_iteration.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/viser/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/viser/animated.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/viser/plotly_integration.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/viser/primitives.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/viser/scp.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/viser/server.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/problem.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/propagation/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/propagation/post_processing.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/propagation/propagation.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/solvers/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/solvers/base.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/augmentation.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/builder.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/constraint_set.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/arithmetic.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/array.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/constraint.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/control.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/expr.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/lie/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/lie/adjoint.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/lie/se3.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/lie/so3.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/linalg.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/logic.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/math.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/spatial.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/state.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/stl.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/variable.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/expr/vmap.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/hashing.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/lower.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/lowerers/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/lowerers/cvxpy.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/lowerers/jax.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/preprocessing.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/problem.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/time.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/symbolic/unified.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/utils/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/utils/cache.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/utils/caching.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/utils/printing.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/utils/profiling.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/utils/utils.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx.egg-info/SOURCES.txt +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx.egg-info/dependency_links.txt +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx.egg-info/requires.txt +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx.egg-info/top_level.txt +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/pyproject.toml +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/scripts/gen_example_pages.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/scripts/gen_ref_pages.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/setup.cfg +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/brachistochrone_analytical.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/__init__.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_arithmetic.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_array.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_constraint.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_expr.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_lie.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_linalg.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_logic.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_math.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_node_reference.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_parameters.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_scaling.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_spatial.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_variable.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/expr/test_vmap.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/test_augmentation.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/test_hashing.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/test_lower_cvxpy.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/test_lower_jax.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/test_preprocessing.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/symbolic/test_unified.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_cvxpygen_optional.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_discretization.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_examples.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_expert.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_init.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_integrators.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_plotting.py +0 -0
- {openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/tests/test_propagation.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: openscvx
|
|
3
|
-
Version: 0.3.2.
|
|
3
|
+
Version: 0.3.2.dev325
|
|
4
4
|
Summary: A general Python-based successive convexification implementation which uses a JAX backend.
|
|
5
5
|
Author-email: Chris Hayner and Griffin Norris <haynec@uw.edu>
|
|
6
6
|
License: Apache Software License
|
|
@@ -245,12 +245,10 @@ problem = Problem(
|
|
|
245
245
|
|
|
246
246
|
problem.settings.prp.dt = 0.01
|
|
247
247
|
|
|
248
|
-
problem.settings.scp.k_max = 50
|
|
249
248
|
problem.settings.scp.w_tr = 2e0 # 2e0, # Weight on the Trust Reigon
|
|
250
249
|
problem.settings.scp.lam_cost = 2e-1 # 0e-1, # Weight on the Minimal Time Objective
|
|
251
|
-
problem.settings.scp.lam_vc =
|
|
252
|
-
|
|
253
|
-
)
|
|
250
|
+
problem.settings.scp.lam_vc = 4e1 # Weight on the Virtual Control Objective
|
|
251
|
+
|
|
254
252
|
problem.settings.scp.ep_tr = 1e-5 # Trust Region Tolerance
|
|
255
253
|
problem.settings.scp.ep_vb = 1e-4 # Virtual Control Tolerance
|
|
256
254
|
problem.settings.scp.ep_vc = 1e-8 # Virtual Control Tolerance for CTCS
|
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.3.2.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 3, 2, '
|
|
31
|
+
__version__ = version = '0.3.2.dev325'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 3, 2, 'dev325')
|
|
33
33
|
|
|
34
|
-
__commit_id__ = commit_id = '
|
|
34
|
+
__commit_id__ = commit_id = 'gff7cfb724'
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/algorithms/penalized_trust_region.py
RENAMED
|
@@ -308,7 +308,7 @@ class PenalizedTrustRegion(Algorithm):
|
|
|
308
308
|
# Calculate J_tr_vec using the JAX-compatible block diagonal matrix
|
|
309
309
|
tr_mat = inv_block_diag @ np.hstack((x_new_guess - state.x, u_new_guess - state.u)).T
|
|
310
310
|
J_tr_vec = la.norm(tr_mat, axis=0) ** 2
|
|
311
|
-
vc_mat = np.abs(result.nu)
|
|
311
|
+
vc_mat = np.abs(settings.sim.inv_S_x @ result.nu.T).T
|
|
312
312
|
J_vc_vec = np.sum(vc_mat, axis=1)
|
|
313
313
|
|
|
314
314
|
# Sum nodal constraint violations
|
|
@@ -594,13 +594,13 @@ def _build_optimal_control_problem(
|
|
|
594
594
|
if settings.sim.x.final_type[i] == "Fix":
|
|
595
595
|
constr += [x_nonscaled[-1][i] == x_term[i]] # Final Boundary Conditions
|
|
596
596
|
if settings.sim.x.initial_type[i] == "Minimize":
|
|
597
|
-
cost += lam_cost *
|
|
597
|
+
cost += lam_cost * x[0][i]
|
|
598
598
|
if settings.sim.x.final_type[i] == "Minimize":
|
|
599
|
-
cost += lam_cost *
|
|
599
|
+
cost += lam_cost * x[-1][i]
|
|
600
600
|
if settings.sim.x.initial_type[i] == "Maximize":
|
|
601
|
-
cost -= lam_cost *
|
|
601
|
+
cost -= lam_cost * x[0][i]
|
|
602
602
|
if settings.sim.x.final_type[i] == "Maximize":
|
|
603
|
-
cost -= lam_cost *
|
|
603
|
+
cost -= lam_cost * x[-1][i]
|
|
604
604
|
|
|
605
605
|
if settings.scp.uniform_time_grid:
|
|
606
606
|
S_u_inv_td = inv_S_u[settings.sim.time_dilation_slice, settings.sim.time_dilation_slice]
|
|
@@ -626,9 +626,9 @@ def _build_optimal_control_problem(
|
|
|
626
626
|
+ B_d[i - 1] @ du_nonscaled[i - 1]
|
|
627
627
|
+ C_d[i - 1] @ du_nonscaled[i]
|
|
628
628
|
+ x_prop[i - 1]
|
|
629
|
-
+ nu[i - 1]
|
|
630
629
|
- c_x
|
|
631
630
|
)
|
|
631
|
+
+ nu[i - 1]
|
|
632
632
|
for i in range(1, settings.scp.n)
|
|
633
633
|
] # Dynamics Constraint
|
|
634
634
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: openscvx
|
|
3
|
-
Version: 0.3.2.
|
|
3
|
+
Version: 0.3.2.dev325
|
|
4
4
|
Summary: A general Python-based successive convexification implementation which uses a JAX backend.
|
|
5
5
|
Author-email: Chris Hayner and Griffin Norris <haynec@uw.edu>
|
|
6
6
|
License: Apache Software License
|
|
@@ -73,7 +73,7 @@ def _assert_brachistochrone_accuracy(comparison, problem, result):
|
|
|
73
73
|
# Check that we didn't take too many iterations
|
|
74
74
|
if "discretization_history" in result:
|
|
75
75
|
num_iters = len(result["discretization_history"])
|
|
76
|
-
assert num_iters <
|
|
76
|
+
assert num_iters < 27, f"Took {num_iters} SCP iterations (expected < 15)"
|
|
77
77
|
|
|
78
78
|
# Check timing - these are generous limits for a simple problem like brachistochrone
|
|
79
79
|
assert problem.timing_init < 10.0, (
|
|
@@ -602,10 +602,9 @@ def test_parameters():
|
|
|
602
602
|
licq_max=1e-8,
|
|
603
603
|
)
|
|
604
604
|
|
|
605
|
-
problem.settings.prp.dt = 0.01
|
|
606
605
|
problem.settings.cvx.solver_args = {"abstol": 1e-6, "reltol": 1e-9}
|
|
607
|
-
problem.settings.scp.w_tr =
|
|
608
|
-
problem.settings.scp.lam_cost =
|
|
606
|
+
problem.settings.scp.w_tr = 1e0
|
|
607
|
+
problem.settings.scp.lam_cost = 1e-1
|
|
609
608
|
problem.settings.scp.lam_vc = 1e1
|
|
610
609
|
problem.settings.scp.uniform_time_grid = True
|
|
611
610
|
problem.settings.sim.save_compiled = False
|
|
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
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/constraint_reformulation.md
RENAMED
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/Foundations/control_parameterization.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UnderTheHood/vectorization_and_vmapping.md
RENAMED
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/01_hello_world_brachistochrone.md
RENAMED
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/02_drone_racing_constraints.md
RENAMED
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/docs/UsersGuide/03_obstacle_avoidance_vmap.md
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
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/drone/obstacle_avoidance_realtime_base.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/examples/realtime/obstacle_avoidance_realtime.py
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
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/2-mars.avif
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/3-moon.avif
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/4-sat1.avif
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/5-space.avif
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/images/layers/6-earth.avif
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/javascripts/parallax.js
RENAMED
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/stylesheets/custom.css
RENAMED
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/assets/stylesheets/parallax.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/material/overrides/partials/parallax/hero.html
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
|
{openscvx-0.3.2.dev317 → openscvx-0.3.2.dev325}/openscvx/plotting/viser/plotly_integration.py
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|