Hello everyone,
I have been contributing to SymPy and engaging with the community for a few
months now. I’ve fixed bugs, participated in discussions, and opened
issues. Thus I have gained some familiarity with the codebase, also I have
been programming in Python for 2+ years.
I'm interested in contributing to SymPy Mechanics for GSoC 2025,
specifically under the project *"Classical Mechanics: Implement Wrapping
Geometry and Pathways for Musculoskeletal Modeling" *as listed on the ideas
page.
I've been exploring and studying the existing WrappingCylinder and
WrappingSphere classes, as well as the LinearPathway and ObstaclePathway. I
believe a valuable addition would be:
1. *WrappingEllipsoid* and *WrappingCone*: These can model more complex
muscle wrapping geometries around bones/joints, extending the current
wrapping surfaces.
2. *GeodesicPathway*: This pathway would compute the shortest path along
a curved surface (any instance of a wrapping geometry) between two
attachment points, capturing more realistic muscle routing in biomechanical
models.
*Implementation Plan:*
- *WrappingEllipsoid & WrappingCone:*
- Extend the existing WrappingGeometryBase class, ensuring all the
required methods are implemented.
- Define parametric equations for the surfaces and add methods to
compute geodesic lengths and end vectors.
- *GeodesicPathway:*
- Implement a general GeodesicPathway class that computes the
shortest path along a surface (geometry) given two attachment points.
- Use differential geometry principles to compute geodesic equations
and solve them symbolically using SymPy’s dsolve.
- Integrate force calculation along the geodesic (similar to
LinearPathway.to_loads method) so that it can be used to generate
equations
of motion with Kane/Langrange method.
- Ensure it can interact with any WrappingGeometry object.
As with any software development endeavor, these additions will be
accompanied by exhaustive tests, documentation and example usage.
I think these additions could significantly enhance the biomechanics
modeling capabilities of SymPy, especially for musculoskeletal simulations.
I'd love to hear any feedback, especially on:
- The feasibility of computing geodesics symbolically especially in more
complicated scenarios using dsolve.
- Anything I may have overlooked.
- Any suggestions on aligning this work with SymPy's current design.
Would this contribution align well with SymPy's current roadmap? I'm open
to any guidance or suggestions to refine my approach.
Thanks!
Rushabh Mehta
--
You received this message because you are subscribed to the Google Groups
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/sympy/48b5a2ee-ffe7-4085-811f-0139b583924dn%40googlegroups.com.