{"library":"springable","title":"Springable","type":"library","description":"Nonlinear spring assembly solver and visualization library. Version 1.0.1 supports Python >=3.10. Uses flexel formulation for modeling complex spring networks. Active development, monthly releases.","language":"python","status":"active","last_verified":"Sat May 09","install":{"commands":["pip install springable"],"cli":null},"imports":["from springable import Flexel","from springable import Spring","from springable import Node","from springable import Assembly"],"auth":{"required":false,"env_vars":[]},"links":{"homepage":"https://ducarme.github.io/springable/","github":"https://github.com/ducarme/springable","docs":null,"changelog":null,"pypi":"https://pypi.org/project/springable/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null},"quickstart":{"code":"from springable import Node, Spring, Assembly\n\n# Create nodes\nn1 = Node(0, 0)\nn2 = Node(1, 0)\nn3 = Node(0.5, 0.866)\n\n# Create springs\nspring1 = Spring(n1, n2, stiffness=10.0, rest_length=1.0)\nspring2 = Spring(n2, n3, stiffness=10.0, rest_length=1.0)\nspring3 = Spring(n3, n1, stiffness=10.0, rest_length=1.0)\n\n# Assemble and solve\nassembly = Assembly([n1, n2, n3], [spring1, spring2, spring3])\nsolution = assembly.solve()\nprint(solution.node_positions)\n\n# Plot\nassembly.plot()","lang":"python","description":"Basic usage: create nodes and springs, solve, and visualize.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}