Home › Forum › SOFA › Getting Started › Proper collision modelling
Tagged: 64_bits, collision, gravity, SOFA_1612, Windows_10
- This topic has 1 reply, 2 voices, and was last updated 7 years, 4 months ago by Hugo.
-
AuthorPosts
-
10 August 2017 at 11:50 #9912VincentGBlocked
Recently I started collision modelling and have some questions:
– What dimension is one size unit in SOFA? The liver model seems to have size of just under 2 units, a real one is around 150mm, so 1 unit = 0.1m? Gravity constant is defined as 9.81 m/s^2, so is represented in meters instead. Frog model has size 20 units, but haven’t seen a 2 meter big frog in reality!
– When importing STL files of objects that I work on (~150mm), the object is much bigger than other objects in demos and tutorials. The default collision model doesn’t seem to work well on such big objects, they often go right through floors or other objects. How to fix this? Ideally you would have a repulsion force that goes to infinity when objects start overlapping each other, and one would assume that with proper Euler and linear integration methods (maybe with small integration steps?) it would result in realistic collision dynamics. Or is there a specific contact manager module available that solves this problem? I haven’t studied yet what the available contact managers are.
– Objects’ gravitational acceleration sometimes seems to be inconsistent. In one of my scenes, I put a series of objects on a line in an uniform graviational field, to study relative velocity/acceleration differences. The gravitational acceleration of an object seems to be directly dependent of the Young’s modulus of that object, while this is impossible in reality. (Anyway, I see version 17.06 is out, which I will download now and see if it is fixed here.)
10 August 2017 at 14:02 #9913HugoKeymasterDear Vincent !
I hope you have a good start with SOFA.
Point by point:– dimensions: in SOFA, no unit is specified. This means that your 3D models (ex liver) and the physics parameters (ex: Young’s modulus) must be consistent. For instance, if your mesh is in millimeter, your Young’s modulus must be in MegaPascal. Is that clear?
Do not consider the dimensions of other objects in SOFA examples.– collision detection: in the same way, the numerical settings of the simulation and the collision detection, will depend on your dimensions. Could you show us your scene ? But as first guess, I would shorten the time step, and define larger alarm and contact distances.
– gravitational acceleration : again, seeing your scene would help to give you hints. Here, you should make sure there is not default rayleigh damping in your ODE solver. Until pull-request #350 default Rayleigh values were non-zero.
I hope this helps.
Best,Hugo
-
AuthorPosts
- You must be logged in to reply to this topic.