Dear Rushabh, This seems like a good follow up to Hwayeon's project. You have a good starting idea to turn into a proposal.
Keep in mind that adding an aerodynamic force, like simply 1/2*CD*A*rho*v**2, is trivial to include, i.e. Force(point, 1/2*CD*A*rho*v**2). If we bother to make a special object for the force, it should be something that people have a harder time implementing and takes many lines of code. This way our object saves them that effort. So I'd like to see adding fewer more difficult forces than a lot of trivial forces. There is interest from the biomechanics community to have muscle models and many prebuilt wrapping objects. Muscles wrap around your bones and soft tissue in complex geometrical ways and until we have more wrapping options, many musculoskeletal models cannot be created. So maybe this is of interest to you too. Jason moorepants.info +01 530-601-9791 On Fri, Feb 14, 2025 at 7:05 AM Rushabh Mehta <[email protected]> wrote: > Dear SymPy Developers, > > I hope this message finds you well! My name is Rushabh Mehta, and I am a > computer engineering sophomore at VJTI, Mumbai. I’ve been contributing to > SymPy for some time now, with merged pull requests and a few more currently > under review. Working with the SymPy codebase has been an enriching > learning experience, and I am looking forward to contributing more. > > I am writing to share my interest in working on a GSoC project this year > to enhance the force and torque models in the mechanics module. This > project builds upon the work done by last year’s contributor, Hwayeon Kang, > who implemented several foundational classes like LinearSpring, > DuffingSpring, and LinearDamper. While these additions were a significant > step forward, I feel the scope of their usage remains limited. My goal is > to broaden the applicability of these prebuilt classes by introducing > additional force and torque models that are both versatile and > representative of real-world systems. > > Here’s a rough outline of the proposed enhancements: > ------------------------------ > > *Proposed Deliverables* > > *1. Nonlinear Models:* > > - *HysteresisSpring:* Extend the Duffing Spring to include hysteresis > and piecewise nonlinear behavior, enabling modeling of materials like > rubber. > - *NonlinearDamper:* Model damping forces proportional to v**n (velocity > raised to fractional or higher-order power). This can represent progressive > damping systems. > > *2. Aerodynamic Forces:* > > - *AerodynamicDrag:* Implement drag forces as a function of velocity, > fluid density, and drag coefficient. > - *AerodynamicLift:* Add lift forces for aerodynamic systems, > incorporating lift coefficients and surface area. > > *3. Building on GSoC 2024 Work:* > As suggested in last year’s project (link to the report > <https://github.com/sympy/sympy/wiki/GSoC-2024-Report-Hwayeon-Kang:-Implementing-Specific-Forces-and-Torques#future-work> > ): > > - Finalize the *Hill’s muscle model actuator* and add an example to > the documentation. > - Complete the *friction example* (sliding block on a rotating disc). > > *4. Documentation and Examples:* > > - Add practical examples to the SymPy documentation, such as: > - Damped oscillations. > - Aerodynamic forces in free fall. > - Dynamic muscle models. > > ------------------------------ > > *Why This Project* > > The expansion of force and torque models will enhance SymPy's versatility, > making it applicable to a wider range of use cases in fields such as > biomechanics, aerodynamics, and mechanical systems. > > I would greatly appreciate your feedback on this direction. Please let me > know if there are any areas you think should be prioritized or if there's > anything I should adjust. > > Thank you for your time, and I look forward to your valuable input. > > Best regards, > 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/ada5689e-76a3-4d81-ab76-0677061052b2n%40googlegroups.com > <https://groups.google.com/d/msgid/sympy/ada5689e-76a3-4d81-ab76-0677061052b2n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- 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/CAP7f1AgnP2LODu8Q7tw%3Ds1kq5MeAioMPm3XzrwqMfgx2YEKfJw%40mail.gmail.com.
