Home › Forum › SOFA › Using SOFA › [SOLVED] SubsetMultiMapping shows errors
Tagged: 64_bits, SOFA_1612, SubsetMultiMapping, Windows_7
- This topic has 4 replies, 2 voices, and was last updated 7 years ago by shang.
-
AuthorPosts
-
16 October 2017 at 08:08 #10076shangBlocked
hi everyone, does anyone have used SubsetMultiMapping?
actually,I want to use SubsetMultiMapping to map from a controlling point to the tip of a BeamFEM physical model(guidewire),
but there exists unclear problems in it, I can not really find any problems in my scene, does any can help me?
the xml file is illustrated below:<Node name="root" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <VisualStyle displayFlags="hideVisual showBehavior hideCollisionModels showMapping" /> <DefaultAnimationLoop name="defaultAnimationLoop" /> <DefaultVisualManagerLoop name="defaultVisualManagerLoop" /> <Node name="simulatedScene" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <EulerImplicitSolver tolerance="0.001" maxIt="1000"/> <CGLinearSolver name="linear solver" iterations="25" tolerance="1e-09" threshold="1e-09" /> <Node name="rigidNode" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <MechanicalObject template="Rigid3d" name="rigidNode_dof" position="0 0 0 0 0 0 1" /> <!-- <UniformMass template="Rigid" name="rigidNode_mass" totalmass="1" /> --> <FixedConstraint template="Rigid3d" name="rigidNode_fixedConstraint" indices="0" /> <Node name="mappedParticles" gravity="0 -10 0" dt="0.01"> <MechanicalObject template="Rigid3d" name="mappedParticles_dof" position="0 0 0 0 0 0 1 " /> <FixedConstraint template="Rigid3d" name="rigidNode_fixedConstraint" index="0" /> <RigidRigidMapping template="Rigid3d,Rigid3d" name="mappedParticles_mapping" input="@/simulatedScene/rigidNode/rigidNode_dof" output="@mappedParticles_dof" /> </Node> </Node> <Node name="independentParticles" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <MechanicalObject template="Rigid3d" name="independentParticles_dof" position="1 0 0 0 0 0 1 2 0 0 0 0 0 1 3 0 0 0 0 0 1 4 0 0 5 0 0 0 0 0 1 " restScale="1" /> <Node name="deformableGrid" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <MechanicalObject template="Rigid3d" name="deformableGrid_dof" position="0 0 0 0 0 0 1 1 0 0 0 0 0 1 2 0 0 0 0 0 1 3 0 0 0 0 0 1 4 0 0 0 0 0 1 5 0 0 0 0 0 1" /> <Mesh name="lines" lines="0 1 1 2 2 3 3 4 4 5" /> <SubsetMultiMapping template="Rigid3d,Rigid3d" name="deformableGrid_mapping" indexPairs="1 0 0 0 0 1 0 2 0 3 0 4" input="@/simulatedScene/independentParticles/independentParticles_dof @/simulatedScene/rigidNode/mappedParticles/mappedParticles_dof" output="@deformableGrid_dof" /> <BeamFEMForceField name="deformableBeam" poissonRatio="0.7" youngModulus="10000000000" radius="0.07" /> </Node> </Node> </Node> </Node>
the error showed in the console is “################ SIG11 – SIGSEGV: segfault ##########”
6 November 2017 at 10:30 #10115HugoKeymasterDear Xiaojuan,
First note that in your scene, tolerance and maxIt defined in EulerImplicitSolver are useless.
Moreover, your problem comes from the initialization of the MechanicalObject “independentParticles_dof”. Look at the position field, the 4th rigid particle is wrong defined (the quaternion is missing).
Here is a corrected version of your scene:
<Node name="root" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <VisualStyle displayFlags="hideVisual showBehavior hideCollisionModels showMapping" /> <DefaultAnimationLoop name="defaultAnimationLoop" /> <DefaultVisualManagerLoop name="defaultVisualManagerLoop" /> <Node name="simulatedScene" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <EulerImplicitSolver /> <CGLinearSolver name="linear solver" iterations="25" tolerance="1e-09" threshold="1e-09" /> <Node name="rigidNode" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <MechanicalObject template="Rigid3d" name="rigidNode_dof" position="0 0 0 0 0 0 1" /> <FixedConstraint template="Rigid3d" name="rigidNode_fixedConstraint" indices="0" /> <Node name="mappedParticles" gravity="0 -10 0" dt="0.01"> <MechanicalObject template="Rigid3d" name="mappedParticles_dof" position="0 0 0 0 0 0 1 " /> <FixedConstraint template="Rigid3d" name="rigidNode_fixedConstraint" indices="0" /> <RigidRigidMapping template="Rigid3d,Rigid3d" name="mappedParticles_mapping" input="@/simulatedScene/rigidNode/rigidNode_dof" output="@mappedParticles_dof" /> </Node> </Node> <Node name="independentParticles" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <MechanicalObject template="Rigid3d" name="independentParticles_dof" position="1 0 0 0 0 0 1 2 0 0 0 0 0 1 3 0 0 0 0 0 1 4 0 0 0 0 0 1 5 0 0 0 0 0 1 " restScale="1" /> <Node name="deformableGrid" gravity="0 -10 0" dt="0.01" time="0" animate="0" > <MechanicalObject template="Rigid3d" name="deformableGrid_dof" position="0 0 0 0 0 0 1 1 0 0 0 0 0 1 2 0 0 0 0 0 1 3 0 0 0 0 0 1 4 0 0 0 0 0 1 5 0 0 0 0 0 1" /> <Mesh name="lines" lines="0 1 1 2 2 3 3 4 4 5" /> <SubsetMultiMapping template="Rigid3d,Rigid3d" name="deformableGrid_mapping" indexPairs="1 0 0 0 0 1 0 2 0 3 0 4" input="@../independentParticles_dof @../../rigidNode/mappedParticles/mappedParticles_dof" output="@deformableGrid_dof" /> <BeamFEMForceField name="deformableBeam" poissonRatio="0.7" youngModulus="10000000000" radius="0.07" /> </Node> </Node> </Node> </Node>
Let me know if this helps (it should 😉 )
Hugo
9 November 2017 at 08:48 #10121shangBlockedSorry for my late reply, Hugo, it is very nice of you to help me, I see where the error comes from, I will try the correct version of .scn file ASAP, thank you again!
9 November 2017 at 09:16 #10122HugoKeymasterHi Xiaojuan,
No worries, do not hesitate to set this topic as solved as soon as it works for you!
Cheers,Hugo
10 November 2017 at 01:16 #10124shangBlockeddear Hugo, it is solved! thank you!!
-
AuthorPosts
- You must be logged in to reply to this topic.