From 70f8131850dc996ec376a0e4b3d9cfdf78e445e6 Mon Sep 17 00:00:00 2001 From: HugoFara Date: Wed, 2 Oct 2024 17:12:02 +0200 Subject: [PATCH] Downgrades sphinx version to 7.4.2. It was not compatible with sphinx-rtd-theme 2.0.0. --- docs/searchindex.js | 2 +- docs/tests/tests.joints.html | 6 +++--- requirements-dev.txt | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/searchindex.js b/docs/searchindex.js index 11442d6..db44b48 100644 --- a/docs/searchindex.js +++ b/docs/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"1. Correction": [[9, "correction"]], "2. Warning": [[9, "warning"]], "3. Temporary Ban": [[9, "temporary-ban"]], "4. Permanent Ban": [[9, "permanent-ban"]], "Added": [[8, "added"]], "Added in 0.0.1": [[8, "added-in-0-0-1"]], "Added in 0.2.0": [[8, "added-in-0-2-0"]], "Added in 0.2.1": [[8, "added-in-0-2-1"]], "Added in 0.2.2": [[8, "added-in-0-2-2"]], "Added in 0.3.0": [[8, "added-in-0-3-0"]], "Added in 0.4.0": [[8, "added-in-0-4-0"]], "Added in 0.4.1": [[8, "added-in-0-4-1"]], "Added in 0.5.0": [[8, "added-in-0-5-0"]], "Added in 0.5.1": [[8, "added-in-0-5-1"]], "Added in 0.5.2": [[8, "added-in-0-5-2"]], "Added in 0.5.3": [[8, "added-in-0-5-3"]], "Arguments": [[17, "arguments"]], "Attribution": [[9, "attribution"]], "Changed": [[8, "changed"]], "Changed in 0.2.0": [[8, "changed-in-0-2-0"]], "Changed in 0.2.1": [[8, "changed-in-0-2-1"]], "Changed in 0.3.0": [[8, "changed-in-0-3-0"]], "Changed in 0.4.0": [[8, "changed-in-0-4-0"]], "Changed in 0.4.1": [[8, "changed-in-0-4-1"]], "Changed in 0.5.0": [[8, "changed-in-0-5-0"]], "Changed in 0.5.1": [[8, "changed-in-0-5-1"]], "Changed in 0.5.2": [[8, "changed-in-0-5-2"]], "Changed in 0.5.3": [[8, "changed-in-0-5-3"]], "Changelog": [[8, null]], "Code with PyLinkage": [[12, "code-with-pylinkage"], [13, "code-with-pylinkage"]], "Complete example": [[12, "complete-example"], [13, "complete-example"]], "Contributing": [[12, "contributing"], [13, "contributing"]], "Contributor Covenant Code of Conduct": [[9, null]], "Deprecated": [[8, "deprecated"]], "Deprecated in 0.5.3": [[8, "deprecated-in-0-5-3"]], "Enforcement": [[9, "enforcement"]], "Enforcement Guidelines": [[9, "enforcement-guidelines"]], "Enforcement Responsibilities": [[9, "enforcement-responsibilities"]], "Fixed": [[8, "fixed"]], "Fixed in 0.2.1": [[8, "fixed-in-0-2-1"]], "Fixed in 0.2.2": [[8, "fixed-in-0-2-2"]], "Fixed in 0.3.0": [[8, "fixed-in-0-3-0"]], "Fixed in 0.4.0": [[8, "fixed-in-0-4-0"]], "Fixed in 0.5.0": [[8, "fixed-in-0-5-0"]], "Fixed in 0.5.3": [[8, "fixed-in-0-5-3"]], "Indices and tables": [[12, "indices-and-tables"]], "Installation": [[12, "installation"], [13, "installation"]], "Introduction": [[12, null]], "Joints definition": [[12, "joints-definition"], [13, "joints-definition"]], "Linkage definition and simulation": [[12, "linkage-definition-and-simulation"], [13, "linkage-definition-and-simulation"]], "Module contents": [[1, "module-pylinkage"], [2, "module-pylinkage.collections"], [3, "module-pylinkage.geometry"], [4, "module-pylinkage.joints"], [5, "module-pylinkage.linkage"], [6, "module-pylinkage.optimization"], [7, "module-pylinkage.visualizer"], [10, "module-examples"], [15, "module-tests"], [16, "module-tests.collections"], [17, "module-tests.geometry"], [18, "module-tests.joints"], [19, "module-tests.linkage"], [20, "module-tests.optimization"]], "Optimization": [[12, "optimization"], [13, "optimization"]], "Our Pledge": [[9, "our-pledge"]], "Our Standards": [[9, "our-standards"]], "Packages": [[12, null]], "Parameters": [[3, "parameters"]], "Pylinkage": [[12, "pylinkage"], [13, null]], "Quick Links": [[12, null]], "Removed": [[8, "removed"]], "Removed in 0.4.0": [[8, "removed-in-0-4-0"]], "Requirements": [[12, "requirements"], [13, "requirements"]], "Returns": [[3, "returns"], [17, "returns"]], "Scope": [[9, "scope"]], "Setting up Virtual Environment": [[12, "setting-up-virtual-environment"], [13, "setting-up-virtual-environment"]], "Short demo": [[12, "short-demo"], [13, "short-demo"]], "Submodules": [[1, "submodules"], [2, "submodules"], [3, "submodules"], [4, "submodules"], [5, "submodules"], [6, "submodules"], [7, "submodules"], [10, "submodules"], [16, "submodules"], [17, "submodules"], [18, "submodules"], [19, "submodules"], [20, "submodules"]], "Subpackages": [[1, "subpackages"], [15, "subpackages"]], "Using pip": [[12, "using-pip"], [13, "using-pip"]], "Visualization": [[12, "visualization"], [13, "visualization"]], "Welcome to pylinkage\u2019s documentation!": [[12, null]], "[0.0.1] - 2021-06-12": [[8, "id11"]], "[0.2.0] - 2021-06-14": [[8, "id10"]], "[0.2.1] - 2021-06-16": [[8, "id9"]], "[0.2.2] - 2021-06-22": [[8, "id8"]], "[0.3.0] - 2021-07-05": [[8, "id7"]], "[0.4.0] - 2021-07-06": [[8, "id6"]], "[0.4.1] - 2021-07-11": [[8, "id5"]], "[0.5.0] - 2021-07-12": [[8, "id4"]], "[0.5.1] - 2021-07-14": [[8, "id3"]], "[0.5.2] - 2021-07-21": [[8, "id2"]], "[0.5.3] - 2023-06-23": [[8, "id1"]], "[Unreleased]": [[8, "unreleased"]], "examples": [[11, null]], "examples package": [[10, null]], "examples.fourbar_linkage module": [[10, "module-examples.fourbar_linkage"]], "examples.inverted_stroke_engine module": [[10, "module-examples.inverted_stroke_engine"]], "examples.strider module": [[10, "module-examples.strider"]], "pylinkage": [[0, null]], "pylinkage package": [[1, null]], "pylinkage.collections package": [[2, null]], "pylinkage.collections.agent module": [[2, "module-pylinkage.collections.agent"]], "pylinkage.collections.mutable_agent module": [[2, "module-pylinkage.collections.mutable_agent"]], "pylinkage.exceptions module": [[1, "module-pylinkage.exceptions"]], "pylinkage.geometry package": [[3, null]], "pylinkage.geometry.core module": [[3, "module-pylinkage.geometry.core"]], "pylinkage.geometry.secants module": [[3, "module-pylinkage.geometry.secants"]], "pylinkage.joints package": [[4, null]], "pylinkage.joints.crank module": [[4, "module-pylinkage.joints.crank"]], "pylinkage.joints.fixed module": [[4, "module-pylinkage.joints.fixed"]], "pylinkage.joints.joint module": [[4, "module-pylinkage.joints.joint"]], "pylinkage.joints.linear module": [[4, "module-pylinkage.joints.linear"]], "pylinkage.joints.revolute module": [[4, "module-pylinkage.joints.revolute"]], "pylinkage.joints.static module": [[4, "module-pylinkage.joints.static"]], "pylinkage.linkage package": [[5, null]], "pylinkage.linkage.analysis module": [[5, "module-pylinkage.linkage.analysis"]], "pylinkage.linkage.linkage module": [[5, "module-pylinkage.linkage.linkage"]], "pylinkage.optimization package": [[6, null]], "pylinkage.optimization.grid_search module": [[6, "module-pylinkage.optimization.grid_search"]], "pylinkage.optimization.particle_swarm module": [[6, "module-pylinkage.optimization.particle_swarm"]], "pylinkage.optimization.utils module": [[6, "module-pylinkage.optimization.utils"]], "pylinkage.visualizer package": [[7, null]], "pylinkage.visualizer.animated module": [[7, "module-pylinkage.visualizer.animated"]], "pylinkage.visualizer.core module": [[7, "module-pylinkage.visualizer.core"]], "pylinkage.visualizer.static module": [[7, "module-pylinkage.visualizer.static"]], "tests": [[14, null]], "tests package": [[15, null]], "tests.collections package": [[16, null]], "tests.collections.test_collections module": [[16, "module-tests.collections.test_collections"]], "tests.geometry package": [[17, null]], "tests.geometry.test_geometry module": [[17, "module-tests.geometry.test_geometry"]], "tests.joints package": [[18, null]], "tests.joints.test_joints module": [[18, "module-tests.joints.test_joints"]], "tests.linkage package": [[19, null]], "tests.linkage.test_linkage module": [[19, "module-tests.linkage.test_linkage"]], "tests.optimization package": [[20, null]], "tests.optimization.test_optimizer module": [[20, "module-tests.optimization.test_optimizer"]]}, "docnames": ["api/modules", "api/pylinkage", "api/pylinkage.collections", "api/pylinkage.geometry", "api/pylinkage.joints", "api/pylinkage.linkage", "api/pylinkage.optimization", "api/pylinkage.visualizer", "changeloglink", "code_of_conductlink", "examples/examples", "examples/modules", "index", "readmelink", "tests/modules", "tests/tests", "tests/tests.collections", "tests/tests.geometry", "tests/tests.joints", "tests/tests.linkage", "tests/tests.optimization"], "envversion": {"sphinx": 63, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["api/modules.rst", "api/pylinkage.rst", "api/pylinkage.collections.rst", "api/pylinkage.geometry.rst", "api/pylinkage.joints.rst", "api/pylinkage.linkage.rst", "api/pylinkage.optimization.rst", "api/pylinkage.visualizer.rst", "changeloglink.rst", "code_of_conductlink.rst", "examples/examples.rst", "examples/modules.rst", "index.rst", "readmelink.rst", "tests/modules.rst", "tests/tests.rst", "tests/tests.collections.rst", "tests/tests.geometry.rst", "tests/tests.joints.rst", "tests/tests.linkage.rst", "tests/tests.optimization.rst"], "indexentries": {"bounding_box() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.bounding_box", false]], "circle_intersect() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.circle_intersect", false]], "circle_line_from_points_intersection() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.circle_line_from_points_intersection", false]], "circle_line_intersection() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.circle_line_intersection", false]], "circle_line_intersection_data() (in module tests.geometry.test_geometry)": [[17, "tests.geometry.test_geometry.circle_line_intersection_data", false]], "cyl_to_cart() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.cyl_to_cart", false]], "dist_builtin() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.dist_builtin", false]], "get_nearest_point() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.get_nearest_point", false]], "hypostaticerror": [[1, "pylinkage.exceptions.HypostaticError", false]], "intersection() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.intersection", false]], "line_from_points() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.line_from_points", false]], "module": [[1, "module-pylinkage", false], [1, "module-pylinkage.exceptions", false], [3, "module-pylinkage.geometry", false], [3, "module-pylinkage.geometry.core", false], [3, "module-pylinkage.geometry.secants", false], [15, "module-tests", false], [17, "module-tests.geometry", false], [17, "module-tests.geometry.test_geometry", false]], "norm() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.norm", false]], "notcompletelydefinederror": [[1, "pylinkage.exceptions.NotCompletelyDefinedError", false]], "pylinkage": [[1, "module-pylinkage", false]], "pylinkage.exceptions": [[1, "module-pylinkage.exceptions", false]], "pylinkage.geometry": [[3, "module-pylinkage.geometry", false]], "pylinkage.geometry.core": [[3, "module-pylinkage.geometry.core", false]], "pylinkage.geometry.secants": [[3, "module-pylinkage.geometry.secants", false]], "secant_circles_intersections() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.secant_circles_intersections", false]], "sqr_dist() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.sqr_dist", false]], "test_crossing() (tests.geometry.test_geometry.testcirclelineintersection method)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection.test_crossing", false]], "test_no_crossing() (tests.geometry.test_geometry.testcirclelineintersection method)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection.test_no_crossing", false]], "test_no_inter() (tests.geometry.test_geometry.testcircles method)": [[17, "tests.geometry.test_geometry.TestCircles.test_no_inter", false]], "test_radius_ineq() (tests.geometry.test_geometry.testcircles method)": [[17, "tests.geometry.test_geometry.TestCircles.test_radius_ineq", false]], "test_tangent() (tests.geometry.test_geometry.testcirclelineintersection method)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection.test_tangent", false]], "testcirclelineintersection (class in tests.geometry.test_geometry)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection", false]], "testcircles (class in tests.geometry.test_geometry)": [[17, "tests.geometry.test_geometry.TestCircles", false]], "tests": [[15, "module-tests", false]], "tests.geometry": [[17, "module-tests.geometry", false]], "tests.geometry.test_geometry": [[17, "module-tests.geometry.test_geometry", false]], "unbuildableerror": [[1, "pylinkage.exceptions.UnbuildableError", false]]}, "objects": {"": [[10, 0, 0, "-", "examples"], [1, 0, 0, "-", "pylinkage"], [15, 0, 0, "-", "tests"]], "examples": [[10, 0, 0, "-", "fourbar_linkage"], [10, 0, 0, "-", "inverted_stroke_engine"], [10, 0, 0, "-", "strider"]], "examples.fourbar_linkage": [[10, 1, 1, "", "define_linkage"], [10, 1, 1, "", "main"]], "examples.inverted_stroke_engine": [[10, 1, 1, "", "create_stroke_engine_linkage"], [10, 1, 1, "", "view_linkage"]], "examples.strider": [[10, 2, 1, "", "LAP_PER_SECOND"], [10, 1, 1, "", "complete_strider"], [10, 1, 1, "", "history_saver"], [10, 1, 1, "", "main"], [10, 1, 1, "", "param2dimensions"], [10, 1, 1, "", "show_optimized"], [10, 1, 1, "", "swarm_optimizer"], [10, 1, 1, "", "sym_stride_evaluator"], [10, 1, 1, "", "view_swarm_polar"], [10, 1, 1, "", "view_swarm_tiled"]], "pylinkage": [[2, 0, 0, "-", "collections"], [1, 0, 0, "-", "exceptions"], [3, 0, 0, "-", "geometry"], [4, 0, 0, "-", "joints"], [5, 0, 0, "-", "linkage"], [6, 0, 0, "-", "optimization"], [7, 0, 0, "-", "visualizer"]], "pylinkage.collections": [[2, 0, 0, "-", "agent"], [2, 0, 0, "-", "mutable_agent"]], "pylinkage.exceptions": [[1, 3, 1, "", "HypostaticError"], [1, 3, 1, "", "NotCompletelyDefinedError"], [1, 3, 1, "", "UnbuildableError"]], "pylinkage.geometry": [[3, 0, 0, "-", "core"], [3, 0, 0, "-", "secants"]], "pylinkage.geometry.core": [[3, 1, 1, "", "cyl_to_cart"], [3, 1, 1, "", "dist_builtin"], [3, 1, 1, "", "get_nearest_point"], [3, 1, 1, "", "line_from_points"], [3, 1, 1, "", "norm"], [3, 1, 1, "", "sqr_dist"]], "pylinkage.geometry.secants": [[3, 1, 1, "", "bounding_box"], [3, 1, 1, "", "circle_intersect"], [3, 1, 1, "", "circle_line_from_points_intersection"], [3, 1, 1, "", "circle_line_intersection"], [3, 1, 1, "", "intersection"], [3, 1, 1, "", "secant_circles_intersections"]], "pylinkage.joints": [[4, 0, 0, "-", "crank"], [4, 0, 0, "-", "fixed"], [4, 0, 0, "-", "joint"], [4, 0, 0, "-", "linear"], [4, 0, 0, "-", "revolute"], [4, 0, 0, "-", "static"]], "pylinkage.joints.crank": [[4, 4, 1, "", "Crank"]], "pylinkage.joints.crank.Crank": [[4, 5, 1, "", "angle"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "r"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.fixed": [[4, 4, 1, "", "Fixed"]], "pylinkage.joints.fixed.Fixed": [[4, 5, 1, "", "angle"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "r"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.joint": [[4, 4, 1, "", "Joint"], [4, 4, 1, "", "Static"], [4, 1, 1, "", "joint_syntax_parser"]], "pylinkage.joints.joint.Joint": [[4, 6, 1, "", "coord"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "joint0"], [4, 5, 1, "", "joint1"], [4, 5, 1, "", "name"], [4, 6, 1, "", "set_constraints"], [4, 6, 1, "", "set_coord"], [4, 5, 1, "", "x"], [4, 5, 1, "", "y"]], "pylinkage.joints.joint.Static": [[4, 6, 1, "", "get_constraints"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.linear": [[4, 4, 1, "", "Linear"]], "pylinkage.joints.linear.Linear": [[4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "joint2"], [4, 6, 1, "", "reload"], [4, 5, 1, "", "revolute_radius"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.revolute": [[4, 4, 1, "", "Pivot"], [4, 4, 1, "", "Revolute"]], "pylinkage.joints.revolute.Pivot": [[4, 5, 1, "", "r0"], [4, 5, 1, "", "r1"]], "pylinkage.joints.revolute.Revolute": [[4, 6, 1, "", "circle"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "r0"], [4, 5, 1, "", "r1"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.static": [[4, 4, 1, "", "Static"]], "pylinkage.joints.static.Static": [[4, 6, 1, "", "get_constraints"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.linkage": [[5, 0, 0, "-", "analysis"], [5, 0, 0, "-", "linkage"]], "pylinkage.linkage.analysis": [[5, 1, 1, "", "bounding_box"], [5, 1, 1, "", "kinematic_default_test"], [5, 1, 1, "", "movement_bounding_box"]], "pylinkage.linkage.linkage": [[5, 4, 1, "", "Linkage"]], "pylinkage.linkage.linkage.Linkage": [[5, 6, 1, "", "get_coords"], [5, 6, 1, "", "get_num_constraints"], [5, 6, 1, "", "get_rotation_period"], [5, 6, 1, "", "hyperstaticity"], [5, 5, 1, "", "joints"], [5, 5, 1, "", "name"], [5, 6, 1, "", "rebuild"], [5, 6, 1, "", "set_completely"], [5, 6, 1, "", "set_coords"], [5, 6, 1, "", "set_num_constraints"], [5, 6, 1, "", "step"]], "pylinkage.optimization": [[6, 0, 0, "-", "grid_search"], [6, 0, 0, "-", "particle_swarm"], [6, 0, 0, "-", "utils"]], "pylinkage.optimization.grid_search": [[6, 1, 1, "", "fast_variator"], [6, 1, 1, "", "sequential_variator"], [6, 1, 1, "", "tqdm_verbosity"], [6, 1, 1, "", "trials_and_errors_optimization"]], "pylinkage.optimization.particle_swarm": [[6, 1, 1, "", "particle_swarm_optimization"]], "pylinkage.optimization.utils": [[6, 1, 1, "", "generate_bounds"], [6, 1, 1, "", "kinematic_maximization"], [6, 1, 1, "", "kinematic_minimization"]], "pylinkage.visualizer": [[7, 0, 0, "-", "animated"], [7, 0, 0, "-", "core"], [7, 0, 0, "-", "static"]], "pylinkage.visualizer.animated": [[7, 1, 1, "", "plot_kinematic_linkage"], [7, 1, 1, "", "show_linkage"], [7, 1, 1, "", "swarm_tiled_repr"], [7, 1, 1, "", "update_animated_plot"]], "pylinkage.visualizer.static": [[7, 1, 1, "", "plot_static_linkage"]], "tests": [[16, 0, 0, "-", "collections"], [17, 0, 0, "-", "geometry"], [18, 0, 0, "-", "joints"], [19, 0, 0, "-", "linkage"], [20, 0, 0, "-", "optimization"]], "tests.collections": [[16, 0, 0, "-", "test_collections"]], "tests.geometry": [[17, 0, 0, "-", "test_geometry"]], "tests.geometry.test_geometry": [[17, 4, 1, "", "TestCircleLineIntersection"], [17, 4, 1, "", "TestCircles"], [17, 1, 1, "", "circle_line_intersection_data"]], "tests.geometry.test_geometry.TestCircleLineIntersection": [[17, 6, 1, "", "test_crossing"], [17, 6, 1, "", "test_no_crossing"], [17, 6, 1, "", "test_tangent"]], "tests.geometry.test_geometry.TestCircles": [[17, 6, 1, "", "test_no_inter"], [17, 6, 1, "", "test_radius_ineq"]], "tests.joints": [[18, 0, 0, "-", "test_joints"]], "tests.joints.test_joints": [[18, 4, 1, "", "TestFixed"], [18, 4, 1, "", "TestPivot"], [18, 4, 1, "", "TestRevolute"]], "tests.joints.test_joints.TestFixed": [[18, 5, 1, "", "pivot1"], [18, 6, 1, "", "test_pos"]], "tests.joints.test_joints.TestPivot": [[18, 5, 1, "", "pivot1"], [18, 6, 1, "", "test_buildable"], [18, 6, 1, "", "test_limit_intersect"], [18, 6, 1, "", "test_no_intersect"], [18, 6, 1, "", "test_under_intersect"]], "tests.joints.test_joints.TestRevolute": [[18, 5, 1, "", "pivot1"], [18, 6, 1, "", "test_buildable"], [18, 6, 1, "", "test_limit_intersect"], [18, 6, 1, "", "test_no_intersect"], [18, 6, 1, "", "test_under_intersect"]], "tests.linkage": [[19, 0, 0, "-", "test_linkage"]], "tests.linkage.test_linkage": [[19, 4, 1, "", "TestLinkage"]], "tests.linkage.test_linkage.TestLinkage": [[19, 6, 1, "", "test_definition"]], "tests.optimization": [[20, 0, 0, "-", "test_optimizer"]], "tests.optimization.test_optimizer": [[20, 4, 1, "", "TestEvaluation"], [20, 4, 1, "", "TestGenerateBounds"], [20, 4, 1, "", "TestPSO"], [20, 4, 1, "", "TestTrialsAndErrors"], [20, 4, 1, "", "TestVariator"], [20, 1, 1, "", "prepare_linkage"]], "tests.optimization.test_optimizer.TestEvaluation": [[20, 5, 1, "", "constraints"], [20, 5, 1, "", "linkage"], [20, 6, 1, "", "test_score"]], "tests.optimization.test_optimizer.TestGenerateBounds": [[20, 6, 1, "", "test_function"]], "tests.optimization.test_optimizer.TestPSO": [[20, 5, 1, "", "constraints"], [20, 5, 1, "", "linkage"], [20, 6, 1, "", "test_convergence"]], "tests.optimization.test_optimizer.TestTrialsAndErrors": [[20, 5, 1, "", "linkage"], [20, 6, 1, "", "test_convergence"]], "tests.optimization.test_optimizer.TestVariator": [[20, 6, 1, "", "test_length"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "data", "Python data"], "3": ["py", "exception", "Python exception"], "4": ["py", "class", "Python class"], "5": ["py", "attribute", "Python attribute"], "6": ["py", "method", "Python method"]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:data", "3": "py:exception", "4": "py:class", "5": "py:attribute", "6": "py:method"}, "terms": {"": [3, 8, 9, 13], "0": [3, 4, 5, 6, 7, 9, 10, 12, 13, 18, 20], "00": 6, "01": 6, "05": [12, 13], "06": [1, 12], "07": 12, "1": [3, 4, 5, 6, 7, 10, 12, 13, 20], "10": [1, 6, 8, 10], "100": [6, 7, 8, 10], "11": 12, "12": [6, 7, 10, 12], "124584029857888": 18, "124584029858080": 18, "124584029858272": 18, "13": [6, 7, 8, 17], "14": [7, 12], "15": [1, 17], "16": [1, 5, 12, 18], "17": [6, 10, 18], "19": [10, 18], "1997": 3, "2": [3, 4, 6, 10, 12, 13], "20": [1, 8], "200": 6, "2019": 6, "2021": [1, 5, 6, 7, 10, 12, 17, 18], "2023": 12, "21": [1, 5, 12], "22": 12, "23": 12, "24": 7, "25": [12, 13], "26": [10, 17], "27": 8, "29": 10, "2d": [3, 5, 8, 10, 12, 13], "3": [3, 6, 7, 10, 12, 13, 20], "30": 1, "300": 10, "31": [12, 13], "32": 10, "3415926535897933": 10, "37": 10, "39": 5, "4": [10, 12], "40": 7, "400": 10, "42": 17, "45": 6, "47": 18, "5": [6, 7, 10, 12, 13], "51": 6, "52": 1, "58": 7, "6": [4, 6, 8, 10], "7": [4, 6, 8], "7853981633974483": 10, "8": [3, 6, 8, 10], "9": 8, "90": [12, 13, 17], "A": [1, 3, 5, 6, 7, 8, 9, 10, 12, 13, 17, 20], "And": [12, 13], "As": [12, 13], "Being": 9, "But": [12, 13], "For": [8, 9, 12, 13], "If": [5, 6, 7, 10, 12, 13], "In": [6, 8, 12, 13], "It": [3, 4, 5, 6, 8, 10, 12, 13], "Its": 6, "No": 9, "Of": [12, 13], "On": [12, 13], "One": 3, "That": [12, 13], "The": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13], "Then": [12, 13], "There": 6, "To": [7, 10, 12, 13], "With": [8, 12, 13], "__find_solving_order__": 8, "__init__": 8, "__secant_circles_intersections__": 8, "_kwarg": [12, 13], "_subplot": 7, "ab": 6, "abc": 4, "abcsic": 8, "about": [9, 20], "abov": [12, 13], "abscissa": [3, 4], "absolut": [3, 8], "abstract": 4, "abus": 9, "accept": 9, "access": 1, "account": 9, "achiev": [12, 13], "across": 5, "act": 9, "action": [9, 10], "actual": [12, 13], "ad": 6, "adapt": [9, 12, 13], "add": [7, 8, 12, 13], "address": 9, "adher": 8, "advanc": 9, "advis": 8, "affect": [4, 8, 9], "after": [8, 20], "ag": 9, "agent": [0, 1, 6, 7, 8, 10, 12, 13], "aggress": 9, "align": [8, 9], "all": [5, 6, 7, 8, 9, 12, 13], "allow": [5, 8, 9], "almost": [6, 18], "alpha": 8, "also": [4, 9, 12, 13], "alwai": 4, "ambigu": 4, "amount": 5, "amplitud": [12, 13], "an": [4, 6, 7, 8, 9, 10, 12, 13], "analysi": [0, 1], "anchor": [4, 8], "angl": [1, 3, 4, 5, 8, 10, 12, 13], "ani": [3, 5, 6, 7, 9, 10, 12, 13], "anim": [0, 1, 8, 10], "anoth": [3, 8, 10], "answer": 9, "anymor": 8, "anyth": 6, "anywai": 8, "apolog": 9, "apologi": 9, "appear": 9, "appli": [4, 9], "appoint": 9, "approach": [12, 13], "appropri": 9, "apr": [5, 17, 18], "ar": [3, 5, 6, 7, 8, 9, 10, 12, 13], "arbitrari": [3, 8], "arg": [4, 6, 10], "argument": [6, 8, 10, 12, 13], "around": 9, "arrai": [6, 8], "arrang": [12, 13], "article_swarm_optim": 8, "artist": 7, "ask": [8, 12, 13], "assign": [4, 6, 8], "attack": 9, "attent": 9, "attribut": 12, "author": [1, 5, 6, 7, 10, 17, 18], "automat": [7, 8, 12, 13], "avail": 9, "averag": 8, "avoid": [8, 9, 10], "ax": [7, 8], "axessubplot": 7, "axi": [3, 4, 7], "b": [3, 12, 13], "back": 8, "bar": [8, 10, 12, 13, 20], "base": [1, 4, 5, 8, 17, 18, 19, 20], "basi": 8, "basic": 3, "becaus": [6, 8, 12, 13], "bee": [12, 13], "been": [1, 4, 8], "befor": [5, 6, 7, 8], "begin": 8, "behavior": [8, 9], "behaviour": 8, "behind": [12, 13], "best": [5, 6, 8, 9, 10, 12, 13], "beta": [8, 12, 13], "better": 6, "between": [3, 4, 5, 6, 7, 8, 10, 12, 13, 17], "big": 6, "bigger": 8, "bit": [8, 12, 13], "bodi": 9, "bool": [5, 6, 7], "both": [5, 8, 12, 13], "bound": [3, 5, 6, 8, 12, 13], "bounding_box": [1, 3, 5, 8, 12, 13], "bourk": 3, "box": [3, 5, 8, 12, 13], "branch": 8, "break": [8, 18], "buggi": 8, "build": [10, 12, 13], "buildabl": 8, "builder": [8, 12, 13], "built": [1, 3, 6, 8], "bump2vers": 8, "c": [3, 12, 13], "c1": 6, "c2": 6, "calcul": [8, 12, 13], "call": [4, 6, 12, 13], "callabl": [5, 6, 7], "can": [3, 4, 6, 8, 10, 12, 13, 19, 20], "candid": [3, 6, 12, 13], "cannot": 1, "capabl": [10, 12, 13], "cartesian": [3, 4], "case": [4, 6, 15, 19, 20], "caus": 8, "center": [4, 6], "certain": [12, 13], "certainli": 6, "cfg": 8, "chang": [6, 10], "changelog": 12, "channel": 9, "characterist": [4, 9], "check": 8, "checker": 8, "choos": [8, 12, 13], "chunk": 10, "circl": [1, 3, 4, 8, 12, 13, 17], "circle1": 3, "circle2": 3, "circle_intersect": [1, 3], "circle_line_from_points_intersect": [1, 3], "circle_line_intersect": [1, 3, 8], "circle_line_intersection_data": [15, 17], "circlespher": 3, "clarifi": 9, "clariti": 9, "class": [4, 5, 8, 9, 17, 18, 19, 20], "classic": [12, 13], "clear": 8, "clearli": 8, "close": [12, 13], "closer": [3, 12, 13], "code": [8, 10], "code_of_conduct": [8, 9, 12, 13], "coeffici": 6, "collect": [0, 1, 8, 14, 15], "color": 8, "color_switch": 8, "com": [3, 10], "combin": [6, 8], "come": [8, 12, 13], "comment": 9, "commit": 9, "common": [5, 6, 9, 12, 13], "commun": [9, 12, 13], "compar": [3, 6], "compat": 8, "complaint": 9, "complet": [1, 5, 6, 8], "complete_strid": [10, 11], "complex": [12, 13], "compress": [6, 8], "comput": [3, 4, 5, 8], "concentr": 17, "conda": [8, 12, 13], "conduct": 12, "configur": 8, "confus": 8, "consecut": 6, "consequ": [8, 9], "consid": [3, 6, 8, 9, 12, 13], "consist": [4, 8], "consol": 6, "constant": [4, 12, 13], "constrain": [1, 4, 5, 8], "constraint": [1, 4, 5, 6, 10, 12, 13, 15, 20], "construct": 9, "contain": [6, 8], "content": [0, 11, 12, 14], "continu": [8, 9], "contribut": 9, "converg": 8, "convert": [3, 10], "cool": [12, 13], "coord": [1, 4, 5, 12, 13], "coordin": [3, 4, 5, 7, 8, 10, 12, 13], "copi": [1, 10], "core": [0, 1], "corner": [12, 13], "correspond": 5, "cost": 8, "could": [8, 9], "cours": [12, 13], "crank": [0, 1, 5, 7, 10, 12, 13], "creat": [1, 5, 6, 7, 10, 12, 13, 17, 18], "create_stroke_engine_linkag": [10, 11], "creator": 20, "criterion": [12, 13], "cross": 17, "crucial": [12, 13], "curr_bb": [12, 13], "current": [12, 13], "curtain": [12, 13], "custom": 8, "cyl_to_cart": [1, 3], "d": [6, 12, 13], "danger": 17, "data": [10, 17], "de": 4, "decis": 9, "declar": [12, 13], "decor": [5, 6, 8, 12, 13], "deem": 9, "def": [12, 13], "default": [3, 4, 5, 6, 7, 8, 10], "defin": [1, 3, 4, 5, 8, 10, 12, 13, 19], "define_linkag": [10, 11], "definit": [1, 4, 5, 8], "deform": [12, 13], "degre": 5, "delai": 7, "delta_dim": [6, 8], "demo": [8, 10], "demonstr": [9, 10], "denomin": 5, "deprec": [4, 6], "derogatori": 9, "describ": [6, 12, 13], "descript": 7, "desir": 17, "detail": 10, "determin": 9, "develop": 8, "dict": 6, "differ": [4, 9, 12, 13, 17], "digit": 5, "dilat": [6, 8], "dim": [8, 10], "dimens": [5, 6, 7, 8, 10, 12, 13], "dimension": [3, 5], "dimension_func": 7, "disabl": [6, 8, 9], "disparag": 9, "displai": [7, 8], "dist": 3, "dist_builtin": [1, 3], "dist_i": 3, "dist_x": 3, "distanc": [3, 4, 5, 10, 12, 13], "distance0": [4, 12, 13], "distance1": [4, 12, 13], "distribut": 1, "divers": 9, "divis": [6, 8, 12, 13], "diywalk": 10, "do": [4, 5, 8, 12, 13], "doc": [1, 8], "docstr": 8, "document": [1, 8], "doesn": [12, 13], "don": [12, 13], "done": 8, "download": [12, 13], "draw": [7, 10, 12, 13], "drop": 8, "dt": [4, 5, 12, 13], "due": [8, 10], "durat": [7, 10], "dure": 9, "dynam": 5, "e": 9, "each": [3, 5, 6, 7, 8, 10, 12, 13, 17], "easi": [7, 12, 13], "easier": 8, "econom": 9, "edg": [12, 13], "edit": [9, 10], "educ": 9, "effici": [8, 12, 13], "either": [3, 4, 12, 13], "element": [3, 4, 5, 6, 7], "els": 6, "email": 9, "empathi": 9, "emphas": [12, 13], "empti": 4, "en": 10, "end": 8, "enforc": 12, "engin": [8, 10], "enough": [8, 12, 13], "env": [12, 13], "environ": [8, 9], "equal": 3, "equat": 3, "equival": [3, 8], "error": [6, 8, 12, 13, 20], "error_penalti": 5, "ethnic": 9, "euclidian": 3, "eval_func": [6, 8, 12, 13], "evalu": [5, 6, 10, 12, 13, 20], "even": [8, 12, 13], "event": 9, "everyon": 9, "everyth": [8, 12, 13], "exactli": [12, 13], "exampl": [6, 8, 9], "except": [0, 8, 12], "execut": 8, "exhaust": [8, 12, 13], "exhaustive_optim": 8, "exist": [1, 8], "expand": [8, 10], "experi": 9, "experiment": 8, "explan": [9, 12, 13], "explicit": 9, "express": [4, 9], "extens": [3, 8], "extern": 9, "extra": 6, "extrem": [12, 13], "factor": [6, 8], "fail": 8, "fair": 9, "fairli": 9, "fals": [5, 7, 8, 10], "faq": 9, "far": 20, "fast_vari": [1, 6], "faster": [3, 7, 8], "favor": [4, 8], "featur": [3, 7, 8, 10, 12, 13], "feedback": 9, "feel": 10, "few": [12, 13], "fig": 7, "figur": 7, "file": [4, 8, 12, 13], "final": 10, "find": [10, 12, 13], "finish": [5, 8, 12, 13], "finit": 8, "first": [3, 4, 8, 12, 13], "first_point": 3, "fit": [5, 6, 8, 10, 12, 13], "fitness_func": [12, 13], "fittest": 10, "fix": [0, 1, 12, 13], "fixed_joint": 18, "flake8": 8, "flat": [5, 8, 10], "flexibl": 8, "float": [3, 4, 5, 6, 7, 10, 12, 13, 17], "fly": [12, 13], "focus": 9, "folder": [1, 8], "follow": [6, 8, 9, 12, 13], "forc": 5, "form": [6, 10, 12, 13], "formal": 5, "format": [6, 7, 8], "former": 8, "found": [3, 10], "four": [8, 10, 12, 13, 20], "fourbar_linkag": [8, 11, 12], "fp": 7, "fraction": 4, "frame": [4, 7, 8, 10], "free": 9, "fri": [5, 6, 18], "friendli": [12, 13], "from": [3, 4, 6, 7, 8, 9, 20], "full": 8, "func": [5, 6], "function": [3, 5, 6, 8, 10, 12, 13, 20], "gender": 9, "gener": [3, 5, 6, 8], "generate_bound": [1, 6, 8, 12, 13, 20], "geometr": [4, 5, 6, 10, 12, 13], "geometri": [0, 1, 8, 12, 13, 14, 15], "get": [3, 8, 12, 13], "get_constraint": [1, 4, 8], "get_coord": [1, 5, 8, 12, 13], "get_nearest_point": [1, 3], "get_num_constraint": [1, 5, 6, 8, 12, 13], "get_po": 8, "get_rotation_period": [1, 5, 8], "git": 8, "github": [1, 8, 9], "gitignor": 8, "give": [3, 4, 6, 9, 10, 12, 13], "given": [5, 10], "global": 8, "goe": 8, "good": [12, 13], "gracefulli": 9, "graph": [7, 10], "greatli": 8, "greedi": [12, 13], "grid": 6, "grid_search": [0, 1, 8], "group": 5, "guidelin": [12, 13], "ha": [4, 6, 8], "had": 8, "handl": [8, 12, 13], "happen": [12, 13], "harass": 9, "harm": 9, "have": [1, 6, 8, 9, 12, 13], "head": [12, 13], "header": 8, "healthi": 9, "here": [6, 8, 12, 13], "hesit": [12, 13], "hi": [8, 12, 13], "high": 8, "highest": 6, "highli": [3, 12, 13], "highlight": [7, 8], "hing": 4, "histori": [8, 10], "history_sav": [10, 11], "hour": 8, "how": [6, 12, 13], "howev": [12, 13], "html": [3, 9, 10], "http": [1, 3, 9, 10], "huge": 6, "hugofara": [1, 5, 6, 7, 10, 17, 18], "human": [8, 12, 13], "hyperstat": [1, 5, 8], "hypostaticerror": [0, 1], "i": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 17, 20], "idea": [12, 13], "ident": 9, "im": 7, "imag": [7, 8, 10], "imageri": 9, "imagin": [12, 13], "immut": 8, "impact": 9, "implement": 6, "implicitli": 8, "import": [6, 8, 10, 12, 13], "improv": [8, 20], "inappropri": 9, "incid": 9, "includ": [5, 8, 9], "inclus": 9, "incompat": [12, 13], "incomplet": 1, "indeterminaci": 8, "index": [7, 8, 12], "indic": 3, "individu": 9, "inertia": 6, "inf": [5, 6, 12, 13], "infin": 8, "inform": 9, "inherit": [4, 8], "ini": 8, "init_po": [12, 13], "initi": [5, 6, 7, 8, 10, 12, 13], "initial_coordin": 6, "initial_posit": 10, "input": [3, 4, 6, 8, 10], "insert": 8, "inspir": 9, "instanc": [8, 9, 12, 13], "instead": [7, 8], "insult": 9, "int": [3, 5, 6, 7, 10, 17], "integr": 8, "intend": [8, 10], "interact": 9, "interest": [12, 13], "intersect": [1, 3, 12, 13, 17, 18], "interv": 7, "introduc": 8, "invert": 10, "inverted_stroke_engin": [8, 11, 12], "investig": 9, "invis": 9, "involv": 9, "io": 1, "isn": [12, 13], "issu": [8, 9, 12, 13], "issue_templ": 8, "ite": 6, "iter": [3, 5, 6, 7, 8, 10, 12, 13, 20], "iteration_factor": 7, "its": [4, 5, 8, 12, 13], "join": [3, 4], "joint": [0, 1, 5, 8, 10, 14, 15], "joint0": [1, 4, 12, 13], "joint1": [1, 4, 12, 13], "joint2": [1, 4], "joint_syntax_pars": [1, 4], "jul": 6, "jun": [1, 7, 10], "just": [9, 12, 13], "keep": [4, 8, 12, 13], "keyword": 6, "kind": [8, 9], "kinemat": [5, 6, 8, 10, 12, 13], "kinematic_default_test": [1, 5], "kinematic_maxim": [1, 6], "kinematic_minim": [1, 6, 8], "kinematic_minimizast": [12, 13], "kinematic_optimizatino": 8, "know": [4, 12, 13], "known": 8, "kwarg": 6, "ladder": 9, "languag": [9, 12, 13], "lap_per_second": [10, 11], "last": [8, 12, 13], "launch": 8, "lead": 9, "leader": [6, 9], "learn": [6, 9], "least": [12, 13], "legaci": [3, 8], "legend": [7, 8], "leggedsnak": 8, "len": [6, 7], "length": [3, 10, 20], "less": 8, "let": [6, 8, 12, 13], "level": 9, "lib": 8, "librari": [12, 13], "licens": 8, "life": 8, "like": [9, 12, 13], "line": [3, 12, 13, 17], "line_from_point": [1, 3, 8], "linear": [0, 1, 8, 10], "lineintersect": 3, "link": [4, 8, 13], "linkag": [0, 1, 6, 7, 8, 10, 14, 15, 20], "lint": 8, "list": [3, 5, 6, 7, 10], "local": [4, 6], "localbestpso": 6, "locat": 4, "loci": [5, 6, 7, 8, 12, 13], "locu": [3, 5, 8, 12, 13], "locus_highlight": [7, 8], "longer": 8, "look": 6, "loop": [12, 13], "lot": 8, "lower": [12, 13], "lower_bound": 6, "made": [12, 13], "magic": [12, 13], "mai": [1, 8, 9, 12, 13], "mail": 9, "main": [8, 10, 11, 12, 13], "mainli": 6, "make": [4, 5, 6, 7, 8, 9, 12, 13], "mandatori": 8, "mani": [8, 12, 13], "manifest": 8, "manual": [12, 13], "mar": 6, "mast": [12, 13], "master": 8, "math": 3, "mathemat": [8, 12, 13], "mathworld": 3, "matplotlib": [7, 8, 12, 13], "matt": 3, "max": 6, "max_dim": 6, "max_factor": 6, "max_i": [12, 13], "max_x": [12, 13], "maxim": [6, 8], "md": [8, 12, 13], "mechan": [12, 13], "media": 9, "member": 9, "mention": 8, "mere": 8, "messag": [1, 8], "method": [3, 5, 8, 12, 13], "method_nam": 19, "methodnam": [17, 18, 20], "mid_dist": 3, "middl": 6, "millisecond": 7, "min": [6, 12, 13], "min_dim": 6, "min_i": [12, 13], "min_ratio": 6, "min_x": [12, 13], "minim": [6, 8, 12, 13], "minimum": [12, 13], "minor": 8, "misbehav": 8, "miss": 8, "mistak": 9, "mit": 8, "mode": [5, 7, 17], "moder": 9, "modifi": [6, 7, 8, 10], "modul": [0, 8, 11, 12, 14], "mon": [6, 7], "more": [8, 12, 13], "most": 8, "mostli": 4, "motion": 10, "motor": [8, 12, 13], "move": [4, 8, 12, 13], "movement": [7, 12, 13], "movement_bounding_bow": 8, "movement_bounding_box": [1, 5, 8], "mozilla": 9, "much": 8, "multipl": [1, 8], "mutabl": 8, "mutable_ag": [0, 1], "mutableag": [6, 8], "my": [12, 13], "my_linkag": [12, 13], "n": [12, 13], "n_agent": 10, "n_iter": 10, "n_particl": 6, "n_result": [6, 12, 13], "n_show": 10, "name": [1, 4, 5, 8, 12, 13, 18], "namedtupl": 8, "nation": 9, "natur": 9, "navig": 8, "need": [5, 8, 12, 13], "neg": 8, "neighbor": [6, 12, 13], "net": 3, "new": [4, 8], "none": [3, 4, 5, 6, 7, 8, 10], "norm": [1, 3], "normal": 10, "notabl": 8, "notcompletelydefinederror": [0, 1, 8], "note": [12, 13], "noth": [3, 4], "notic": [12, 13], "now": [8, 12, 13], "num_constraint": 6, "number": [5, 6, 7, 8, 10, 12, 13, 17, 20], "numer": 5, "numpi": [12, 13], "numpydoc": 8, "obj_1": 3, "obj_2": 3, "object": [2, 3, 4, 5, 8, 10, 12, 13, 20], "oblig": 9, "offens": 9, "offici": [8, 9], "offlin": 9, "often": [6, 8, 12, 13], "onc": [12, 13], "one": [3, 5, 8, 10, 12, 13], "onli": [4, 6, 8, 12, 13, 17], "onlin": 9, "open": [9, 12, 13], "opinion": 9, "optim": [0, 1, 3, 8, 10, 14, 15], "option": [7, 8, 12, 13], "order": [5, 6, 8, 12, 13], "order_rel": [6, 8, 12, 13], "ordin": [3, 4, 8], "org": [9, 10], "organ": 8, "ori": 3, "orient": [4, 9], "origin": [3, 4, 7, 10], "ot": 8, "other": [4, 9, 17], "otherwis": [9, 12, 13], "our": [12, 13], "output": [6, 7, 8, 10, 20], "over": [5, 8, 17], "overal": 9, "own": [5, 8], "packag": [0, 8, 11, 13, 14], "pad": 8, "page": [8, 12], "param": 10, "param2dimens": [10, 11], "paramet": [4, 5, 6, 7, 8, 10, 12, 13], "parent": [4, 12, 13], "pars": 4, "parser": 4, "particip": 9, "particl": [6, 8, 10, 12, 13, 20], "particle_swarm": [0, 1, 8], "particle_swarm_optim": [1, 6, 8, 12, 13], "particularli": [12, 13], "pass": [5, 6, 7, 10, 12, 13], "past": 10, "path": [8, 12, 13], "pattern": 9, "paul": 3, "paulbourk": 3, "penalti": [5, 6, 12, 13], "peopl": 9, "per": 7, "perfect": 8, "period": [5, 9, 10], "permiss": 9, "person": 9, "perspect": 8, "physic": 9, "pin": [4, 12, 13], "pivot": [1, 4, 8, 18], "pivot1": [15, 18], "pl": [12, 13], "plai": [12, 13], "plan": 10, "planar": [12, 13], "pleas": [1, 12, 13], "pledg": 12, "plot": [7, 8], "plot_kinematic_linkag": [1, 7, 8], "plot_static_linkag": [1, 7, 8], "po": [5, 8, 10, 12, 13], "point": [3, 4, 5, 7, 8, 12, 13], "point1": 3, "point2": 3, "polar": [3, 10], "polit": 9, "poorli": 8, "posit": [4, 5, 6, 7, 8, 9, 10, 12, 13, 18], "possibl": [4, 5, 6, 8, 12, 13], "post": [9, 12, 13], "precis": 5, "prepar": 17, "prepare_linkag": [15, 20], "preserv": 4, "prev": [7, 10], "previou": [5, 7, 8, 12, 13], "principl": [12, 13], "print": [6, 8], "prismat": 4, "privaci": 9, "privat": 9, "problem": [6, 8, 12, 13], "profession": 9, "program": 3, "progress": 8, "project": [3, 4, 8, 10, 12, 13], "promptli": 9, "properli": [8, 20], "provid": [3, 6, 8, 9, 12, 13], "pso": [6, 8, 10], "public": 9, "publish": [8, 9], "pull": [12, 13], "put": [12, 13], "py": 8, "pycharm": 8, "pylinkag": [8, 10, 20], "pypi": [8, 12, 13], "pyproject": 8, "pyswarm": [6, 8, 12, 13], "python": [3, 8, 12, 13], "quadrant": [12, 13], "quarter": [12, 13], "question": 9, "quick": 1, "quicker": 8, "r": [1, 3, 4], "r0": [1, 4], "r1": [1, 4], "race": 9, "radi": 17, "radian": [12, 13], "radiu": [3, 4], "radius1": 3, "rais": [1, 8], "randomli": 6, "rare": [12, 13], "rate": [8, 17], "ratio": 6, "reach": 8, "readm": [8, 12], "real": 7, "rearrang": [12, 13], "reason": [9, 12, 13], "rebuild": [1, 5], "recap": [12, 13], "recat": 4, "receiv": [8, 12, 13], "recommend": [8, 12, 13], "recreat": 7, "redefin": 5, "ref_bb": [12, 13], "ref_po": [12, 13], "refer": [3, 4, 6, 12, 13], "reference_point": 3, "regardless": 9, "regener": 8, "reject": 9, "rel": [4, 5, 8, 10], "relat": 8, "relev": [12, 13], "religion": 9, "reload": [1, 4, 8, 12, 13], "rememb": [12, 13], "remov": [4, 6, 9], "renam": 8, "reorgan": 8, "replac": 8, "report": 9, "repr_polar_swarm": 8, "repres": [9, 10], "represent": [5, 8, 10], "request": [9, 12, 13], "requir": 8, "reset": [12, 13], "resourc": [12, 13], "respect": [8, 9, 12, 13], "respons": 12, "rest": 8, "result": [6, 7, 8, 12, 13, 20], "return": [4, 5, 6, 7, 8, 10, 12, 13, 20], "reus": [12, 13], "revamp": 8, "review": 9, "revolut": [0, 1, 7, 8, 12, 13, 18], "revolute_radiu": [1, 4], "right": [9, 12, 13], "risk": 8, "robust": [8, 12, 13], "rocker": [12, 13], "role": [12, 13], "rotari": 10, "rotat": [4, 5, 8, 12, 13], "run": [5, 6, 7, 8, 10, 12, 13, 20], "runtest": [17, 18, 20], "sai": [12, 13], "same": [3, 5, 8, 12, 13], "sat": 10, "satisfactori": 8, "satisfi": 5, "save": [7, 8, 10, 12, 13], "save_each": 10, "scalar": 4, "scope": 12, "score": [6, 7, 8, 10, 12, 13, 20], "script": 8, "search": [6, 12], "secant": [0, 1, 8], "secant_circles_intersect": [1, 3, 8], "second": [3, 4, 7, 8, 12, 13], "second_point": 3, "secur": 9, "see": [1, 7, 8, 9, 10, 12, 13], "seem": [8, 12, 13], "seen": 8, "self": [4, 5], "semant": 8, "sens": [12, 13], "separ": [8, 12, 13], "sequenc": [3, 4, 5, 6, 7, 10], "sequenti": 6, "sequential_vari": [1, 6], "seri": 9, "serial": [12, 13], "seriou": 9, "set": [4, 5, 6, 7, 8, 9, 10], "set_anchor0": [1, 4], "set_anchor1": [1, 4], "set_complet": [1, 5, 8], "set_constraint": [1, 4, 5, 8], "set_coord": [1, 4, 5, 8, 12, 13], "set_num_constraint": [1, 5, 8, 10, 12, 13], "setup": 8, "sex": 9, "sexual": 9, "shape": 6, "short": 10, "should": [1, 3, 4, 5, 6, 7, 8, 10, 12, 13], "show": [7, 8, 10, 12, 13], "show_legend": 7, "show_linkag": [1, 7, 12, 13], "show_optim": [10, 11], "sidebar": 8, "signatur": 8, "similar": 8, "simpl": [1, 6, 7, 8, 10, 12, 13, 20], "simpli": 20, "simplif": 8, "simplifi": [8, 12, 13], "simul": [5, 6, 10], "sinc": [4, 6], "singl": [6, 9, 12, 13], "size": [6, 9, 10], "small": 6, "so": [3, 4, 6, 8, 12, 13, 17], "social": [6, 9], "socio": 9, "solut": [1, 8, 12, 13], "solv": [1, 4, 12, 13], "some": [8, 10, 12, 13, 20], "someth": [12, 13], "sometim": 8, "sort": 9, "sourc": [8, 12], "space": [4, 6, 9, 12, 13], "special": [4, 7], "specif": 8, "specifi": [6, 8, 9, 12, 13], "sphinx": 8, "split": 8, "sqr_dist": [1, 3], "squar": [3, 12, 13], "stai": [12, 13], "standard": [4, 5, 6, 8, 12, 13], "start": [3, 12, 13], "state": [5, 6, 10], "static": [0, 1, 8], "statu": 9, "step": [1, 4, 5, 6, 7, 8, 12, 13], "still": [12, 13], "stop": [8, 12, 13], "str": 7, "straight": 17, "strider": [8, 11, 12], "stroke": [8, 10], "stroke_engin": 10, "structur": [3, 4, 5, 12, 13], "style": 8, "sub": 8, "subdivid": 7, "subdivis": [6, 8, 12, 13, 20], "submodul": [0, 11, 12, 14, 15], "subpackag": [0, 12, 14], "subplot": 7, "success": 17, "sugar": 8, "sum": [12, 13], "support": [7, 8, 12], "sure": 6, "sustain": 9, "swarm": [6, 7, 8, 10, 12, 13, 20], "swarm_optim": [10, 11], "swarm_tiled_repr": [1, 7, 8], "switch": [12, 13], "sym_stride_evalu": [10, 11], "symmetr": 10, "symmetri": 10, "sympi": 3, "syntact": [4, 8], "system": [1, 5, 18], "t": [8, 12, 13], "tadaaa": [12, 13], "tag": 8, "tail": [12, 13], "take": [4, 6, 8, 9, 10, 12, 13], "tangent": 17, "target": 8, "templat": 8, "term": 9, "test": [8, 12, 13], "test_build": [15, 18], "test_collect": [14, 15], "test_converg": [8, 15, 20], "test_cross": [15, 17], "test_definit": [15, 19], "test_funct": [15, 20], "test_geometri": [8, 14, 15], "test_joint": [14, 15], "test_length": [15, 20], "test_limit_intersect": [15, 18], "test_linkag": [8, 14, 15], "test_no_cross": [15, 17], "test_no_int": [15, 17], "test_no_intersect": [15, 18], "test_optim": [8, 14, 15], "test_po": [15, 18], "test_radius_ineq": [15, 17], "test_scor": [15, 20], "test_tang": [15, 17], "test_under_intersect": [15, 18], "testcas": [17, 18, 19, 20], "testcircl": [15, 17], "testcirclelineintersect": [15, 17], "testevalu": [15, 20], "testfix": [15, 18], "testgeneratebound": [15, 20], "testlinkag": [15, 19], "testpivot": [15, 18], "testpso": [8, 15, 20], "testrevolut": [15, 18], "testtrialsanderror": [15, 20], "testvari": [15, 20], "than": [3, 6], "thank": 8, "thei": [5, 7, 8, 9, 12, 13], "them": [4, 7, 10, 12, 13], "theoret": [12, 13], "theta": 3, "thi": [3, 4, 5, 6, 8, 9, 10, 12, 13, 17], "thing": [12, 13, 20], "think": [12, 13], "those": 9, "threaten": 9, "three": 4, "through": [9, 10], "thu": [1, 17], "tile": [7, 10], "time": [8, 9, 12, 13, 17], "tip_locu": [12, 13], "titl": 7, "togeth": [12, 13], "tol": 3, "toler": [3, 6], "toml": 8, "too": [6, 20], "tool": 5, "top": [12, 13], "toward": 9, "tox": 8, "tqdm": [6, 8], "tqdm_verbos": [1, 6, 8], "transcript": 3, "transit": 8, "translat": 9, "trial": [8, 12, 13, 20], "trials_and_error": 8, "trials_and_error_optim": 8, "trials_and_errors_optim": [1, 6, 8, 12, 13], "trials_and_errors_optimizatt": 8, "triangl": [12, 13], "trick": [12, 13], "troll": 9, "true": [5, 6, 8, 10], "try": [12, 13], "tupl": [3, 4, 5, 6, 7, 10, 12, 13], "turn": [5, 12, 13], "twice": 17, "two": [3, 4, 6, 8, 10, 12, 13, 17], "txt": 8, "type": [3, 4, 5, 6, 7, 8, 10, 20], "typo": 8, "u": [5, 9], "ugli": 8, "unabl": 1, "unaccept": 9, "unbuild": 5, "unbuildableerror": [0, 1], "under": [1, 3, 18], "understand": 4, "unit": 10, "unittest": [8, 15], "unoptim": 3, "unprofession": 9, "unreleas": 12, "unsolicit": 9, "unus": 4, "unwelcom": 9, "updat": [7, 8, 12, 13], "update_animated_plot": [1, 7], "upl": 6, "uplet": [6, 12, 13], "upper": [6, 18], "upper_bound": 6, "us": [3, 4, 5, 6, 7, 8, 9, 10], "useless": 7, "user": 8, "util": [0, 1, 8], "valid": 8, "valu": [3, 4, 5, 6, 7, 8, 10], "vari": [6, 10, 12, 13], "variabl": 8, "variat": [6, 8, 20], "variou": [6, 8, 17, 20], "vec": 3, "vector": 3, "vectori": [12, 13], "verbos": [6, 8], "veri": 6, "verifi": [12, 13], "version": [4, 6, 7, 8, 9], "via": 9, "video": 7, "view": [8, 10, 12, 13], "view_linkag": [10, 11], "view_swarm_polar": [10, 11], "view_swarm_til": [10, 11], "viewpoint": 9, "violat": 9, "violent": 6, "visibl": 9, "visual": [0, 1, 8, 10], "visualizar": [12, 13], "vizual": 8, "vulner": 8, "w": 6, "wa": [8, 9], "wai": [1, 7, 8, 9, 12, 13], "wait": [12, 13], "walk": 10, "walkthrough": 8, "want": [4, 6, 7, 12, 13, 17], "warn": 8, "wasn": 8, "we": [4, 6, 7, 8, 9, 12, 13, 17], "websit": 8, "wed": 1, "welcom": [9, 10], "well": [8, 9, 20], "were": [8, 9], "what": [9, 12, 13], "when": [1, 3, 7, 8, 9, 12, 13], "whether": 5, "which": [3, 4, 6, 9, 10, 12, 13], "whole": 4, "why": [9, 12, 13], "wiki": [9, 10], "wikipedia": 10, "windshield": [12, 13], "wiper": [12, 13], "within": 9, "without": [7, 8, 9, 10], "wolfram": 3, "wonder": [12, 13], "woodhead": 3, "work": [8, 12, 13], "workflow": 8, "would": [8, 12, 13], "wrapper": [6, 8], "write": [12, 13], "written": [9, 10], "wrongli": 8, "www": [9, 10], "x": [1, 3, 4, 6, 8, 12, 13, 18], "x0": 3, "x_max": [3, 5], "x_min": [3, 5], "y": [1, 3, 4, 8, 12, 13, 18], "y0": 3, "y_max": [3, 5], "y_min": [3, 5], "yet": 8, "yml": [8, 12, 13], "you": [4, 6, 7, 8, 10, 12, 13], "your": [1, 8, 12, 13], "yourself": [12, 13], "zip": [12, 13]}, "titles": ["pylinkage", "pylinkage package", "pylinkage.collections package", "pylinkage.geometry package", "pylinkage.joints package", "pylinkage.linkage package", "pylinkage.optimization package", "pylinkage.visualizer package", "Changelog", "Contributor Covenant Code of Conduct", "examples package", "examples", "Welcome to pylinkage\u2019s documentation!", "Pylinkage", "tests", "tests package", "tests.collections package", "tests.geometry package", "tests.joints package", "tests.linkage package", "tests.optimization package"], "titleterms": {"": 12, "0": 8, "05": 8, "06": 8, "07": 8, "1": [8, 9], "11": 8, "12": 8, "14": 8, "16": 8, "2": [8, 9], "2021": 8, "2023": 8, "21": 8, "22": 8, "23": 8, "3": [8, 9], "4": [8, 9], "5": 8, "ad": 8, "agent": 2, "analysi": 5, "anim": 7, "argument": 17, "attribut": 9, "ban": 9, "chang": 8, "changelog": 8, "code": [9, 12, 13], "collect": [2, 16], "complet": [12, 13], "conduct": 9, "content": [1, 2, 3, 4, 5, 6, 7, 10, 15, 16, 17, 18, 19, 20], "contribut": [12, 13], "contributor": 9, "core": [3, 7], "correct": 9, "coven": 9, "crank": 4, "definit": [12, 13], "demo": [12, 13], "deprec": 8, "document": 12, "enforc": 9, "environ": [12, 13], "exampl": [10, 11, 12, 13], "except": 1, "fix": [4, 8], "fourbar_linkag": 10, "geometri": [3, 17], "grid_search": 6, "guidelin": 9, "indic": 12, "instal": [12, 13], "introduct": 12, "inverted_stroke_engin": 10, "joint": [4, 12, 13, 18], "linear": 4, "link": 12, "linkag": [5, 12, 13, 19], "modul": [1, 2, 3, 4, 5, 6, 7, 10, 15, 16, 17, 18, 19, 20], "mutable_ag": 2, "optim": [6, 12, 13, 20], "our": 9, "packag": [1, 2, 3, 4, 5, 6, 7, 10, 12, 15, 16, 17, 18, 19, 20], "paramet": 3, "particle_swarm": 6, "perman": 9, "pip": [12, 13], "pledg": 9, "pylinkag": [0, 1, 2, 3, 4, 5, 6, 7, 12, 13], "quick": 12, "remov": 8, "requir": [12, 13], "respons": 9, "return": [3, 17], "revolut": 4, "scope": 9, "secant": 3, "set": [12, 13], "short": [12, 13], "simul": [12, 13], "standard": 9, "static": [4, 7], "strider": 10, "submodul": [1, 2, 3, 4, 5, 6, 7, 10, 16, 17, 18, 19, 20], "subpackag": [1, 15], "tabl": 12, "temporari": 9, "test": [14, 15, 16, 17, 18, 19, 20], "test_collect": 16, "test_geometri": 17, "test_joint": 18, "test_linkag": 19, "test_optim": 20, "unreleas": 8, "up": [12, 13], "us": [12, 13], "util": 6, "virtual": [12, 13], "visual": [7, 12, 13], "warn": 9, "welcom": 12}}) \ No newline at end of file +Search.setIndex({"alltitles": {"1. Correction": [[9, "correction"]], "2. Warning": [[9, "warning"]], "3. Temporary Ban": [[9, "temporary-ban"]], "4. Permanent Ban": [[9, "permanent-ban"]], "Added": [[8, "added"]], "Added in 0.0.1": [[8, "added-in-0-0-1"]], "Added in 0.2.0": [[8, "added-in-0-2-0"]], "Added in 0.2.1": [[8, "added-in-0-2-1"]], "Added in 0.2.2": [[8, "added-in-0-2-2"]], "Added in 0.3.0": [[8, "added-in-0-3-0"]], "Added in 0.4.0": [[8, "added-in-0-4-0"]], "Added in 0.4.1": [[8, "added-in-0-4-1"]], "Added in 0.5.0": [[8, "added-in-0-5-0"]], "Added in 0.5.1": [[8, "added-in-0-5-1"]], "Added in 0.5.2": [[8, "added-in-0-5-2"]], "Added in 0.5.3": [[8, "added-in-0-5-3"]], "Arguments": [[17, "arguments"]], "Attribution": [[9, "attribution"]], "Changed": [[8, "changed"]], "Changed in 0.2.0": [[8, "changed-in-0-2-0"]], "Changed in 0.2.1": [[8, "changed-in-0-2-1"]], "Changed in 0.3.0": [[8, "changed-in-0-3-0"]], "Changed in 0.4.0": [[8, "changed-in-0-4-0"]], "Changed in 0.4.1": [[8, "changed-in-0-4-1"]], "Changed in 0.5.0": [[8, "changed-in-0-5-0"]], "Changed in 0.5.1": [[8, "changed-in-0-5-1"]], "Changed in 0.5.2": [[8, "changed-in-0-5-2"]], "Changed in 0.5.3": [[8, "changed-in-0-5-3"]], "Changelog": [[8, null]], "Code with PyLinkage": [[12, "code-with-pylinkage"], [13, "code-with-pylinkage"]], "Complete example": [[12, "complete-example"], [13, "complete-example"]], "Contributing": [[12, "contributing"], [13, "contributing"]], "Contributor Covenant Code of Conduct": [[9, null]], "Deprecated": [[8, "deprecated"]], "Deprecated in 0.5.3": [[8, "deprecated-in-0-5-3"]], "Enforcement": [[9, "enforcement"]], "Enforcement Guidelines": [[9, "enforcement-guidelines"]], "Enforcement Responsibilities": [[9, "enforcement-responsibilities"]], "Fixed": [[8, "fixed"]], "Fixed in 0.2.1": [[8, "fixed-in-0-2-1"]], "Fixed in 0.2.2": [[8, "fixed-in-0-2-2"]], "Fixed in 0.3.0": [[8, "fixed-in-0-3-0"]], "Fixed in 0.4.0": [[8, "fixed-in-0-4-0"]], "Fixed in 0.5.0": [[8, "fixed-in-0-5-0"]], "Fixed in 0.5.3": [[8, "fixed-in-0-5-3"]], "Indices and tables": [[12, "indices-and-tables"]], "Installation": [[12, "installation"], [13, "installation"]], "Introduction": [[12, null]], "Joints definition": [[12, "joints-definition"], [13, "joints-definition"]], "Linkage definition and simulation": [[12, "linkage-definition-and-simulation"], [13, "linkage-definition-and-simulation"]], "Module contents": [[1, "module-pylinkage"], [2, "module-pylinkage.collections"], [3, "module-pylinkage.geometry"], [4, "module-pylinkage.joints"], [5, "module-pylinkage.linkage"], [6, "module-pylinkage.optimization"], [7, "module-pylinkage.visualizer"], [10, "module-examples"], [15, "module-tests"], [16, "module-tests.collections"], [17, "module-tests.geometry"], [18, "module-tests.joints"], [19, "module-tests.linkage"], [20, "module-tests.optimization"]], "Optimization": [[12, "optimization"], [13, "optimization"]], "Our Pledge": [[9, "our-pledge"]], "Our Standards": [[9, "our-standards"]], "Packages": [[12, null]], "Parameters": [[3, "parameters"]], "Pylinkage": [[12, "pylinkage"], [13, null]], "Quick Links": [[12, null]], "Removed": [[8, "removed"]], "Removed in 0.4.0": [[8, "removed-in-0-4-0"]], "Requirements": [[12, "requirements"], [13, "requirements"]], "Returns": [[3, "returns"], [17, "returns"]], "Scope": [[9, "scope"]], "Setting up Virtual Environment": [[12, "setting-up-virtual-environment"], [13, "setting-up-virtual-environment"]], "Short demo": [[12, "short-demo"], [13, "short-demo"]], "Submodules": [[1, "submodules"], [2, "submodules"], [3, "submodules"], [4, "submodules"], [5, "submodules"], [6, "submodules"], [7, "submodules"], [10, "submodules"], [16, "submodules"], [17, "submodules"], [18, "submodules"], [19, "submodules"], [20, "submodules"]], "Subpackages": [[1, "subpackages"], [15, "subpackages"]], "Using pip": [[12, "using-pip"], [13, "using-pip"]], "Visualization": [[12, "visualization"], [13, "visualization"]], "Welcome to pylinkage\u2019s documentation!": [[12, null]], "[0.0.1] - 2021-06-12": [[8, "id11"]], "[0.2.0] - 2021-06-14": [[8, "id10"]], "[0.2.1] - 2021-06-16": [[8, "id9"]], "[0.2.2] - 2021-06-22": [[8, "id8"]], "[0.3.0] - 2021-07-05": [[8, "id7"]], "[0.4.0] - 2021-07-06": [[8, "id6"]], "[0.4.1] - 2021-07-11": [[8, "id5"]], "[0.5.0] - 2021-07-12": [[8, "id4"]], "[0.5.1] - 2021-07-14": [[8, "id3"]], "[0.5.2] - 2021-07-21": [[8, "id2"]], "[0.5.3] - 2023-06-23": [[8, "id1"]], "[Unreleased]": [[8, "unreleased"]], "examples": [[11, null]], "examples package": [[10, null]], "examples.fourbar_linkage module": [[10, "module-examples.fourbar_linkage"]], "examples.inverted_stroke_engine module": [[10, "module-examples.inverted_stroke_engine"]], "examples.strider module": [[10, "module-examples.strider"]], "pylinkage": [[0, null]], "pylinkage package": [[1, null]], "pylinkage.collections package": [[2, null]], "pylinkage.collections.agent module": [[2, "module-pylinkage.collections.agent"]], "pylinkage.collections.mutable_agent module": [[2, "module-pylinkage.collections.mutable_agent"]], "pylinkage.exceptions module": [[1, "module-pylinkage.exceptions"]], "pylinkage.geometry package": [[3, null]], "pylinkage.geometry.core module": [[3, "module-pylinkage.geometry.core"]], "pylinkage.geometry.secants module": [[3, "module-pylinkage.geometry.secants"]], "pylinkage.joints package": [[4, null]], "pylinkage.joints.crank module": [[4, "module-pylinkage.joints.crank"]], "pylinkage.joints.fixed module": [[4, "module-pylinkage.joints.fixed"]], "pylinkage.joints.joint module": [[4, "module-pylinkage.joints.joint"]], "pylinkage.joints.linear module": [[4, "module-pylinkage.joints.linear"]], "pylinkage.joints.revolute module": [[4, "module-pylinkage.joints.revolute"]], "pylinkage.joints.static module": [[4, "module-pylinkage.joints.static"]], "pylinkage.linkage package": [[5, null]], "pylinkage.linkage.analysis module": [[5, "module-pylinkage.linkage.analysis"]], "pylinkage.linkage.linkage module": [[5, "module-pylinkage.linkage.linkage"]], "pylinkage.optimization package": [[6, null]], "pylinkage.optimization.grid_search module": [[6, "module-pylinkage.optimization.grid_search"]], "pylinkage.optimization.particle_swarm module": [[6, "module-pylinkage.optimization.particle_swarm"]], "pylinkage.optimization.utils module": [[6, "module-pylinkage.optimization.utils"]], "pylinkage.visualizer package": [[7, null]], "pylinkage.visualizer.animated module": [[7, "module-pylinkage.visualizer.animated"]], "pylinkage.visualizer.core module": [[7, "module-pylinkage.visualizer.core"]], "pylinkage.visualizer.static module": [[7, "module-pylinkage.visualizer.static"]], "tests": [[14, null]], "tests package": [[15, null]], "tests.collections package": [[16, null]], "tests.collections.test_collections module": [[16, "module-tests.collections.test_collections"]], "tests.geometry package": [[17, null]], "tests.geometry.test_geometry module": [[17, "module-tests.geometry.test_geometry"]], "tests.joints package": [[18, null]], "tests.joints.test_joints module": [[18, "module-tests.joints.test_joints"]], "tests.linkage package": [[19, null]], "tests.linkage.test_linkage module": [[19, "module-tests.linkage.test_linkage"]], "tests.optimization package": [[20, null]], "tests.optimization.test_optimizer module": [[20, "module-tests.optimization.test_optimizer"]]}, "docnames": ["api/modules", "api/pylinkage", "api/pylinkage.collections", "api/pylinkage.geometry", "api/pylinkage.joints", "api/pylinkage.linkage", "api/pylinkage.optimization", "api/pylinkage.visualizer", "changeloglink", "code_of_conductlink", "examples/examples", "examples/modules", "index", "readmelink", "tests/modules", "tests/tests", "tests/tests.collections", "tests/tests.geometry", "tests/tests.joints", "tests/tests.linkage", "tests/tests.optimization"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2}, "filenames": ["api/modules.rst", "api/pylinkage.rst", "api/pylinkage.collections.rst", "api/pylinkage.geometry.rst", "api/pylinkage.joints.rst", "api/pylinkage.linkage.rst", "api/pylinkage.optimization.rst", "api/pylinkage.visualizer.rst", "changeloglink.rst", "code_of_conductlink.rst", "examples/examples.rst", "examples/modules.rst", "index.rst", "readmelink.rst", "tests/modules.rst", "tests/tests.rst", "tests/tests.collections.rst", "tests/tests.geometry.rst", "tests/tests.joints.rst", "tests/tests.linkage.rst", "tests/tests.optimization.rst"], "indexentries": {"angle (pylinkage.joints.crank.crank attribute)": [[4, "pylinkage.joints.crank.Crank.angle", false]], "angle (pylinkage.joints.fixed.fixed attribute)": [[4, "pylinkage.joints.fixed.Fixed.angle", false]], "bounding_box() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.bounding_box", false]], "bounding_box() (in module pylinkage.linkage.analysis)": [[5, "pylinkage.linkage.analysis.bounding_box", false]], "circle() (pylinkage.joints.revolute.revolute method)": [[4, "pylinkage.joints.revolute.Revolute.circle", false]], "circle_intersect() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.circle_intersect", false]], "circle_line_from_points_intersection() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.circle_line_from_points_intersection", false]], "circle_line_intersection() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.circle_line_intersection", false]], "circle_line_intersection_data() (in module tests.geometry.test_geometry)": [[17, "tests.geometry.test_geometry.circle_line_intersection_data", false]], "complete_strider() (in module examples.strider)": [[10, "examples.strider.complete_strider", false]], "constraints (tests.optimization.test_optimizer.testevaluation attribute)": [[20, "tests.optimization.test_optimizer.TestEvaluation.constraints", false]], "constraints (tests.optimization.test_optimizer.testpso attribute)": [[20, "tests.optimization.test_optimizer.TestPSO.constraints", false]], "coord() (pylinkage.joints.joint.joint method)": [[4, "pylinkage.joints.joint.Joint.coord", false]], "crank (class in pylinkage.joints.crank)": [[4, "pylinkage.joints.crank.Crank", false]], "create_stroke_engine_linkage() (in module examples.inverted_stroke_engine)": [[10, "examples.inverted_stroke_engine.create_stroke_engine_linkage", false]], "cyl_to_cart() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.cyl_to_cart", false]], "define_linkage() (in module examples.fourbar_linkage)": [[10, "examples.fourbar_linkage.define_linkage", false]], "dist_builtin() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.dist_builtin", false]], "examples": [[10, "module-examples", false]], "examples.fourbar_linkage": [[10, "module-examples.fourbar_linkage", false]], "examples.inverted_stroke_engine": [[10, "module-examples.inverted_stroke_engine", false]], "examples.strider": [[10, "module-examples.strider", false]], "fast_variator() (in module pylinkage.optimization.grid_search)": [[6, "pylinkage.optimization.grid_search.fast_variator", false]], "fixed (class in pylinkage.joints.fixed)": [[4, "pylinkage.joints.fixed.Fixed", false]], "generate_bounds() (in module pylinkage.optimization.utils)": [[6, "pylinkage.optimization.utils.generate_bounds", false]], "get_constraints() (pylinkage.joints.crank.crank method)": [[4, "pylinkage.joints.crank.Crank.get_constraints", false]], "get_constraints() (pylinkage.joints.fixed.fixed method)": [[4, "pylinkage.joints.fixed.Fixed.get_constraints", false]], "get_constraints() (pylinkage.joints.joint.joint method)": [[4, "pylinkage.joints.joint.Joint.get_constraints", false]], "get_constraints() (pylinkage.joints.joint.static method)": [[4, "pylinkage.joints.joint.Static.get_constraints", false]], "get_constraints() (pylinkage.joints.linear.linear method)": [[4, "pylinkage.joints.linear.Linear.get_constraints", false]], "get_constraints() (pylinkage.joints.revolute.revolute method)": [[4, "pylinkage.joints.revolute.Revolute.get_constraints", false]], "get_constraints() (pylinkage.joints.static.static method)": [[4, "pylinkage.joints.static.Static.get_constraints", false]], "get_coords() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.get_coords", false]], "get_nearest_point() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.get_nearest_point", false]], "get_num_constraints() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.get_num_constraints", false]], "get_rotation_period() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.get_rotation_period", false]], "history_saver() (in module examples.strider)": [[10, "examples.strider.history_saver", false]], "hyperstaticity() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.hyperstaticity", false]], "hypostaticerror": [[1, "pylinkage.exceptions.HypostaticError", false]], "intersection() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.intersection", false]], "joint (class in pylinkage.joints.joint)": [[4, "pylinkage.joints.joint.Joint", false]], "joint0 (pylinkage.joints.joint.joint attribute)": [[4, "pylinkage.joints.joint.Joint.joint0", false]], "joint1 (pylinkage.joints.joint.joint attribute)": [[4, "pylinkage.joints.joint.Joint.joint1", false]], "joint2 (pylinkage.joints.linear.linear attribute)": [[4, "pylinkage.joints.linear.Linear.joint2", false]], "joint_syntax_parser() (in module pylinkage.joints.joint)": [[4, "pylinkage.joints.joint.joint_syntax_parser", false]], "joints (pylinkage.linkage.linkage.linkage attribute)": [[5, "pylinkage.linkage.linkage.Linkage.joints", false]], "kinematic_default_test() (in module pylinkage.linkage.analysis)": [[5, "pylinkage.linkage.analysis.kinematic_default_test", false]], "kinematic_maximization() (in module pylinkage.optimization.utils)": [[6, "pylinkage.optimization.utils.kinematic_maximization", false]], "kinematic_minimization() (in module pylinkage.optimization.utils)": [[6, "pylinkage.optimization.utils.kinematic_minimization", false]], "lap_per_second (in module examples.strider)": [[10, "examples.strider.LAP_PER_SECOND", false]], "line_from_points() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.line_from_points", false]], "linear (class in pylinkage.joints.linear)": [[4, "pylinkage.joints.linear.Linear", false]], "linkage (class in pylinkage.linkage.linkage)": [[5, "pylinkage.linkage.linkage.Linkage", false]], "linkage (tests.optimization.test_optimizer.testevaluation attribute)": [[20, "tests.optimization.test_optimizer.TestEvaluation.linkage", false]], "linkage (tests.optimization.test_optimizer.testpso attribute)": [[20, "tests.optimization.test_optimizer.TestPSO.linkage", false]], "linkage (tests.optimization.test_optimizer.testtrialsanderrors attribute)": [[20, "tests.optimization.test_optimizer.TestTrialsAndErrors.linkage", false]], "main() (in module examples.fourbar_linkage)": [[10, "examples.fourbar_linkage.main", false]], "main() (in module examples.strider)": [[10, "examples.strider.main", false]], "module": [[1, "module-pylinkage", false], [1, "module-pylinkage.exceptions", false], [2, "module-pylinkage.collections", false], [2, "module-pylinkage.collections.agent", false], [2, "module-pylinkage.collections.mutable_agent", false], [3, "module-pylinkage.geometry", false], [3, "module-pylinkage.geometry.core", false], [3, "module-pylinkage.geometry.secants", false], [4, "module-pylinkage.joints", false], [4, "module-pylinkage.joints.crank", false], [4, "module-pylinkage.joints.fixed", false], [4, "module-pylinkage.joints.joint", false], [4, "module-pylinkage.joints.linear", false], [4, "module-pylinkage.joints.revolute", false], [4, "module-pylinkage.joints.static", false], [5, "module-pylinkage.linkage", false], [5, "module-pylinkage.linkage.analysis", false], [5, "module-pylinkage.linkage.linkage", false], [6, "module-pylinkage.optimization", false], [6, "module-pylinkage.optimization.grid_search", false], [6, "module-pylinkage.optimization.particle_swarm", false], [6, "module-pylinkage.optimization.utils", false], [7, "module-pylinkage.visualizer", false], [7, "module-pylinkage.visualizer.animated", false], [7, "module-pylinkage.visualizer.core", false], [7, "module-pylinkage.visualizer.static", false], [10, "module-examples", false], [10, "module-examples.fourbar_linkage", false], [10, "module-examples.inverted_stroke_engine", false], [10, "module-examples.strider", false], [15, "module-tests", false], [16, "module-tests.collections", false], [16, "module-tests.collections.test_collections", false], [17, "module-tests.geometry", false], [17, "module-tests.geometry.test_geometry", false], [18, "module-tests.joints", false], [18, "module-tests.joints.test_joints", false], [19, "module-tests.linkage", false], [19, "module-tests.linkage.test_linkage", false], [20, "module-tests.optimization", false], [20, "module-tests.optimization.test_optimizer", false]], "movement_bounding_box() (in module pylinkage.linkage.analysis)": [[5, "pylinkage.linkage.analysis.movement_bounding_box", false]], "name (pylinkage.joints.joint.joint attribute)": [[4, "pylinkage.joints.joint.Joint.name", false]], "name (pylinkage.linkage.linkage.linkage attribute)": [[5, "pylinkage.linkage.linkage.Linkage.name", false]], "norm() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.norm", false]], "notcompletelydefinederror": [[1, "pylinkage.exceptions.NotCompletelyDefinedError", false]], "param2dimensions() (in module examples.strider)": [[10, "examples.strider.param2dimensions", false]], "particle_swarm_optimization() (in module pylinkage.optimization.particle_swarm)": [[6, "pylinkage.optimization.particle_swarm.particle_swarm_optimization", false]], "pivot (class in pylinkage.joints.revolute)": [[4, "pylinkage.joints.revolute.Pivot", false]], "pivot1 (tests.joints.test_joints.testfixed attribute)": [[18, "tests.joints.test_joints.TestFixed.pivot1", false]], "pivot1 (tests.joints.test_joints.testpivot attribute)": [[18, "tests.joints.test_joints.TestPivot.pivot1", false]], "pivot1 (tests.joints.test_joints.testrevolute attribute)": [[18, "tests.joints.test_joints.TestRevolute.pivot1", false]], "plot_kinematic_linkage() (in module pylinkage.visualizer.animated)": [[7, "pylinkage.visualizer.animated.plot_kinematic_linkage", false]], "plot_static_linkage() (in module pylinkage.visualizer.static)": [[7, "pylinkage.visualizer.static.plot_static_linkage", false]], "prepare_linkage() (in module tests.optimization.test_optimizer)": [[20, "tests.optimization.test_optimizer.prepare_linkage", false]], "pylinkage": [[1, "module-pylinkage", false]], "pylinkage.collections": [[2, "module-pylinkage.collections", false]], "pylinkage.collections.agent": [[2, "module-pylinkage.collections.agent", false]], "pylinkage.collections.mutable_agent": [[2, "module-pylinkage.collections.mutable_agent", false]], "pylinkage.exceptions": [[1, "module-pylinkage.exceptions", false]], "pylinkage.geometry": [[3, "module-pylinkage.geometry", false]], "pylinkage.geometry.core": [[3, "module-pylinkage.geometry.core", false]], "pylinkage.geometry.secants": [[3, "module-pylinkage.geometry.secants", false]], "pylinkage.joints": [[4, "module-pylinkage.joints", false]], "pylinkage.joints.crank": [[4, "module-pylinkage.joints.crank", false]], "pylinkage.joints.fixed": [[4, "module-pylinkage.joints.fixed", false]], "pylinkage.joints.joint": [[4, "module-pylinkage.joints.joint", false]], "pylinkage.joints.linear": [[4, "module-pylinkage.joints.linear", false]], "pylinkage.joints.revolute": [[4, "module-pylinkage.joints.revolute", false]], "pylinkage.joints.static": [[4, "module-pylinkage.joints.static", false]], "pylinkage.linkage": [[5, "module-pylinkage.linkage", false]], "pylinkage.linkage.analysis": [[5, "module-pylinkage.linkage.analysis", false]], "pylinkage.linkage.linkage": [[5, "module-pylinkage.linkage.linkage", false]], "pylinkage.optimization": [[6, "module-pylinkage.optimization", false]], "pylinkage.optimization.grid_search": [[6, "module-pylinkage.optimization.grid_search", false]], "pylinkage.optimization.particle_swarm": [[6, "module-pylinkage.optimization.particle_swarm", false]], "pylinkage.optimization.utils": [[6, "module-pylinkage.optimization.utils", false]], "pylinkage.visualizer": [[7, "module-pylinkage.visualizer", false]], "pylinkage.visualizer.animated": [[7, "module-pylinkage.visualizer.animated", false]], "pylinkage.visualizer.core": [[7, "module-pylinkage.visualizer.core", false]], "pylinkage.visualizer.static": [[7, "module-pylinkage.visualizer.static", false]], "r (pylinkage.joints.crank.crank attribute)": [[4, "pylinkage.joints.crank.Crank.r", false]], "r (pylinkage.joints.fixed.fixed attribute)": [[4, "pylinkage.joints.fixed.Fixed.r", false]], "r0 (pylinkage.joints.revolute.pivot attribute)": [[4, "pylinkage.joints.revolute.Pivot.r0", false]], "r0 (pylinkage.joints.revolute.revolute attribute)": [[4, "pylinkage.joints.revolute.Revolute.r0", false]], "r1 (pylinkage.joints.revolute.pivot attribute)": [[4, "pylinkage.joints.revolute.Pivot.r1", false]], "r1 (pylinkage.joints.revolute.revolute attribute)": [[4, "pylinkage.joints.revolute.Revolute.r1", false]], "rebuild() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.rebuild", false]], "reload() (pylinkage.joints.crank.crank method)": [[4, "pylinkage.joints.crank.Crank.reload", false]], "reload() (pylinkage.joints.fixed.fixed method)": [[4, "pylinkage.joints.fixed.Fixed.reload", false]], "reload() (pylinkage.joints.joint.static method)": [[4, "pylinkage.joints.joint.Static.reload", false]], "reload() (pylinkage.joints.linear.linear method)": [[4, "pylinkage.joints.linear.Linear.reload", false]], "reload() (pylinkage.joints.revolute.revolute method)": [[4, "pylinkage.joints.revolute.Revolute.reload", false]], "reload() (pylinkage.joints.static.static method)": [[4, "pylinkage.joints.static.Static.reload", false]], "revolute (class in pylinkage.joints.revolute)": [[4, "pylinkage.joints.revolute.Revolute", false]], "revolute_radius (pylinkage.joints.linear.linear attribute)": [[4, "pylinkage.joints.linear.Linear.revolute_radius", false]], "secant_circles_intersections() (in module pylinkage.geometry.secants)": [[3, "pylinkage.geometry.secants.secant_circles_intersections", false]], "sequential_variator() (in module pylinkage.optimization.grid_search)": [[6, "pylinkage.optimization.grid_search.sequential_variator", false]], "set_anchor0() (pylinkage.joints.crank.crank method)": [[4, "pylinkage.joints.crank.Crank.set_anchor0", false]], "set_anchor0() (pylinkage.joints.fixed.fixed method)": [[4, "pylinkage.joints.fixed.Fixed.set_anchor0", false]], "set_anchor0() (pylinkage.joints.joint.static method)": [[4, "pylinkage.joints.joint.Static.set_anchor0", false]], "set_anchor0() (pylinkage.joints.revolute.revolute method)": [[4, "pylinkage.joints.revolute.Revolute.set_anchor0", false]], "set_anchor0() (pylinkage.joints.static.static method)": [[4, "pylinkage.joints.static.Static.set_anchor0", false]], "set_anchor1() (pylinkage.joints.fixed.fixed method)": [[4, "pylinkage.joints.fixed.Fixed.set_anchor1", false]], "set_anchor1() (pylinkage.joints.joint.static method)": [[4, "pylinkage.joints.joint.Static.set_anchor1", false]], "set_anchor1() (pylinkage.joints.revolute.revolute method)": [[4, "pylinkage.joints.revolute.Revolute.set_anchor1", false]], "set_anchor1() (pylinkage.joints.static.static method)": [[4, "pylinkage.joints.static.Static.set_anchor1", false]], "set_completely() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.set_completely", false]], "set_constraints() (pylinkage.joints.crank.crank method)": [[4, "pylinkage.joints.crank.Crank.set_constraints", false]], "set_constraints() (pylinkage.joints.fixed.fixed method)": [[4, "pylinkage.joints.fixed.Fixed.set_constraints", false]], "set_constraints() (pylinkage.joints.joint.joint method)": [[4, "pylinkage.joints.joint.Joint.set_constraints", false]], "set_constraints() (pylinkage.joints.joint.static method)": [[4, "pylinkage.joints.joint.Static.set_constraints", false]], "set_constraints() (pylinkage.joints.linear.linear method)": [[4, "pylinkage.joints.linear.Linear.set_constraints", false]], "set_constraints() (pylinkage.joints.revolute.revolute method)": [[4, "pylinkage.joints.revolute.Revolute.set_constraints", false]], "set_constraints() (pylinkage.joints.static.static method)": [[4, "pylinkage.joints.static.Static.set_constraints", false]], "set_coord() (pylinkage.joints.joint.joint method)": [[4, "pylinkage.joints.joint.Joint.set_coord", false]], "set_coords() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.set_coords", false]], "set_num_constraints() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.set_num_constraints", false]], "show_linkage() (in module pylinkage.visualizer.animated)": [[7, "pylinkage.visualizer.animated.show_linkage", false]], "show_optimized() (in module examples.strider)": [[10, "examples.strider.show_optimized", false]], "sqr_dist() (in module pylinkage.geometry.core)": [[3, "pylinkage.geometry.core.sqr_dist", false]], "static (class in pylinkage.joints.joint)": [[4, "pylinkage.joints.joint.Static", false]], "static (class in pylinkage.joints.static)": [[4, "pylinkage.joints.static.Static", false]], "step() (pylinkage.linkage.linkage.linkage method)": [[5, "pylinkage.linkage.linkage.Linkage.step", false]], "swarm_optimizer() (in module examples.strider)": [[10, "examples.strider.swarm_optimizer", false]], "swarm_tiled_repr() (in module pylinkage.visualizer.animated)": [[7, "pylinkage.visualizer.animated.swarm_tiled_repr", false]], "sym_stride_evaluator() (in module examples.strider)": [[10, "examples.strider.sym_stride_evaluator", false]], "test_buildable() (tests.joints.test_joints.testpivot method)": [[18, "tests.joints.test_joints.TestPivot.test_buildable", false]], "test_buildable() (tests.joints.test_joints.testrevolute method)": [[18, "tests.joints.test_joints.TestRevolute.test_buildable", false]], "test_convergence() (tests.optimization.test_optimizer.testpso method)": [[20, "tests.optimization.test_optimizer.TestPSO.test_convergence", false]], "test_convergence() (tests.optimization.test_optimizer.testtrialsanderrors method)": [[20, "tests.optimization.test_optimizer.TestTrialsAndErrors.test_convergence", false]], "test_crossing() (tests.geometry.test_geometry.testcirclelineintersection method)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection.test_crossing", false]], "test_definition() (tests.linkage.test_linkage.testlinkage method)": [[19, "tests.linkage.test_linkage.TestLinkage.test_definition", false]], "test_function() (tests.optimization.test_optimizer.testgeneratebounds method)": [[20, "tests.optimization.test_optimizer.TestGenerateBounds.test_function", false]], "test_length() (tests.optimization.test_optimizer.testvariator method)": [[20, "tests.optimization.test_optimizer.TestVariator.test_length", false]], "test_limit_intersect() (tests.joints.test_joints.testpivot method)": [[18, "tests.joints.test_joints.TestPivot.test_limit_intersect", false]], "test_limit_intersect() (tests.joints.test_joints.testrevolute method)": [[18, "tests.joints.test_joints.TestRevolute.test_limit_intersect", false]], "test_no_crossing() (tests.geometry.test_geometry.testcirclelineintersection method)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection.test_no_crossing", false]], "test_no_inter() (tests.geometry.test_geometry.testcircles method)": [[17, "tests.geometry.test_geometry.TestCircles.test_no_inter", false]], "test_no_intersect() (tests.joints.test_joints.testpivot method)": [[18, "tests.joints.test_joints.TestPivot.test_no_intersect", false]], "test_no_intersect() (tests.joints.test_joints.testrevolute method)": [[18, "tests.joints.test_joints.TestRevolute.test_no_intersect", false]], "test_pos() (tests.joints.test_joints.testfixed method)": [[18, "tests.joints.test_joints.TestFixed.test_pos", false]], "test_radius_ineq() (tests.geometry.test_geometry.testcircles method)": [[17, "tests.geometry.test_geometry.TestCircles.test_radius_ineq", false]], "test_score() (tests.optimization.test_optimizer.testevaluation method)": [[20, "tests.optimization.test_optimizer.TestEvaluation.test_score", false]], "test_tangent() (tests.geometry.test_geometry.testcirclelineintersection method)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection.test_tangent", false]], "test_under_intersect() (tests.joints.test_joints.testpivot method)": [[18, "tests.joints.test_joints.TestPivot.test_under_intersect", false]], "test_under_intersect() (tests.joints.test_joints.testrevolute method)": [[18, "tests.joints.test_joints.TestRevolute.test_under_intersect", false]], "testcirclelineintersection (class in tests.geometry.test_geometry)": [[17, "tests.geometry.test_geometry.TestCircleLineIntersection", false]], "testcircles (class in tests.geometry.test_geometry)": [[17, "tests.geometry.test_geometry.TestCircles", false]], "testevaluation (class in tests.optimization.test_optimizer)": [[20, "tests.optimization.test_optimizer.TestEvaluation", false]], "testfixed (class in tests.joints.test_joints)": [[18, "tests.joints.test_joints.TestFixed", false]], "testgeneratebounds (class in tests.optimization.test_optimizer)": [[20, "tests.optimization.test_optimizer.TestGenerateBounds", false]], "testlinkage (class in tests.linkage.test_linkage)": [[19, "tests.linkage.test_linkage.TestLinkage", false]], "testpivot (class in tests.joints.test_joints)": [[18, "tests.joints.test_joints.TestPivot", false]], "testpso (class in tests.optimization.test_optimizer)": [[20, "tests.optimization.test_optimizer.TestPSO", false]], "testrevolute (class in tests.joints.test_joints)": [[18, "tests.joints.test_joints.TestRevolute", false]], "tests": [[15, "module-tests", false]], "tests.collections": [[16, "module-tests.collections", false]], "tests.collections.test_collections": [[16, "module-tests.collections.test_collections", false]], "tests.geometry": [[17, "module-tests.geometry", false]], "tests.geometry.test_geometry": [[17, "module-tests.geometry.test_geometry", false]], "tests.joints": [[18, "module-tests.joints", false]], "tests.joints.test_joints": [[18, "module-tests.joints.test_joints", false]], "tests.linkage": [[19, "module-tests.linkage", false]], "tests.linkage.test_linkage": [[19, "module-tests.linkage.test_linkage", false]], "tests.optimization": [[20, "module-tests.optimization", false]], "tests.optimization.test_optimizer": [[20, "module-tests.optimization.test_optimizer", false]], "testtrialsanderrors (class in tests.optimization.test_optimizer)": [[20, "tests.optimization.test_optimizer.TestTrialsAndErrors", false]], "testvariator (class in tests.optimization.test_optimizer)": [[20, "tests.optimization.test_optimizer.TestVariator", false]], "tqdm_verbosity() (in module pylinkage.optimization.grid_search)": [[6, "pylinkage.optimization.grid_search.tqdm_verbosity", false]], "trials_and_errors_optimization() (in module pylinkage.optimization.grid_search)": [[6, "pylinkage.optimization.grid_search.trials_and_errors_optimization", false]], "unbuildableerror": [[1, "pylinkage.exceptions.UnbuildableError", false]], "update_animated_plot() (in module pylinkage.visualizer.animated)": [[7, "pylinkage.visualizer.animated.update_animated_plot", false]], "view_linkage() (in module examples.inverted_stroke_engine)": [[10, "examples.inverted_stroke_engine.view_linkage", false]], "view_swarm_polar() (in module examples.strider)": [[10, "examples.strider.view_swarm_polar", false]], "view_swarm_tiled() (in module examples.strider)": [[10, "examples.strider.view_swarm_tiled", false]], "x (pylinkage.joints.joint.joint attribute)": [[4, "pylinkage.joints.joint.Joint.x", false]], "y (pylinkage.joints.joint.joint attribute)": [[4, "pylinkage.joints.joint.Joint.y", false]]}, "objects": {"": [[10, 0, 0, "-", "examples"], [1, 0, 0, "-", "pylinkage"], [15, 0, 0, "-", "tests"]], "examples": [[10, 0, 0, "-", "fourbar_linkage"], [10, 0, 0, "-", "inverted_stroke_engine"], [10, 0, 0, "-", "strider"]], "examples.fourbar_linkage": [[10, 1, 1, "", "define_linkage"], [10, 1, 1, "", "main"]], "examples.inverted_stroke_engine": [[10, 1, 1, "", "create_stroke_engine_linkage"], [10, 1, 1, "", "view_linkage"]], "examples.strider": [[10, 2, 1, "", "LAP_PER_SECOND"], [10, 1, 1, "", "complete_strider"], [10, 1, 1, "", "history_saver"], [10, 1, 1, "", "main"], [10, 1, 1, "", "param2dimensions"], [10, 1, 1, "", "show_optimized"], [10, 1, 1, "", "swarm_optimizer"], [10, 1, 1, "", "sym_stride_evaluator"], [10, 1, 1, "", "view_swarm_polar"], [10, 1, 1, "", "view_swarm_tiled"]], "pylinkage": [[2, 0, 0, "-", "collections"], [1, 0, 0, "-", "exceptions"], [3, 0, 0, "-", "geometry"], [4, 0, 0, "-", "joints"], [5, 0, 0, "-", "linkage"], [6, 0, 0, "-", "optimization"], [7, 0, 0, "-", "visualizer"]], "pylinkage.collections": [[2, 0, 0, "-", "agent"], [2, 0, 0, "-", "mutable_agent"]], "pylinkage.exceptions": [[1, 3, 1, "", "HypostaticError"], [1, 3, 1, "", "NotCompletelyDefinedError"], [1, 3, 1, "", "UnbuildableError"]], "pylinkage.geometry": [[3, 0, 0, "-", "core"], [3, 0, 0, "-", "secants"]], "pylinkage.geometry.core": [[3, 1, 1, "", "cyl_to_cart"], [3, 1, 1, "", "dist_builtin"], [3, 1, 1, "", "get_nearest_point"], [3, 1, 1, "", "line_from_points"], [3, 1, 1, "", "norm"], [3, 1, 1, "", "sqr_dist"]], "pylinkage.geometry.secants": [[3, 1, 1, "", "bounding_box"], [3, 1, 1, "", "circle_intersect"], [3, 1, 1, "", "circle_line_from_points_intersection"], [3, 1, 1, "", "circle_line_intersection"], [3, 1, 1, "", "intersection"], [3, 1, 1, "", "secant_circles_intersections"]], "pylinkage.joints": [[4, 0, 0, "-", "crank"], [4, 0, 0, "-", "fixed"], [4, 0, 0, "-", "joint"], [4, 0, 0, "-", "linear"], [4, 0, 0, "-", "revolute"], [4, 0, 0, "-", "static"]], "pylinkage.joints.crank": [[4, 4, 1, "", "Crank"]], "pylinkage.joints.crank.Crank": [[4, 5, 1, "", "angle"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "r"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.fixed": [[4, 4, 1, "", "Fixed"]], "pylinkage.joints.fixed.Fixed": [[4, 5, 1, "", "angle"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "r"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.joint": [[4, 4, 1, "", "Joint"], [4, 4, 1, "", "Static"], [4, 1, 1, "", "joint_syntax_parser"]], "pylinkage.joints.joint.Joint": [[4, 6, 1, "", "coord"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "joint0"], [4, 5, 1, "", "joint1"], [4, 5, 1, "", "name"], [4, 6, 1, "", "set_constraints"], [4, 6, 1, "", "set_coord"], [4, 5, 1, "", "x"], [4, 5, 1, "", "y"]], "pylinkage.joints.joint.Static": [[4, 6, 1, "", "get_constraints"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.linear": [[4, 4, 1, "", "Linear"]], "pylinkage.joints.linear.Linear": [[4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "joint2"], [4, 6, 1, "", "reload"], [4, 5, 1, "", "revolute_radius"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.revolute": [[4, 4, 1, "", "Pivot"], [4, 4, 1, "", "Revolute"]], "pylinkage.joints.revolute.Pivot": [[4, 5, 1, "", "r0"], [4, 5, 1, "", "r1"]], "pylinkage.joints.revolute.Revolute": [[4, 6, 1, "", "circle"], [4, 6, 1, "", "get_constraints"], [4, 5, 1, "", "r0"], [4, 5, 1, "", "r1"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.joints.static": [[4, 4, 1, "", "Static"]], "pylinkage.joints.static.Static": [[4, 6, 1, "", "get_constraints"], [4, 6, 1, "", "reload"], [4, 6, 1, "", "set_anchor0"], [4, 6, 1, "", "set_anchor1"], [4, 6, 1, "", "set_constraints"]], "pylinkage.linkage": [[5, 0, 0, "-", "analysis"], [5, 0, 0, "-", "linkage"]], "pylinkage.linkage.analysis": [[5, 1, 1, "", "bounding_box"], [5, 1, 1, "", "kinematic_default_test"], [5, 1, 1, "", "movement_bounding_box"]], "pylinkage.linkage.linkage": [[5, 4, 1, "", "Linkage"]], "pylinkage.linkage.linkage.Linkage": [[5, 6, 1, "", "get_coords"], [5, 6, 1, "", "get_num_constraints"], [5, 6, 1, "", "get_rotation_period"], [5, 6, 1, "", "hyperstaticity"], [5, 5, 1, "", "joints"], [5, 5, 1, "", "name"], [5, 6, 1, "", "rebuild"], [5, 6, 1, "", "set_completely"], [5, 6, 1, "", "set_coords"], [5, 6, 1, "", "set_num_constraints"], [5, 6, 1, "", "step"]], "pylinkage.optimization": [[6, 0, 0, "-", "grid_search"], [6, 0, 0, "-", "particle_swarm"], [6, 0, 0, "-", "utils"]], "pylinkage.optimization.grid_search": [[6, 1, 1, "", "fast_variator"], [6, 1, 1, "", "sequential_variator"], [6, 1, 1, "", "tqdm_verbosity"], [6, 1, 1, "", "trials_and_errors_optimization"]], "pylinkage.optimization.particle_swarm": [[6, 1, 1, "", "particle_swarm_optimization"]], "pylinkage.optimization.utils": [[6, 1, 1, "", "generate_bounds"], [6, 1, 1, "", "kinematic_maximization"], [6, 1, 1, "", "kinematic_minimization"]], "pylinkage.visualizer": [[7, 0, 0, "-", "animated"], [7, 0, 0, "-", "core"], [7, 0, 0, "-", "static"]], "pylinkage.visualizer.animated": [[7, 1, 1, "", "plot_kinematic_linkage"], [7, 1, 1, "", "show_linkage"], [7, 1, 1, "", "swarm_tiled_repr"], [7, 1, 1, "", "update_animated_plot"]], "pylinkage.visualizer.static": [[7, 1, 1, "", "plot_static_linkage"]], "tests": [[16, 0, 0, "-", "collections"], [17, 0, 0, "-", "geometry"], [18, 0, 0, "-", "joints"], [19, 0, 0, "-", "linkage"], [20, 0, 0, "-", "optimization"]], "tests.collections": [[16, 0, 0, "-", "test_collections"]], "tests.geometry": [[17, 0, 0, "-", "test_geometry"]], "tests.geometry.test_geometry": [[17, 4, 1, "", "TestCircleLineIntersection"], [17, 4, 1, "", "TestCircles"], [17, 1, 1, "", "circle_line_intersection_data"]], "tests.geometry.test_geometry.TestCircleLineIntersection": [[17, 6, 1, "", "test_crossing"], [17, 6, 1, "", "test_no_crossing"], [17, 6, 1, "", "test_tangent"]], "tests.geometry.test_geometry.TestCircles": [[17, 6, 1, "", "test_no_inter"], [17, 6, 1, "", "test_radius_ineq"]], "tests.joints": [[18, 0, 0, "-", "test_joints"]], "tests.joints.test_joints": [[18, 4, 1, "", "TestFixed"], [18, 4, 1, "", "TestPivot"], [18, 4, 1, "", "TestRevolute"]], "tests.joints.test_joints.TestFixed": [[18, 5, 1, "", "pivot1"], [18, 6, 1, "", "test_pos"]], "tests.joints.test_joints.TestPivot": [[18, 5, 1, "", "pivot1"], [18, 6, 1, "", "test_buildable"], [18, 6, 1, "", "test_limit_intersect"], [18, 6, 1, "", "test_no_intersect"], [18, 6, 1, "", "test_under_intersect"]], "tests.joints.test_joints.TestRevolute": [[18, 5, 1, "", "pivot1"], [18, 6, 1, "", "test_buildable"], [18, 6, 1, "", "test_limit_intersect"], [18, 6, 1, "", "test_no_intersect"], [18, 6, 1, "", "test_under_intersect"]], "tests.linkage": [[19, 0, 0, "-", "test_linkage"]], "tests.linkage.test_linkage": [[19, 4, 1, "", "TestLinkage"]], "tests.linkage.test_linkage.TestLinkage": [[19, 6, 1, "", "test_definition"]], "tests.optimization": [[20, 0, 0, "-", "test_optimizer"]], "tests.optimization.test_optimizer": [[20, 4, 1, "", "TestEvaluation"], [20, 4, 1, "", "TestGenerateBounds"], [20, 4, 1, "", "TestPSO"], [20, 4, 1, "", "TestTrialsAndErrors"], [20, 4, 1, "", "TestVariator"], [20, 1, 1, "", "prepare_linkage"]], "tests.optimization.test_optimizer.TestEvaluation": [[20, 5, 1, "", "constraints"], [20, 5, 1, "", "linkage"], [20, 6, 1, "", "test_score"]], "tests.optimization.test_optimizer.TestGenerateBounds": [[20, 6, 1, "", "test_function"]], "tests.optimization.test_optimizer.TestPSO": [[20, 5, 1, "", "constraints"], [20, 5, 1, "", "linkage"], [20, 6, 1, "", "test_convergence"]], "tests.optimization.test_optimizer.TestTrialsAndErrors": [[20, 5, 1, "", "linkage"], [20, 6, 1, "", "test_convergence"]], "tests.optimization.test_optimizer.TestVariator": [[20, 6, 1, "", "test_length"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "function", "Python function"], "2": ["py", "data", "Python data"], "3": ["py", "exception", "Python exception"], "4": ["py", "class", "Python class"], "5": ["py", "attribute", "Python attribute"], "6": ["py", "method", "Python method"]}, "objtypes": {"0": "py:module", "1": "py:function", "2": "py:data", "3": "py:exception", "4": "py:class", "5": "py:attribute", "6": "py:method"}, "terms": {"": [3, 8, 9, 13], "0": [3, 4, 5, 6, 7, 9, 10, 12, 13, 18, 20], "00": 6, "01": 6, "05": [12, 13], "06": [1, 12], "07": 12, "1": [3, 4, 5, 6, 7, 10, 12, 13, 20], "10": [1, 6, 8, 10], "100": [6, 7, 8, 10], "11": 12, "12": [6, 7, 10, 12], "128975480760608": 18, "128975480760800": 18, "128975480760896": 18, "13": [6, 7, 8, 17], "14": [7, 12], "15": [1, 17], "16": [1, 5, 12, 18], "17": [6, 10, 18], "19": [10, 18], "1997": 3, "2": [3, 4, 6, 10, 12, 13], "20": [1, 8], "200": 6, "2019": 6, "2021": [1, 5, 6, 7, 10, 12, 17, 18], "2023": 12, "21": [1, 5, 12], "22": 12, "23": 12, "24": 7, "25": [12, 13], "26": [10, 17], "27": 8, "29": 10, "2d": [3, 5, 8, 10, 12, 13], "3": [3, 6, 7, 10, 12, 13, 20], "30": 1, "300": 10, "31": [12, 13], "32": 10, "3415926535897933": 10, "37": 10, "39": 5, "4": [10, 12], "40": 7, "400": 10, "42": 17, "45": 6, "47": 18, "5": [6, 7, 10, 12, 13], "51": 6, "52": 1, "58": 7, "6": [4, 6, 8, 10], "7": [4, 6, 8], "7853981633974483": 10, "8": [3, 6, 8, 10], "9": 8, "90": [12, 13, 17], "A": [1, 3, 5, 6, 7, 8, 9, 10, 12, 13, 17, 20], "And": [12, 13], "As": [12, 13], "Being": 9, "But": [12, 13], "For": [8, 9, 12, 13], "If": [5, 6, 7, 10, 12, 13], "In": [6, 8, 12, 13], "It": [3, 4, 5, 6, 8, 10, 12, 13], "Its": 6, "No": 9, "Of": [12, 13], "On": [12, 13], "One": 3, "That": [12, 13], "The": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13], "Then": [12, 13], "There": 6, "To": [7, 10, 12, 13], "With": [8, 12, 13], "__find_solving_order__": 8, "__init__": 8, "__secant_circles_intersections__": 8, "_kwarg": [12, 13], "_subplot": 7, "ab": 6, "abc": 4, "abcsic": 8, "about": [9, 20], "abov": [12, 13], "abscissa": [3, 4], "absolut": [3, 8], "abstract": 4, "abus": 9, "accept": 9, "access": 1, "account": 9, "achiev": [12, 13], "across": 5, "act": 9, "action": [9, 10], "actual": [12, 13], "ad": 6, "adapt": [9, 12, 13], "add": [7, 8, 12, 13], "address": 9, "adher": 8, "advanc": 9, "advis": 8, "affect": [4, 8, 9], "after": [8, 20], "ag": 9, "agent": [0, 1, 6, 7, 8, 10, 12, 13], "aggress": 9, "align": [8, 9], "all": [5, 6, 7, 8, 9, 12, 13], "allow": [5, 8, 9], "almost": [6, 18], "alpha": 8, "also": [4, 9, 12, 13], "alwai": 4, "ambigu": 4, "amount": 5, "amplitud": [12, 13], "an": [4, 6, 7, 8, 9, 10, 12, 13], "analysi": [0, 1], "anchor": [4, 8], "angl": [1, 3, 4, 5, 8, 10, 12, 13], "ani": [3, 5, 6, 7, 9, 10, 12, 13], "anim": [0, 1, 8, 10], "anoth": [3, 8, 10], "answer": 9, "anymor": 8, "anyth": 6, "anywai": 8, "apolog": 9, "apologi": 9, "appear": 9, "appli": [4, 9], "appoint": 9, "approach": [12, 13], "appropri": 9, "apr": [5, 17, 18], "ar": [3, 5, 6, 7, 8, 9, 10, 12, 13], "arbitrari": [3, 8], "arg": [4, 6, 10], "argument": [6, 8, 10, 12, 13], "around": 9, "arrai": [6, 8], "arrang": [12, 13], "article_swarm_optim": 8, "artist": 7, "ask": [8, 12, 13], "assign": [4, 6, 8], "attack": 9, "attent": 9, "attribut": 12, "author": [1, 5, 6, 7, 10, 17, 18], "automat": [7, 8, 12, 13], "avail": 9, "averag": 8, "avoid": [8, 9, 10], "ax": [7, 8], "axessubplot": 7, "axi": [3, 4, 7], "b": [3, 12, 13], "back": 8, "bar": [8, 10, 12, 13, 20], "base": [1, 4, 5, 8, 17, 18, 19, 20], "basi": 8, "basic": 3, "becaus": [6, 8, 12, 13], "bee": [12, 13], "been": [1, 4, 8], "befor": [5, 6, 7, 8], "begin": 8, "behavior": [8, 9], "behaviour": 8, "behind": [12, 13], "best": [5, 6, 8, 9, 10, 12, 13], "beta": [8, 12, 13], "better": 6, "between": [3, 4, 5, 6, 7, 8, 10, 12, 13, 17], "big": 6, "bigger": 8, "bit": [8, 12, 13], "bodi": 9, "bool": [5, 6, 7], "both": [5, 8, 12, 13], "bound": [3, 5, 6, 8, 12, 13], "bounding_box": [1, 3, 5, 8, 12, 13], "bourk": 3, "box": [3, 5, 8, 12, 13], "branch": 8, "break": [8, 18], "buggi": 8, "build": [10, 12, 13], "buildabl": 8, "builder": [8, 12, 13], "built": [1, 3, 6, 8], "bump2vers": 8, "c": [3, 12, 13], "c1": 6, "c2": 6, "calcul": [8, 12, 13], "call": [4, 6, 12, 13], "callabl": [5, 6, 7], "can": [3, 4, 6, 8, 10, 12, 13, 19, 20], "candid": [3, 6, 12, 13], "cannot": 1, "capabl": [10, 12, 13], "cartesian": [3, 4], "case": [4, 6, 15, 19, 20], "caus": 8, "center": [4, 6], "certain": [12, 13], "certainli": 6, "cfg": 8, "chang": [6, 10], "changelog": 12, "channel": 9, "characterist": [4, 9], "check": 8, "checker": 8, "choos": [8, 12, 13], "chunk": 10, "circl": [1, 3, 4, 8, 12, 13, 17], "circle1": 3, "circle2": 3, "circle_intersect": [1, 3], "circle_line_from_points_intersect": [1, 3], "circle_line_intersect": [1, 3, 8], "circle_line_intersection_data": [15, 17], "circlespher": 3, "clarifi": 9, "clariti": 9, "class": [4, 5, 8, 9, 17, 18, 19, 20], "classic": [12, 13], "clear": 8, "clearli": 8, "close": [12, 13], "closer": [3, 12, 13], "code": [8, 10], "code_of_conduct": [8, 9, 12, 13], "coeffici": 6, "collect": [0, 1, 8, 14, 15], "color": 8, "color_switch": 8, "com": [3, 10], "combin": [6, 8], "come": [8, 12, 13], "comment": 9, "commit": 9, "common": [5, 6, 9, 12, 13], "commun": [9, 12, 13], "compar": [3, 6], "compat": 8, "complaint": 9, "complet": [1, 5, 6, 8], "complete_strid": [10, 11], "complex": [12, 13], "compress": [6, 8], "comput": [3, 4, 5, 8], "concentr": 17, "conda": [8, 12, 13], "conduct": 12, "configur": 8, "confus": 8, "consecut": 6, "consequ": [8, 9], "consid": [3, 6, 8, 9, 12, 13], "consist": [4, 8], "consol": 6, "constant": [4, 12, 13], "constrain": [1, 4, 5, 8], "constraint": [1, 4, 5, 6, 10, 12, 13, 15, 20], "construct": 9, "contain": [6, 8], "content": [0, 11, 12, 14], "continu": [8, 9], "contribut": 9, "converg": 8, "convert": [3, 10], "cool": [12, 13], "coord": [1, 4, 5, 12, 13], "coordin": [3, 4, 5, 7, 8, 10, 12, 13], "copi": [1, 10], "core": [0, 1], "corner": [12, 13], "correspond": 5, "cost": 8, "could": [8, 9], "cours": [12, 13], "crank": [0, 1, 5, 7, 10, 12, 13], "creat": [1, 5, 6, 7, 10, 12, 13, 17, 18], "create_stroke_engine_linkag": [10, 11], "creator": 20, "criterion": [12, 13], "cross": 17, "crucial": [12, 13], "curr_bb": [12, 13], "current": [12, 13], "curtain": [12, 13], "custom": 8, "cyl_to_cart": [1, 3], "d": [6, 12, 13], "danger": 17, "data": [10, 17], "de": 4, "decis": 9, "declar": [12, 13], "decor": [5, 6, 8, 12, 13], "deem": 9, "def": [12, 13], "default": [3, 4, 5, 6, 7, 8, 10], "defin": [1, 3, 4, 5, 8, 10, 12, 13, 19], "define_linkag": [10, 11], "definit": [1, 4, 5, 8], "deform": [12, 13], "degre": 5, "delai": 7, "delta_dim": [6, 8], "demo": [8, 10], "demonstr": [9, 10], "denomin": 5, "deprec": [4, 6], "derogatori": 9, "describ": [6, 12, 13], "descript": 7, "desir": 17, "detail": 10, "determin": 9, "develop": 8, "dict": 6, "differ": [4, 9, 12, 13, 17], "digit": 5, "dilat": [6, 8], "dim": [8, 10], "dimens": [5, 6, 7, 8, 10, 12, 13], "dimension": [3, 5], "dimension_func": 7, "disabl": [6, 8, 9], "disparag": 9, "displai": [7, 8], "dist": 3, "dist_builtin": [1, 3], "dist_i": 3, "dist_x": 3, "distanc": [3, 4, 5, 10, 12, 13], "distance0": [4, 12, 13], "distance1": [4, 12, 13], "distribut": 1, "divers": 9, "divis": [6, 8, 12, 13], "diywalk": 10, "do": [4, 5, 8, 12, 13], "doc": [1, 8], "docstr": 8, "document": [1, 8], "doesn": [12, 13], "don": [12, 13], "done": 8, "download": [12, 13], "draw": [7, 10, 12, 13], "drop": 8, "dt": [4, 5, 12, 13], "due": [8, 10], "durat": [7, 10], "dure": 9, "dynam": 5, "e": 9, "each": [3, 5, 6, 7, 8, 10, 12, 13, 17], "easi": [7, 12, 13], "easier": 8, "econom": 9, "edg": [12, 13], "edit": [9, 10], "educ": 9, "effici": [8, 12, 13], "either": [3, 4, 12, 13], "element": [3, 4, 5, 6, 7], "els": 6, "email": 9, "empathi": 9, "emphas": [12, 13], "empti": 4, "en": 10, "end": 8, "enforc": 12, "engin": [8, 10], "enough": [8, 12, 13], "env": [12, 13], "environ": [8, 9], "equal": 3, "equat": 3, "equival": [3, 8], "error": [6, 8, 12, 13, 20], "error_penalti": 5, "ethnic": 9, "euclidian": 3, "eval_func": [6, 8, 12, 13], "evalu": [5, 6, 10, 12, 13, 20], "even": [8, 12, 13], "event": 9, "everyon": 9, "everyth": [8, 12, 13], "exactli": [12, 13], "exampl": [6, 8, 9], "except": [0, 8, 12], "execut": 8, "exhaust": [8, 12, 13], "exhaustive_optim": 8, "exist": [1, 8], "expand": [8, 10], "experi": 9, "experiment": 8, "explan": [9, 12, 13], "explicit": 9, "express": [4, 9], "extens": [3, 8], "extern": 9, "extra": 6, "extrem": [12, 13], "factor": [6, 8], "fail": 8, "fair": 9, "fairli": 9, "fals": [5, 7, 8, 10], "faq": 9, "far": 20, "fast_vari": [1, 6], "faster": [3, 7, 8], "favor": [4, 8], "featur": [3, 7, 8, 10, 12, 13], "feedback": 9, "feel": 10, "few": [12, 13], "fig": 7, "figur": 7, "file": [4, 8, 12, 13], "final": 10, "find": [10, 12, 13], "finish": [5, 8, 12, 13], "finit": 8, "first": [3, 4, 8, 12, 13], "first_point": 3, "fit": [5, 6, 8, 10, 12, 13], "fitness_func": [12, 13], "fittest": 10, "fix": [0, 1, 12, 13], "fixed_joint": 18, "flake8": 8, "flat": [5, 8, 10], "flexibl": 8, "float": [3, 4, 5, 6, 7, 10, 12, 13, 17], "fly": [12, 13], "focus": 9, "folder": [1, 8], "follow": [6, 8, 9, 12, 13], "forc": 5, "form": [6, 10, 12, 13], "formal": 5, "format": [6, 7, 8], "former": 8, "found": [3, 10], "four": [8, 10, 12, 13, 20], "fourbar_linkag": [8, 11, 12], "fp": 7, "fraction": 4, "frame": [4, 7, 8, 10], "free": 9, "fri": [5, 6, 18], "friendli": [12, 13], "from": [3, 4, 6, 7, 8, 9, 20], "full": 8, "func": [5, 6], "function": [3, 5, 6, 8, 10, 12, 13, 20], "gender": 9, "gener": [3, 5, 6, 8], "generate_bound": [1, 6, 8, 12, 13, 20], "geometr": [4, 5, 6, 10, 12, 13], "geometri": [0, 1, 8, 12, 13, 14, 15], "get": [3, 8, 12, 13], "get_constraint": [1, 4, 8], "get_coord": [1, 5, 8, 12, 13], "get_nearest_point": [1, 3], "get_num_constraint": [1, 5, 6, 8, 12, 13], "get_po": 8, "get_rotation_period": [1, 5, 8], "git": 8, "github": [1, 8, 9], "gitignor": 8, "give": [3, 4, 6, 9, 10, 12, 13], "given": [5, 10], "global": 8, "goe": 8, "good": [12, 13], "gracefulli": 9, "graph": [7, 10], "greatli": 8, "greedi": [12, 13], "grid": 6, "grid_search": [0, 1, 8], "group": 5, "guidelin": [12, 13], "ha": [4, 6, 8], "had": 8, "handl": [8, 12, 13], "happen": [12, 13], "harass": 9, "harm": 9, "have": [1, 6, 8, 9, 12, 13], "head": [12, 13], "header": 8, "healthi": 9, "here": [6, 8, 12, 13], "hesit": [12, 13], "hi": [8, 12, 13], "high": 8, "highest": 6, "highli": [3, 12, 13], "highlight": [7, 8], "hing": 4, "histori": [8, 10], "history_sav": [10, 11], "hour": 8, "how": [6, 12, 13], "howev": [12, 13], "html": [3, 9, 10], "http": [1, 3, 9, 10], "huge": 6, "hugofara": [1, 5, 6, 7, 10, 17, 18], "human": [8, 12, 13], "hyperstat": [1, 5, 8], "hypostaticerror": [0, 1], "i": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 17, 20], "idea": [12, 13], "ident": 9, "im": 7, "imag": [7, 8, 10], "imageri": 9, "imagin": [12, 13], "immut": 8, "impact": 9, "implement": 6, "implicitli": 8, "import": [6, 8, 10, 12, 13], "improv": [8, 20], "inappropri": 9, "incid": 9, "includ": [5, 8, 9], "inclus": 9, "incompat": [12, 13], "incomplet": 1, "indeterminaci": 8, "index": [7, 8, 12], "indic": 3, "individu": 9, "inertia": 6, "inf": [5, 6, 12, 13], "infin": 8, "inform": 9, "inherit": [4, 8], "ini": 8, "init_po": [12, 13], "initi": [5, 6, 7, 8, 10, 12, 13], "initial_coordin": 6, "initial_posit": 10, "input": [3, 4, 6, 8, 10], "insert": 8, "inspir": 9, "instanc": [8, 9, 12, 13], "instead": [7, 8], "insult": 9, "int": [3, 5, 6, 7, 10, 17], "integr": 8, "intend": [8, 10], "interact": 9, "interest": [12, 13], "intersect": [1, 3, 12, 13, 17, 18], "interv": 7, "introduc": 8, "invert": 10, "inverted_stroke_engin": [8, 11, 12], "investig": 9, "invis": 9, "involv": 9, "io": 1, "isn": [12, 13], "issu": [8, 9, 12, 13], "issue_templ": 8, "ite": 6, "iter": [3, 5, 6, 7, 8, 10, 12, 13, 20], "iteration_factor": 7, "its": [4, 5, 8, 12, 13], "join": [3, 4], "joint": [0, 1, 5, 8, 10, 14, 15], "joint0": [1, 4, 12, 13], "joint1": [1, 4, 12, 13], "joint2": [1, 4], "joint_syntax_pars": [1, 4], "jul": 6, "jun": [1, 7, 10], "just": [9, 12, 13], "keep": [4, 8, 12, 13], "keyword": 6, "kind": [8, 9], "kinemat": [5, 6, 8, 10, 12, 13], "kinematic_default_test": [1, 5], "kinematic_maxim": [1, 6], "kinematic_minim": [1, 6, 8], "kinematic_minimizast": [12, 13], "kinematic_optimizatino": 8, "know": [4, 12, 13], "known": 8, "kwarg": 6, "ladder": 9, "languag": [9, 12, 13], "lap_per_second": [10, 11], "last": [8, 12, 13], "launch": 8, "lead": 9, "leader": [6, 9], "learn": [6, 9], "least": [12, 13], "legaci": [3, 8], "legend": [7, 8], "leggedsnak": 8, "len": [6, 7], "length": [3, 10, 20], "less": 8, "let": [6, 8, 12, 13], "level": 9, "lib": 8, "librari": [12, 13], "licens": 8, "life": 8, "like": [9, 12, 13], "line": [3, 12, 13, 17], "line_from_point": [1, 3, 8], "linear": [0, 1, 8, 10], "lineintersect": 3, "link": [4, 8, 13], "linkag": [0, 1, 6, 7, 8, 10, 14, 15, 20], "lint": 8, "list": [3, 5, 6, 7, 10], "local": [4, 6], "localbestpso": 6, "locat": 4, "loci": [5, 6, 7, 8, 12, 13], "locu": [3, 5, 8, 12, 13], "locus_highlight": [7, 8], "longer": 8, "look": 6, "loop": [12, 13], "lot": 8, "lower": [12, 13], "lower_bound": 6, "made": [12, 13], "magic": [12, 13], "mai": [1, 8, 9, 12, 13], "mail": 9, "main": [8, 10, 11, 12, 13], "mainli": 6, "make": [4, 5, 6, 7, 8, 9, 12, 13], "mandatori": 8, "mani": [8, 12, 13], "manifest": 8, "manual": [12, 13], "mar": 6, "mast": [12, 13], "master": 8, "math": 3, "mathemat": [8, 12, 13], "mathworld": 3, "matplotlib": [7, 8, 12, 13], "matt": 3, "max": 6, "max_dim": 6, "max_factor": 6, "max_i": [12, 13], "max_x": [12, 13], "maxim": [6, 8], "md": [8, 12, 13], "mechan": [12, 13], "media": 9, "member": 9, "mention": 8, "mere": 8, "messag": [1, 8], "method": [3, 5, 8, 12, 13], "method_nam": 19, "methodnam": [17, 18, 20], "mid_dist": 3, "middl": 6, "millisecond": 7, "min": [6, 12, 13], "min_dim": 6, "min_i": [12, 13], "min_ratio": 6, "min_x": [12, 13], "minim": [6, 8, 12, 13], "minimum": [12, 13], "minor": 8, "misbehav": 8, "miss": 8, "mistak": 9, "mit": 8, "mode": [5, 7, 17], "moder": 9, "modifi": [6, 7, 8, 10], "modul": [0, 8, 11, 12, 14], "mon": [6, 7], "more": [8, 12, 13], "most": 8, "mostli": 4, "motion": 10, "motor": [8, 12, 13], "move": [4, 8, 12, 13], "movement": [7, 12, 13], "movement_bounding_bow": 8, "movement_bounding_box": [1, 5, 8], "mozilla": 9, "much": 8, "multipl": [1, 8], "mutabl": 8, "mutable_ag": [0, 1], "mutableag": [6, 8], "my": [12, 13], "my_linkag": [12, 13], "n": [12, 13], "n_agent": 10, "n_iter": 10, "n_particl": 6, "n_result": [6, 12, 13], "n_show": 10, "name": [1, 4, 5, 8, 12, 13, 18], "namedtupl": 8, "nation": 9, "natur": 9, "navig": 8, "need": [5, 8, 12, 13], "neg": 8, "neighbor": [6, 12, 13], "net": 3, "new": [4, 8], "none": [3, 4, 5, 6, 7, 8, 10], "norm": [1, 3], "normal": 10, "notabl": 8, "notcompletelydefinederror": [0, 1, 8], "note": [12, 13], "noth": [3, 4], "notic": [12, 13], "now": [8, 12, 13], "num_constraint": 6, "number": [5, 6, 7, 8, 10, 12, 13, 17, 20], "numer": 5, "numpi": [12, 13], "numpydoc": 8, "obj_1": 3, "obj_2": 3, "object": [2, 3, 4, 5, 8, 10, 12, 13, 20], "oblig": 9, "offens": 9, "offici": [8, 9], "offlin": 9, "often": [6, 8, 12, 13], "onc": [12, 13], "one": [3, 5, 8, 10, 12, 13], "onli": [4, 6, 8, 12, 13, 17], "onlin": 9, "open": [9, 12, 13], "opinion": 9, "optim": [0, 1, 3, 8, 10, 14, 15], "option": [7, 8, 12, 13], "order": [5, 6, 8, 12, 13], "order_rel": [6, 8, 12, 13], "ordin": [3, 4, 8], "org": [9, 10], "organ": 8, "ori": 3, "orient": [4, 9], "origin": [3, 4, 7, 10], "ot": 8, "other": [4, 9, 17], "otherwis": [9, 12, 13], "our": [12, 13], "output": [6, 7, 8, 10, 20], "over": [5, 8, 17], "overal": 9, "own": [5, 8], "packag": [0, 8, 11, 13, 14], "pad": 8, "page": [8, 12], "param": 10, "param2dimens": [10, 11], "paramet": [4, 5, 6, 7, 8, 10, 12, 13], "parent": [4, 12, 13], "pars": 4, "parser": 4, "particip": 9, "particl": [6, 8, 10, 12, 13, 20], "particle_swarm": [0, 1, 8], "particle_swarm_optim": [1, 6, 8, 12, 13], "particularli": [12, 13], "pass": [5, 6, 7, 10, 12, 13], "past": 10, "path": [8, 12, 13], "pattern": 9, "paul": 3, "paulbourk": 3, "penalti": [5, 6, 12, 13], "peopl": 9, "per": 7, "perfect": 8, "period": [5, 9, 10], "permiss": 9, "person": 9, "perspect": 8, "physic": 9, "pin": [4, 12, 13], "pivot": [1, 4, 8, 18], "pivot1": [15, 18], "pl": [12, 13], "plai": [12, 13], "plan": 10, "planar": [12, 13], "pleas": [1, 12, 13], "pledg": 12, "plot": [7, 8], "plot_kinematic_linkag": [1, 7, 8], "plot_static_linkag": [1, 7, 8], "po": [5, 8, 10, 12, 13], "point": [3, 4, 5, 7, 8, 12, 13], "point1": 3, "point2": 3, "polar": [3, 10], "polit": 9, "poorli": 8, "posit": [4, 5, 6, 7, 8, 9, 10, 12, 13, 18], "possibl": [4, 5, 6, 8, 12, 13], "post": [9, 12, 13], "precis": 5, "prepar": 17, "prepare_linkag": [15, 20], "preserv": 4, "prev": [7, 10], "previou": [5, 7, 8, 12, 13], "principl": [12, 13], "print": [6, 8], "prismat": 4, "privaci": 9, "privat": 9, "problem": [6, 8, 12, 13], "profession": 9, "program": 3, "progress": 8, "project": [3, 4, 8, 10, 12, 13], "promptli": 9, "properli": [8, 20], "provid": [3, 6, 8, 9, 12, 13], "pso": [6, 8, 10], "public": 9, "publish": [8, 9], "pull": [12, 13], "put": [12, 13], "py": 8, "pycharm": 8, "pylinkag": [8, 10, 20], "pypi": [8, 12, 13], "pyproject": 8, "pyswarm": [6, 8, 12, 13], "python": [3, 8, 12, 13], "quadrant": [12, 13], "quarter": [12, 13], "question": 9, "quick": 1, "quicker": 8, "r": [1, 3, 4], "r0": [1, 4], "r1": [1, 4], "race": 9, "radi": 17, "radian": [12, 13], "radiu": [3, 4], "radius1": 3, "rais": [1, 8], "randomli": 6, "rare": [12, 13], "rate": [8, 17], "ratio": 6, "reach": 8, "readm": [8, 12], "real": 7, "rearrang": [12, 13], "reason": [9, 12, 13], "rebuild": [1, 5], "recap": [12, 13], "recat": 4, "receiv": [8, 12, 13], "recommend": [8, 12, 13], "recreat": 7, "redefin": 5, "ref_bb": [12, 13], "ref_po": [12, 13], "refer": [3, 4, 6, 12, 13], "reference_point": 3, "regardless": 9, "regener": 8, "reject": 9, "rel": [4, 5, 8, 10], "relat": 8, "relev": [12, 13], "religion": 9, "reload": [1, 4, 8, 12, 13], "rememb": [12, 13], "remov": [4, 6, 9], "renam": 8, "reorgan": 8, "replac": 8, "report": 9, "repr_polar_swarm": 8, "repres": [9, 10], "represent": [5, 8, 10], "request": [9, 12, 13], "requir": 8, "reset": [12, 13], "resourc": [12, 13], "respect": [8, 9, 12, 13], "respons": 12, "rest": 8, "result": [6, 7, 8, 12, 13, 20], "return": [4, 5, 6, 7, 8, 10, 12, 13, 20], "reus": [12, 13], "revamp": 8, "review": 9, "revolut": [0, 1, 7, 8, 12, 13, 18], "revolute_radiu": [1, 4], "right": [9, 12, 13], "risk": 8, "robust": [8, 12, 13], "rocker": [12, 13], "role": [12, 13], "rotari": 10, "rotat": [4, 5, 8, 12, 13], "run": [5, 6, 7, 8, 10, 12, 13, 20], "runtest": [17, 18, 20], "sai": [12, 13], "same": [3, 5, 8, 12, 13], "sat": 10, "satisfactori": 8, "satisfi": 5, "save": [7, 8, 10, 12, 13], "save_each": 10, "scalar": 4, "scope": 12, "score": [6, 7, 8, 10, 12, 13, 20], "script": 8, "search": [6, 12], "secant": [0, 1, 8], "secant_circles_intersect": [1, 3, 8], "second": [3, 4, 7, 8, 12, 13], "second_point": 3, "secur": 9, "see": [1, 7, 8, 9, 10, 12, 13], "seem": [8, 12, 13], "seen": 8, "self": [4, 5], "semant": 8, "sens": [12, 13], "separ": [8, 12, 13], "sequenc": [3, 4, 5, 6, 7, 10], "sequenti": 6, "sequential_vari": [1, 6], "seri": 9, "serial": [12, 13], "seriou": 9, "set": [4, 5, 6, 7, 8, 9, 10], "set_anchor0": [1, 4], "set_anchor1": [1, 4], "set_complet": [1, 5, 8], "set_constraint": [1, 4, 5, 8], "set_coord": [1, 4, 5, 8, 12, 13], "set_num_constraint": [1, 5, 8, 10, 12, 13], "setup": 8, "sex": 9, "sexual": 9, "shape": 6, "short": 10, "should": [1, 3, 4, 5, 6, 7, 8, 10, 12, 13], "show": [7, 8, 10, 12, 13], "show_legend": 7, "show_linkag": [1, 7, 12, 13], "show_optim": [10, 11], "sidebar": 8, "signatur": 8, "similar": 8, "simpl": [1, 6, 7, 8, 10, 12, 13, 20], "simpli": 20, "simplif": 8, "simplifi": [8, 12, 13], "simul": [5, 6, 10], "sinc": [4, 6], "singl": [6, 9, 12, 13], "size": [6, 9, 10], "small": 6, "so": [3, 4, 6, 8, 12, 13, 17], "social": [6, 9], "socio": 9, "solut": [1, 8, 12, 13], "solv": [1, 4, 12, 13], "some": [8, 10, 12, 13, 20], "someth": [12, 13], "sometim": 8, "sort": 9, "sourc": [8, 12], "space": [4, 6, 9, 12, 13], "special": [4, 7], "specif": 8, "specifi": [6, 8, 9, 12, 13], "sphinx": 8, "split": 8, "sqr_dist": [1, 3], "squar": [3, 12, 13], "stai": [12, 13], "standard": [4, 5, 6, 8, 12, 13], "start": [3, 12, 13], "state": [5, 6, 10], "static": [0, 1, 8], "statu": 9, "step": [1, 4, 5, 6, 7, 8, 12, 13], "still": [12, 13], "stop": [8, 12, 13], "str": 7, "straight": 17, "strider": [8, 11, 12], "stroke": [8, 10], "stroke_engin": 10, "structur": [3, 4, 5, 12, 13], "style": 8, "sub": 8, "subdivid": 7, "subdivis": [6, 8, 12, 13, 20], "submodul": [0, 11, 12, 14, 15], "subpackag": [0, 12, 14], "subplot": 7, "success": 17, "sugar": 8, "sum": [12, 13], "support": [7, 8, 12], "sure": 6, "sustain": 9, "swarm": [6, 7, 8, 10, 12, 13, 20], "swarm_optim": [10, 11], "swarm_tiled_repr": [1, 7, 8], "switch": [12, 13], "sym_stride_evalu": [10, 11], "symmetr": 10, "symmetri": 10, "sympi": 3, "syntact": [4, 8], "system": [1, 5, 18], "t": [8, 12, 13], "tadaaa": [12, 13], "tag": 8, "tail": [12, 13], "take": [4, 6, 8, 9, 10, 12, 13], "tangent": 17, "target": 8, "templat": 8, "term": 9, "test": [8, 12, 13], "test_build": [15, 18], "test_collect": [14, 15], "test_converg": [8, 15, 20], "test_cross": [15, 17], "test_definit": [15, 19], "test_funct": [15, 20], "test_geometri": [8, 14, 15], "test_joint": [14, 15], "test_length": [15, 20], "test_limit_intersect": [15, 18], "test_linkag": [8, 14, 15], "test_no_cross": [15, 17], "test_no_int": [15, 17], "test_no_intersect": [15, 18], "test_optim": [8, 14, 15], "test_po": [15, 18], "test_radius_ineq": [15, 17], "test_scor": [15, 20], "test_tang": [15, 17], "test_under_intersect": [15, 18], "testcas": [17, 18, 19, 20], "testcircl": [15, 17], "testcirclelineintersect": [15, 17], "testevalu": [15, 20], "testfix": [15, 18], "testgeneratebound": [15, 20], "testlinkag": [15, 19], "testpivot": [15, 18], "testpso": [8, 15, 20], "testrevolut": [15, 18], "testtrialsanderror": [15, 20], "testvari": [15, 20], "than": [3, 6], "thank": 8, "thei": [5, 7, 8, 9, 12, 13], "them": [4, 7, 10, 12, 13], "theoret": [12, 13], "theta": 3, "thi": [3, 4, 5, 6, 8, 9, 10, 12, 13, 17], "thing": [12, 13, 20], "think": [12, 13], "those": 9, "threaten": 9, "three": 4, "through": [9, 10], "thu": [1, 17], "tile": [7, 10], "time": [8, 9, 12, 13, 17], "tip_locu": [12, 13], "titl": 7, "togeth": [12, 13], "tol": 3, "toler": [3, 6], "toml": 8, "too": [6, 20], "tool": 5, "top": [12, 13], "toward": 9, "tox": 8, "tqdm": [6, 8], "tqdm_verbos": [1, 6, 8], "transcript": 3, "transit": 8, "translat": 9, "trial": [8, 12, 13, 20], "trials_and_error": 8, "trials_and_error_optim": 8, "trials_and_errors_optim": [1, 6, 8, 12, 13], "trials_and_errors_optimizatt": 8, "triangl": [12, 13], "trick": [12, 13], "troll": 9, "true": [5, 6, 8, 10], "try": [12, 13], "tupl": [3, 4, 5, 6, 7, 10, 12, 13], "turn": [5, 12, 13], "twice": 17, "two": [3, 4, 6, 8, 10, 12, 13, 17], "txt": 8, "type": [3, 4, 5, 6, 7, 8, 10, 20], "typo": 8, "u": [5, 9], "ugli": 8, "unabl": 1, "unaccept": 9, "unbuild": 5, "unbuildableerror": [0, 1], "under": [1, 3, 18], "understand": 4, "unit": 10, "unittest": [8, 15], "unoptim": 3, "unprofession": 9, "unreleas": 12, "unsolicit": 9, "unus": 4, "unwelcom": 9, "updat": [7, 8, 12, 13], "update_animated_plot": [1, 7], "upl": 6, "uplet": [6, 12, 13], "upper": [6, 18], "upper_bound": 6, "us": [3, 4, 5, 6, 7, 8, 9, 10], "useless": 7, "user": 8, "util": [0, 1, 8], "valid": 8, "valu": [3, 4, 5, 6, 7, 8, 10], "vari": [6, 10, 12, 13], "variabl": 8, "variat": [6, 8, 20], "variou": [6, 8, 17, 20], "vec": 3, "vector": 3, "vectori": [12, 13], "verbos": [6, 8], "veri": 6, "verifi": [12, 13], "version": [4, 6, 7, 8, 9], "via": 9, "video": 7, "view": [8, 10, 12, 13], "view_linkag": [10, 11], "view_swarm_polar": [10, 11], "view_swarm_til": [10, 11], "viewpoint": 9, "violat": 9, "violent": 6, "visibl": 9, "visual": [0, 1, 8, 10], "visualizar": [12, 13], "vizual": 8, "vulner": 8, "w": 6, "wa": [8, 9], "wai": [1, 7, 8, 9, 12, 13], "wait": [12, 13], "walk": 10, "walkthrough": 8, "want": [4, 6, 7, 12, 13, 17], "warn": 8, "wasn": 8, "we": [4, 6, 7, 8, 9, 12, 13, 17], "websit": 8, "wed": 1, "welcom": [9, 10], "well": [8, 9, 20], "were": [8, 9], "what": [9, 12, 13], "when": [1, 3, 7, 8, 9, 12, 13], "whether": 5, "which": [3, 4, 6, 9, 10, 12, 13], "whole": 4, "why": [9, 12, 13], "wiki": [9, 10], "wikipedia": 10, "windshield": [12, 13], "wiper": [12, 13], "within": 9, "without": [7, 8, 9, 10], "wolfram": 3, "wonder": [12, 13], "woodhead": 3, "work": [8, 12, 13], "workflow": 8, "would": [8, 12, 13], "wrapper": [6, 8], "write": [12, 13], "written": [9, 10], "wrongli": 8, "www": [9, 10], "x": [1, 3, 4, 6, 8, 12, 13, 18], "x0": 3, "x_max": [3, 5], "x_min": [3, 5], "y": [1, 3, 4, 8, 12, 13, 18], "y0": 3, "y_max": [3, 5], "y_min": [3, 5], "yet": 8, "yml": [8, 12, 13], "you": [4, 6, 7, 8, 10, 12, 13], "your": [1, 8, 12, 13], "yourself": [12, 13], "zip": [12, 13]}, "titles": ["pylinkage", "pylinkage package", "pylinkage.collections package", "pylinkage.geometry package", "pylinkage.joints package", "pylinkage.linkage package", "pylinkage.optimization package", "pylinkage.visualizer package", "Changelog", "Contributor Covenant Code of Conduct", "examples package", "examples", "Welcome to pylinkage\u2019s documentation!", "Pylinkage", "tests", "tests package", "tests.collections package", "tests.geometry package", "tests.joints package", "tests.linkage package", "tests.optimization package"], "titleterms": {"": 12, "0": 8, "05": 8, "06": 8, "07": 8, "1": [8, 9], "11": 8, "12": 8, "14": 8, "16": 8, "2": [8, 9], "2021": 8, "2023": 8, "21": 8, "22": 8, "23": 8, "3": [8, 9], "4": [8, 9], "5": 8, "ad": 8, "agent": 2, "analysi": 5, "anim": 7, "argument": 17, "attribut": 9, "ban": 9, "chang": 8, "changelog": 8, "code": [9, 12, 13], "collect": [2, 16], "complet": [12, 13], "conduct": 9, "content": [1, 2, 3, 4, 5, 6, 7, 10, 15, 16, 17, 18, 19, 20], "contribut": [12, 13], "contributor": 9, "core": [3, 7], "correct": 9, "coven": 9, "crank": 4, "definit": [12, 13], "demo": [12, 13], "deprec": 8, "document": 12, "enforc": 9, "environ": [12, 13], "exampl": [10, 11, 12, 13], "except": 1, "fix": [4, 8], "fourbar_linkag": 10, "geometri": [3, 17], "grid_search": 6, "guidelin": 9, "indic": 12, "instal": [12, 13], "introduct": 12, "inverted_stroke_engin": 10, "joint": [4, 12, 13, 18], "linear": 4, "link": 12, "linkag": [5, 12, 13, 19], "modul": [1, 2, 3, 4, 5, 6, 7, 10, 15, 16, 17, 18, 19, 20], "mutable_ag": 2, "optim": [6, 12, 13, 20], "our": 9, "packag": [1, 2, 3, 4, 5, 6, 7, 10, 12, 15, 16, 17, 18, 19, 20], "paramet": 3, "particle_swarm": 6, "perman": 9, "pip": [12, 13], "pledg": 9, "pylinkag": [0, 1, 2, 3, 4, 5, 6, 7, 12, 13], "quick": 12, "remov": 8, "requir": [12, 13], "respons": 9, "return": [3, 17], "revolut": 4, "scope": 9, "secant": 3, "set": [12, 13], "short": [12, 13], "simul": [12, 13], "standard": 9, "static": [4, 7], "strider": 10, "submodul": [1, 2, 3, 4, 5, 6, 7, 10, 16, 17, 18, 19, 20], "subpackag": [1, 15], "tabl": 12, "temporari": 9, "test": [14, 15, 16, 17, 18, 19, 20], "test_collect": 16, "test_geometri": 17, "test_joint": 18, "test_linkag": 19, "test_optim": 20, "unreleas": 8, "up": [12, 13], "us": [12, 13], "util": 6, "virtual": [12, 13], "visual": [7, 12, 13], "warn": 9, "welcom": 12}}) \ No newline at end of file diff --git a/docs/tests/tests.joints.html b/docs/tests/tests.joints.html index 3099a43..f4e26bf 100644 --- a/docs/tests/tests.joints.html +++ b/docs/tests/tests.joints.html @@ -119,7 +119,7 @@

Submodules
-pivot1 = Revolute(x=0, y=0, name=124584029858272)
+pivot1 = Revolute(x=0, y=0, name=128975480760896)
@@ -137,7 +137,7 @@

Submodules
-pivot1 = Revolute(x=0, y=0, name=124584029857888)
+pivot1 = Revolute(x=0, y=0, name=128975480760800)

@@ -173,7 +173,7 @@

Submodules
-pivot1 = Revolute(x=0, y=0, name=124584029858080)
+pivot1 = Revolute(x=0, y=0, name=128975480760608)

diff --git a/requirements-dev.txt b/requirements-dev.txt index 389cfda..71f3da9 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -2,7 +2,7 @@ -r requirements.txt -sphinx>=8.0.2 -sphinx-rtd-theme>=1.2.0 +sphinx>=7.4.7 +sphinx-rtd-theme>=2.0.0 myst-parser>=3.0.1 bump2version>=1.0.0