Grasshopper

algorithmic modeling for Rhino

Hi,
I'm writing a paper on an algorithm involving Kangaroo, so I would like to investigate more in depth how kangaroo does works, is there some sort of documentation about the phisical rules which are used inside nodes and what does stiffnes and other similar input parameters means in terms of Phisical formulation in each node?

Thanks in advance, Riccardo

Views: 618

Replies to This Discussion

Hi Riccardo,

The solver in versions of Kangaroo before 2.0 was fairly standard dynamic relaxation (along the lines described eg by M.R. Barnes in his thesis).

In Kangaroo 2.0 and later the solver method is still similar to dynamic relaxation, but with some important changes. I haven't yet published a paper describing the methods in detail, though I have been meaning to for some time, and have various drafts I've been working on. Whenever I eventually do publish, I will certainly post it here.

The changes are partly related to projection based methods, in order to achieve better numerical stability, influenced by work including Jakobsen, PBDShapeUp, and ADMM. There are also some additional changes beyond this for further accelerating convergence. 

However, while the details of the solver itself are not yet published, for all the individual Goal components, you can read the entire source code on the GitHub repository here.

Some of the goals there include notes on the sources they are based on (such as the angle and hinge goals). Others are original work. If you have questions about any particular ones feel free to ask.

Each goal generates at each iteration a set of Move vectors for each particle it acts on. The solver then iteratively minimises the total sum of the (weighted) squares of all these move distances.

I'd like very much to be kept updated if some papers of yours will be published.

Thank you very much for now for your great work and your fast support!

I have another question about kangaroo working:
which is the highest number we can be input in the stiffness variable?
I observed that when we exceed a certain value nothing changes in the result.
So I'm wondering if there is a value which cangaroo considers as "infinite"

Thanks

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service