Forum Replies Created
-
AuthorPosts
-
IgorBlocked
Hello,
I have done some work on validation: basically comparing several forcefields in SOFA w.r.t. a real experiment with a phantom and simulation in Abaqus and FEBio.
I’ve created several slides which I put online:
https://drive.google.com/open?id=1QSKg-H-sE5VUmv9gsCUBT4ZykzHPs0dcIn any case, the validation was quite preliminary, done only for 1 scenario (cylinder under gravity) and the comparison was done only using the resulting geometry. Anyway, there were already numerous interesting findings concerning forcefields, solvers and other SOFA components.
The bottom line was that I reproduced, with quite a small error, the deformation of the real cylinder and those computed by in Abaqus and FEBio. At the same time, it was possible only with a careful choice of SOFA components.
I’d be happy to share more details if people are interested.
ip
IgorBlockedHello,
sorry for my late reply. I admit I do not understand your question completely.
First, for moving an object in small steps, you can use a controller or a constraint. Either you can implement one of those components in Python (controller) or C++ (constraint), or you can employ an existing one, such as LinearMovementConstraint or MechanicalStateController (see the scenes with these names in examples).
As for the quasi-static simulation itself, it’s a bit more tricky, since by default we are using the EulerImplicit integration, which is a dynamic integrator. Nonetheless, it can be used either as a second-order (the default option) or a first-order integrator. In the latter case, it is basically a quasi-static simulation (up to a factor of dt). However, according to your question it looks like if you preferred switching to “full dynamics” as soon as a contact appear. At this moment, we do not have such a functionality in SOFA (switching between quasi-statics and dynamics during the simulation).
Perhaps I did not get completely what you mean. 🙂 Do not hesitate to clarify your question; I’ll be happy to answer.
IgorBlockedPerfect, it compiles. Thanks!
Igor
IgorBlockedHello Fred,
thanks for your reply.
First, actually, I have XQuartz installed in version 2.7.8. So it seems that it might be an issue related to the recent version of XQuartz.
Second, I have also Xorg ports installed. However, I have not figured out how to tell CImg (or Image) to use Xservers from ports instead of XQuartz.
Finally, you say that cmake lets you know about missing Xserver. Nonetheless, the log you sent is related to DiffusionSolver which maybe checks the availability of XServer (I do not have this solver, so I cannot verify). As for CImg, IMHO its CMakeLists.txt does not include any dependency checking.
And a final remark — actually, I was using image plugin on my Mac OS X before without any problem in Yosemite (with XQuartz).
ip
-
AuthorPosts