← Back to team overview

yade-users team mailing list archive

Re: [Question #683967]: GlobalStiffnessTimeStepper with Potential Blocks


Question #683967 on Yade changed:

Vasileios Angelidakis gave more information on the question:

Thank you both for your advice!


> Is it over estimating the time step, resulting in instability?
- Yes, currently the GlobalStiffnessTimeStepper can lead to instability, by overestimating the timestep. In particular, if we consider the cases where the contactArea > 1.0 (mm^2 or cm^2 or m^2), the timestep we currently get can be orders of magnitude larger than what it should be, if we considered the actual stiffness of the system.

> are other people depending on the code being the way it is now?
- I do not think anyone else currently uses the GlobalStiffnessTimeStepper with the Potential Blocks, so this shouldn't create any backward compatibility problems. If someone used it, we would have heard about this problem by now  :)

Jan, thanks for the step-by step advice

> separate the code into another function
This is a good point, in order to not slow down the engine for those who use it with spheres. 
I only have one reservation: If we separate the code into another function, we will be able to use the GlobalStiffnessTimeStepper efficiently only for models with one contact physics type. Now, in my case, the Potential Blocks only interact with themselves, so this is not a problem for me. But, if we wanted to use the GlobalStiffnessTimeStepper in a model with: Spheres+Polyhedra (for which the stiffnesses "phys->kn" and "phys->ks" are also expressed in different units than [N/m]), we would need to deal with both shapes in the same timestepper. I think an integrated solution would be to have one function, in which we iterate for each interaction, and depending on the type of the physics involved, calculate the stiffness of the interaction.

You received this question notification because your team yade-users is
an answer contact for Yade.