Coder Social home page Coder Social logo

rebx_calculate_energy about reboundx HOT 3 CLOSED

dtamayo avatar dtamayo commented on August 28, 2024
rebx_calculate_energy

from reboundx.

Comments (3)

dtamayo avatar dtamayo commented on August 28, 2024

Thanks. I removed this in the new version, and have removed it from master for consistency for now. That function was a placeholder for a function meant to automatically calculate the energy based on what effects you've added, but I think requires too much logic and overhead when adding new effects for it to be worth it. At the same time it's probably a useful function. Would love some feedback.

It would need a parallel list of unique effects, forces and operators should have a calculate energy function pointer field. There's also a distinction not only between conservative and dissipative effects, but also between conservative position and velocity dependent ones, because the former just have additive contributions to the potential, but the velocity dependent ones also change the kinetic terms. I guess one could rewrite the velocity dependent energy routines to subtract off the classical energy to just give the updates at the cost of large roundoff errors, or rewrite the routines to only calculate the update (not totally trivial).

from reboundx.

hannorein avatar hannorein commented on August 28, 2024

I agree. I think keeping some of the functions that calculate the energy around for some of the simpler effects such as gr potential would be helpful so that one doesn't need to reimplement them every time. But without any logic.

from reboundx.

dtamayo avatar dtamayo commented on August 28, 2024

I agree, thanks!

from reboundx.

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.