Unexpected reduction of DOFs when using SI units (WireRestShape / WireBeamInterpolation) #5887
-
|
Hello everyone, I am currently working with the BeamAdapter plugin and noticed an unexpected behavior when switching my scene from mm-based units to SI units (meters). To isolate the issue, I created an example scene, where you can choose between two instruments "sheath" (in mm) and "sheath_SI" (in m) Here is the scene: What i observed for the case of SI-units ("sheath_SI"): Increasing nbBeams for the RodSpireSection does not lead to a corresponding increase in DOFs. Regardless of how large I choose nbBeams, only up to 3 DOFs are created. Inspecting the scene graph shows that in the length_list of WireBeamInterpolation, the beam lengths of each beam seem to never get below ~0.01, even though it should do so, because of the small total length. In contrast, when using mm ("sheath") units, the discretization behaves as expected. My question: Is there some sort of threshhold I can adapt to avoid this behavior, or is there another way to correctly model a beam with small lengths like in this example? Thanks for any kind of support :) |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
|
Update/Solution: In the InterventionalRadiologyController there is a parameter threshold which is homogeneous to the length unit used in the simulation. Setting the threshold to a smaller SI-consistent value fixed my issue: |
Beta Was this translation helpful? Give feedback.
Update/Solution:
In the InterventionalRadiologyController there is a parameter threshold which is homogeneous to the length unit used in the simulation.
The default value is: threshold = 0.01
When using SI units (meters), this corresponds to a minimum allowed beam segment length of 1 cm.
Setting the threshold to a smaller SI-consistent value fixed my issue:
threshold = 0.01e-3 # 10 µm