Forum Replies Created
-
AuthorPosts
-
HugoKeymaster
Hi @rainvector
Your BilateralInteractionConstraint is overriden by the FixedConstraint which applies on the same DOFs. Remove it you’ll see the two parts of your object moving together.
Hugo
HugoKeymasterCould you point me out the tutorial scene you started from?
1. what do you mean by not working? before running your scene I needed to clean the naming (look at your spelling of Rayleigh). Then, when running it, it becomes unstable because you are applying a pressure in the surface cavity, and the mechanical model is only a triangular model (and no volumetric model). Did you change this yourself?
2. I am not sure understand your point. Mappings are using global coordinate. Could you detail here please?
3. “@..” means look at the context of the node above in the hierarchy graph (it’s an analogy with
cd ..
) while “@.” means the current context of the componentHope this helps.
BestHugo
31 May 2020 at 23:51 in reply to: [SOLVED] Issue while exporting tetrahedron mesh generated from polyhedron #16485HugoKeymasterHi @sukhraj
It seems the path is an issue. Could you try just with “test_out” ?
Regarding the MeshGenerator, it has only two outputs names:
MeshGenerator.outputPoints
andMeshGenerator.outputTetras
. Your writing is therefore incorrect, it should raise an error right?Best,
Hugo
HugoKeymasterHi @rainvector
I think this was solved here.
NB: it has recently been decided that a new stable branch would now derive from the last stable release (v20.06) and include all fixes and patches, in order for you to work in best conditions. Stay tuned.
Best
Hugo
HugoKeymasterHi @qzha862
Thank you for opening the issue #1389 on GitHub.
This was indeed an issue in the previous release. It was fixed in the master branch in the PR #1308.NB: it has recently been decided that a new stable branch would now derive from the last stable release (v20.06) and include all fixes and patches, in order for you to work in best conditions. Stay tuned.
Best
Hugo
31 May 2020 at 23:45 in reply to: SOFA scene with imposed displacements and Von Mises stress computation in 2D #16482HugoKeymasterHey @pvillard
1) The field indices of the
AffineMovementConstraint
is a list of integers corresponding to the indices of the constraint DOFs. I therefore don’t think that providing the field position of the loader as the input of indices is appropriate. If you want to constraint all points, you can create a box bounding the object and use the output indices.
As you noticed, the field translation is a Vector3 (you can make this translation in plane, i.e. 2D) and the rotation is a RotationMatrix. This one transformation will be applied on all selected indices.Do you want to constraint a different displacement for each point?
2)
WriteState
indeed exports the MechanicalState. To export any data, I would recommand to use the VTKExporter.Best,
Hugo
HugoKeymasterHi @ruofeng
The error in the console is giving you a hint:
[WARNING] [UniformMass(UniformMass)] indices vector size is <= 0
Here your MechanicalObject has a size 0, because your initialization is not properly defined. It should be:
... # Tool to load the mesh file of the silicone piece. It will be used for both the mechanical and the visual models. loader2 = rootNode.createObject("MeshSTLLoader", name="loader2", filename="mesh/cube.STL") # Basic mechanical modelling of the silicone piece elasticbody = rootNode.createChild("MechanicalBody") elasticbody.createObject("MechanicalObject", name="dofs", position=loader2.position, showObject=True, showObjectScale=5.0, rotation=[90.0, 0.0, 0.0]) elasticbody.createObject("UniformMass") ...
your MechanicalObject could also be initiated like:
elasticbody.createObject("MechanicalObject", name="dofs", position="@../loader2.position", showObject=True, showObjectScale=5.0, rotation=[90.0, 0.0, 0.0])
Let us know if this works fine.
Hugo
HugoKeymasterHi @jjcasmar
I never used myself the LinearVelocityConstraint.
This “finished” internal C++ variable is just used to detect when constraint velocity ends. If you need to have key times as well this can be a way to deal with the period after the constraint. There is no real correct or incorrect behavior.In your AngularVelocity, to my understanding, you should only need to implement the constraint on velocity.
Best
Hugo
HugoKeymasterHey guys, @pasquale94 @epernod @secretdevil,
Cool to see this hot topic guys!
I will try to drop a first page about topological changes in SOFA soon. I will keep you posted. Please do not hesitate to complete it anytime after.Best
Hugo
HugoKeymasterHey @eddhoare
I read maybe to fast your post, but you are saying that you are having damping effect due to stiffness, correct?
You should see your EulerImplicitSolver: you are adding Rayleigh damping related to stiffness. This numerical damping will therefore depend and act with the defined stiffness of your system. You should set it to 0 by default.Best,
Hugo
HugoKeymasterHugoKeymasterHi @amir,
Another on which we need to work on the documentation.
From the code you can read (in Ogden.h):Real k0=param.parameterArray[0]; Real mu1=param.parameterArray[1]; Real alpha1=param.parameterArray[2];
In the ParameterSet data of the TetrahedronHyperelasticityFEMForceField, you must therefore enter ParameterSet=”k mu alpha”. Let me know if it clarifies your point.
Best
Hugo
HugoKeymasterHi @alexftw
I am super familiar with the cable actuator, but I guess it could be combined with a beam model. Have you tested it yourself?
Best,
Hugo
Note: Even if it is a well-known plugin in the community, BeamAdapter is a private plugin. Only few people on the forum will be able to help.
HugoKeymasterHey @jake
Sorry for my late reply, I had no spare time this week to join you on the forum.
SubsetTopologyMapping is mostly used with ROI selectors. However, the SubsetTopologyMapping only requires that the subset topology corresponds to a part of the main topology, you can create your sub-topology outside from SOFA making yourself the selection. You could for instance use Paraview for this.Then, you load this sub-topology mesh in the sub node, and create the mapping between the two meshes (full mesh and sub-mesh).
I hope this helps.
Best,Hugo
HugoKeymasterHi @scharreyron
Sorry for the delay of my reply!
The crash you are undergoing is strange, it’s the first time it has been reported to us. Ensure compatibility on MacOS is actually always a bit challenging.Could you add to your environment variables the following paths:
/path_to_runSofa.app/Contents/MacOS/share/sofa/config/default/
?Best,
Hugo
HugoKeymasterHi @rainvector
1. Very interesting to read, yes we can definitely talk in private about your detection algorithm implementation for suturing simulation. You can use the contact form of SOFA website, I’ll reply personally.
2. Indeed, I am working on documenting the collision phase. In a second step, I would like the research community to bring some lights on such constraints (contact, puncture, cutting, path, friction). It’s not an aspect that I master, I will try to get information about how it was actually implemented.
3. Joint project, yes definitely! It’s a topic many people are interested in!
Best,
Hugo
HugoKeymasterHugoKeymasterHi @fleonard
Sorry for letting you down for so long.
I am currently working on a documentation of this part in SOFA. It should help the understanding of this dark part in SOFA!Which AnimationLoop are you using?
Yes there was a third party (private) plugins on continuous collision detection with implicit surfaces (I am unfortunately not knowledgeable about it). This work arose from the collaboration between two research teams. I could see to share this code if you’d like. To do so, we could Skype anytime in order to get some info/updates on your side.
Best,
Hugo
HugoKeymasterHi @eddhoare
Sorry for my delayed reply, weeks are busy.
You are right, the articulated system mapping is made up of articulation points for each rigid body appear, defined relatively one to another. No spring is defined (thus no deformation is possible). It is useful to describe robotic/cinematic structures, not deformable bodies.
In case you want a deformable chain, you must go for stiff springs and angular springs (and dampers): JointSpringForcefield, AngularSpringForcefield. I think you should go for this second option regarding your definition, even if for catheter modeling I still recomand to use a Beam approach, compatible with real-time constraints.
Best,
Hugo
HugoKeymasterHey
@epernod I added some text and image here about our discussion and about your profiler.
Do not hesitate to complete it.Shall I close the topic for now?
BestHugo
HugoKeymasterHi @qwe12050
Never feel this way, this forum is made for this! So use it as much as it can help you!
These vectors of integers respectively correspond to the indices of the object1 and object2 which you are about to constraint together.
Best wishes,
Hugo
HugoKeymasterNice @qwe12050
By the way it starts being a nice complicated scene, good to see that!
Good luck in the next steps and forum remains at your disposal!Best,
Hugo
HugoKeymasterHi @eliekhairallah
Have you paid attention to the second advice: prefer the MsBuild “Copy” task in an AfterBuild target over a post-build event
Hugo
HugoKeymasterLooking at this thread on the error MSB3073, the @secretdevil ‘s advice seems very good. Strange that running the compilation as an admin is not solving the issue.
Could you double check?
I also found the following advice: prefer the MsBuild “Copy” task in an AfterBuild target over a post-build event
I hope this can help.
Hugo
-
AuthorPosts