Git Product home page Git Product logo

Comments (4)

andreadelprete avatar andreadelprete commented on July 21, 2024

Interesting, I didn't know this semi-implicit scheme was second order. If you have a reference at hand that explains why I'd love to take a look. Otherwise I'm gonna look for one by myself.

from consim.

jcarpent avatar jcarpent commented on July 21, 2024

I was incorrect when saying second-order, but this method is much more stable in the sense that it preserves the mechanical energy of the system. See https://en.wikipedia.org/wiki/Semi-implicit_Euler_method for more details.
Euler explicit has very bad behavior with this aspect.

from consim.

andreadelprete avatar andreadelprete commented on July 21, 2024

Hello @jcarpent
I've implemented semi-implicit Euler and tested it on the quadruped jumping motion. Surprisingly it doesn't do better than explicit Euler. Here the mean infinity norm of the local integration error:
jump_dt_10ms_semi_implicit_euler_mean_inf_norm

Semi-implicit Euler performs a bit better than explicit Euler for dt=10 ms, but in all other cases it does a bit worse than explicit Euler, and for one case the error goes out of the chart.
For small time steps (<=0.3 ms), the error seems to be basically the same as for explicit Euler.

from consim.

andreadelprete avatar andreadelprete commented on July 21, 2024

Given these results, it doesn't seem worth it to use semi-implicit Euler, so I am going to close this issue for now.

from consim.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.