Realtime inextensible surgical thread simulation
Abstract
Purpose
This paper discusses a realtime simulation method of inextensible surgical thread based on the Cosserat rod theory using positionbased dynamics (PBD). The method realizes stable twining and knotting of surgical thread while including inextensibility, bending, twisting and coupling effects.
Methods
The Cosserat rod theory is used to model the nonlinear elastic behavior of surgical thread. The surgical thread model is solved with PBD to achieve a realtime, extremely stable simulation. Due to the onedimensional linear structure of surgical thread, the direct solution of the distance constraint based on tridiagonal matrix algorithm is used to enhance stretching resistance in every constraint projection iteration. In addition, continuous collision detection and collision response guarantee a large time step and high performance. Furthermore, friction is integrated into the constraint projection process to stabilize the twining of multiple threads and complex contact situations.
Results
Through comparisons with existing methods, the surgical thread maintains constant length under large deformation after applying the direct distance constraint in our method. The twining and knotting of multiple threads correspond to stable solutions to contact and friction forces. A surgical suture scene is also modeled to demonstrate the practicality and simplicity of our method.
Conclusions
Our method achieves stable and fast simulation of inextensible surgical thread. Benefiting from the unified particle framework, the rigid body, elastic rod, and soft body can be simultaneously simulated. The method is appropriate for applications in virtual surgery that require multiple dynamic bodies.
Keywords
Cosserat rod Surgical thread Virtual surgery Positionbased dynamicsIntroduction
Surgical thread is a valuable material used during surgery that helps reduce tissue damage and accelerate wound healing. Existing suture training methods involve plastic materials or animal tissues as an alternative to human soft tissue. Virtual surgery systems serve as practical training aides for clinical operations, helping novices familiarize themselves with medical instruments and entire operation procedures by repeatedly simulating surgical maneuvers in a safe environment [1]. Therefore, an appropriate surgical thread simulation is necessary for improving virtual surgery systems. Training protocols that include suture steps in the procedure provide a more complete learning experience that enhances trainee immersion.
Surgical thread is represented as an elastic rod because it has an axial length that is much larger than the other two dimensions. An elastic rod exhibits typical nonlinear characteristics when deformed and can exhibit large bending and twisting strain with nearly constant length. The conventional elastic rod model is described by the Cosserat theory. A Cosserat rod is a physical model that describes an elastic rod utilizing the material frame and directional curve [2]. The primary goal of the realtime simulation of surgical thread is to quickly and stably represent the typical characteristics of real surgical thread, such as the coupling effects of bending and twisting and inextensible behavior.
The computer graphics community has devoted significant efforts toward building a realtime elastic rod; hair and rope simulations have been developed, and several applications in the field of game have modeled realtime elastic rods [3, 4, 5]. For example, the mass spring model (MSM) and the finite element model (FEM) have been optimized to construct hair and rope physical models [6, 7]. The MSM model is computationally fast but requires more complex topologies to support nonlinear behavior, which includes the bending and twisting of elastic rods. The FEM model, based on the Euler beam, has high accuracy but requires intensive calculations and a relatively small time step [8]. Therefore, Spillmann and Teschner introduced the simulation of Cosserat rod elements based on strain energy using the FEM model [2]. Additionally, Bergou et al. [9] manipulated the centerline of the elastic rod to yield a discrete format of the bend and twist energy equations. These methods have a high accuracy and can represent complex nonlinear deformation behaviors, although the numerical steps are time consuming. Some experts have applied these methods to realtime surgical thread simulations. Wang et al. [10] used the Kirchhoff rod to describe surgical thread with an inextensibility constraint, but this method was unable to achieve an extremely stable simulation to accommodate a large time step. By considering the high stability of positionbased dynamics (PBD), a large time step can be achieved [11]. Previously, Kubiak et al. [12] introduced a method based on PBD to simulate surgical thread, which allows fast and stable simulations, but it cannot describe the coupling effects of bending and twisting due to a weak physical foundation. Following this method, ghost points were introduced by Umetani el al. to represent the material frame as particles [13]. However, the bending and twisting constraint gradient directions have complicated formats, and computing them is time consuming. After quaternion is introduced into PBD, the constraint is expanded from a scalarvalued function to a vectorvalued function [14]. In a recent study, the material frame was parametrized as a quaternion. Thus, the format of the constraint gradient becomes concise, and the complexity is reduced during the constraint projection [15]. However, due to the fixed and limited iteration count used in the Gauss–Seidel method, its convergence cannot be guaranteed, causing the constant length requirement for the elastic rod to not always be fulfilled.
The scale of threads for surgery simulation is considerably lower than that for realtime graphics applications. However, surgical thread simulation has more requirements for expression precision related to the thread to thread interactions, thread to soft body and rigid body interactions, which involves collision detection and computing friction for multiple objects. Furthermore, in the representation of mechanical properties, bending and twisting coupling effects and inextensible behavior should be considered. These factors make the surgical thread simulations unique with distinct complexity. In addition to represent the surgical thread, the inextensible Cosserat rod can also be used for simulating other medical instruments such as interventional guidewire and gastric endoscope [16, 17]. Based on PBD, surgical thread simulation can be easily integrated into existing soft tissue deform simulation, representing a highly practical approach for medical development applications.

The use of PBD and continuous collision detection to achieve a large time step stable simulation of surgical thread with high computational performance;

The use of the onedimensional linear geometric feature of surgical thread to obtain strongly constrained inextensibility by directly solving the problem based on the tridiagonal matrix algorithm;

The use of the unified particle framework, including an elastic rod, soft body and rigid body, to simulate surgical suturing in a realtime application for fast, concise implementation.
Methods
Vectorvalue constraintbased PBD
PBD has been extensively used in applications ranging from soft body simulation to rigid body and fluid simulations [18]. Overall, PBD still is a constraintbased optimization problem. However, the basic independent variable is expressed as two forms: a position vector and an orientation quaternion. The dependent variable is a vector value. Here, we clarify the unified particle framework based on PBD; more detailed descriptions of the improved process can be found in previous works [11, 13, 14, 15, 18].
The above derivation shows that the dynamic body simulated by the PBD should be initially discretized as a set of positions and orientations. Then, the constraint function should be provided to constrain the state of the positions and orientations. In the solution stage, the main goal is to optimize the solution of the positions and orientations to fulfill the current constraint function. Therefore, the key is to find concise and effective forms of constraint functions to represent dynamic behaviors.
Algorithm flow of a unified particle framework
One advantage of using PBD to simulate dynamic bodies is that the soft body, rigid body, and elastic rod can be solved with the unified particle framework [19]. In realtime applications of virtual surgery, a functional, whole scene always contains multiple types of dynamic bodies, such as surgical instruments, suture needles, and soft tissues. Integrating the existing PBD and our method to achieve the physical visible for different objects in solving stage greatly improves the stability of the multiple body dynamics. The algorithm flow of the unified particle framework is described below.
Discrete Cosserat rod
Direct distance constraint (DDC)
In most real clinical situations, surgical thread interacts with an instrument. In considering this factor (Fig. 4), a point was fixed to the instrument handle with the inverse of the point mass set to 0. Thus, the surgical thread was implicitly separated into two inextensible elastic rods.
Continuous collision detection and responses
In the surgical thread suture process, multiple contacts between threads and instruments occur during knot tying [22]. Due to the large deformation, selfcollision and intersection occur very often. Additionally, the diameter of the surgical thread is small, and discrete collision detection would fail under a large relative velocity and simulation time step [23]. Considering the above situation, continuous collision detection based on the spatial hash method was applied to yield robust contact information [24]. Here, we provide a bottomup interpretation (Fig. 5).

Continuous collision constraint: \(C_{\mathrm{c}} \left( {{{\varvec{p}}}_1 ,{{\varvec{p}}}_2 } \right) =\left( {{{\varvec{p}}}_1 {{\varvec{p}}}_2 } \right) \cdot \mathbf{normal}{d}\). This constraint maintains the relative position of the two particles as a function of collision time. The distance between two contact particles is larger than the surgical thread diameter to avoid overlap.

Friction constraint: \(C_{\mathrm{f}} \left( {{{\varvec{p}}}_1 ,{{\varvec{p}}}_2 } \right) ={k}\left {\frac{{{\varvec{p}}}_1 {{\varvec{p}}}_2 }{\left {{{\varvec{p}}}_1 {{\varvec{p}}}_2 } \right }\times \mathbf{normal}} \right \) (the gradient derivation in “Appendix” section). This constraint tries to maintain the direction of the current location to match the normal direction in the state of collision time. The parameter k is the friction strength and is between 0 and 1; the friction force is smaller when k is closer to 0. When \(k = 1\), the contact point cannot move perpendicular to the normal direction.
Energy dissipation
Model rendering and scene building
To build a complete highquality software program, the Unity3D engine was used for multiple platform development [26]. The complex numerical computation and data communication were managed under the crossplatform Mono .NET framework using C# programming language. Thus far, we have explained the implementation of the complete system including calculation and rendering. The above section contains the most vital part of the realtime inextensible surgical thread simulation.
Results
Our method and test environment were based on the Unity3D engine, which was run on a Windows platform with an Intel Core i77700 CPU @ 3.6 GHz and NVIDIA GTX 1070 GPU. The program runs in a single thread without multiple thread optimization for comparing computational costs.
Comparison between different PBD methods
To test the different PBD method applied to simulate surgical thread, we built a scene with one surgical thread fixed at two ends. The surgical thread was constructed with 40 rod elements. The total length was 15 cm. During the deformation process, the two ends of the surgical thread underwent a 5cm relative translation with a 360degree relative rotation. Here, we compare our method with a positionbased elastic rods (PBER) proposed by Umetani et al. and PBD that uses distance and bending constraints.
Figure 8 illustrates the final form of the surgical thread using the different methods. We observed that our method and the PBER method generated realistic bending and twisting coupling effects not similar to those of the simple PBD. Additionally, we recorded the physical computation time during the simulation. Our method cost an average of 2.68 ms per frame. The PBER method costs an average of 32.44 ms per frame. The PBD with the simple constraint costs an average of 2.24 ms per frame. Therefore, compared to the PBER method, our method required less time and yielded good frame rate performance with a very similar effect.
Through adjusting the stiffness of bending and twisting constraint, our method is able to simulate surgical threads with different bending and twisting modulus. As shown in Fig. 9, the left end of surgical thread is fixed. The right end rotates \(10\pi \) radians around the world horizontal axis. With the constant twisting stiffness \({K}_{\mathrm{t}} \), the surgical thread winds less circles, while the bending stiffness \({K}_{\mathrm{b}} \) decreases. It reflects the positive correlation between constraint stiffness and physical parameters. In addition, a surgical thread is simulated by our method and [9] separately. The left end of surgical thread is fixed, and the right end of it falls down. We record the state of 0, 0.1 and 0.2 s. Figure 10 shows the similar effects of our method to the discrete elastic rod. The bending modulus of discrete elastic rod is 2 GPa, and the twisting modulus is 10 GPa. The bending stiffness of our method is 0.05, and the twisting stiffness of our method is 0.25. However, it is hard to find the exact relationship between the constraints stiffness and the physical parameters. But it is easy to control the model behavior through adjusting the constraint stiffness.
Inextensible effect of surgical thread
To test the constraint strength for constant length of the DDC, we compared two surgical threads either with or without the DDC constraints; the other parameters of the surgical thread remained unchanged. The surgical thread is constructed as 120 rod elements, and the total length was 15 cm. In the scene, one end of the surgical thread was pinned, and the other end was dropped and hung freely due to gravity. To illustrate the effect of bending and twisting, the default shape of the surgical thread was a spiral. As shown in Fig. 13, we captured the scene view, the length, and the time cost per frame for 5, 10, 20, and 40 iteration counts.
Intuitively, as shown from left to right in Fig. 13, for the same iteration count, the length of the surgical thread with the DDC was generally smaller than that without the DDC and was closer to the original length.
Additionally, as shown by the images in Fig. 13 from top to bottom, for different iteration counts, we observed that the length of the surgical thread without the DDC gradually shortened to the original length. However, the length of surgical thread with the DDC remained stable and was very close to the original length. The above conclusions are depicted more accurately in Fig. 14. When the iteration counts increased, the length elongation of the surgical thread with DDC was always less than 3.2% and remained stable, whereas the length elongation of the surgical thread without the DDC exhibited a decreasing trend. However, the minimum length elongation of 4.2% was achieved at 40 iterations, and the maximum length elongation of 38.9% was observed at 5 iterations, both of which are greater than the elongation with the DDC.
Figure 15 presents the time costs of these two surgical thread simulations after different numbers of iterations. For these limited data, the time cost per frame and iteration count were linearly related. The time cost per frame of the surgical thread simulation with the DDC was slightly longer than that without the DDC. However, even after 40 iterations, the time cost remained close to realtime conditions.
Complex contact resolution
To check the interaction between surgical thread and a rigid body, a cylinder was constructed with surgical thread (Fig. 17), and a single throw was tied around the cylinder as shown in Fig. 17b. Figure 17c shows that the friction constraint between the rigid body and the surgical thread caused by spiral winding indicated no relative slip.
We constructed three surgical threads wound around each other as shown in Fig. 18. Almost three complete threads were required for collision constraints, whereas the effect remained stable without sliding or penetrating. Figure 18c illustrates the corresponding solution results of the physical particles.
Soft tissue suturing simulation
Conclusions
Due to longstanding problems with PBD, simulation effects are related to the iteration count and stiffness parameter. Additionally, the deformation calculation is based on directly correcting the position of particles, and therefore, the forcerelated effects cannot be easily calculated. In the future, extended positionbased dynamics (XPBD) can be used to decouple the iteration count to more easily control simulation effects [27, 28]. For more precisely representing the Coulomb model, the relationship between constraint stiffness and embedding distance should be considered during the collision of two segments.
In virtual surgery system, force feedback can be used to measure the effectiveness of operation and enhance the immersion of operators. Although in our method, it is not able to directly obtain the force on the surgical thread. But still there are two ways to extend it for forcebased application. One is trying to integrate exist forcebased method with PBD, such as mass spring model or finite element method. Another way is to extend the PBD, such as the XPBD, it introduces the constraint energy and compliance parameter for measuring the constraint force, and it only increases a little time consumption and can be applied to our method directly. Therefore, it is easily to produce the force for later forcebased application based on our method. Meanwhile, the mechanics experiment on the real surgical thread should be conducted to measure the accuracy of those simulation methods.
Additionally, considering the general applications of the Cosserat rod to the medical field, the interventional guidewire and the gastric endoscope could also be simulated using our framework. Figure 20 presents a demonstration of the interventional operation process, in which the guidewire reflects real characteristics, including twisting and bending effects. Therefore, it is important to extend the applications of our method.
Notes
Acknowledgements
This work was supported by the National High Technology Research and Development Program of China (Grant No. 2012AA02A606).
Compliance with ethical standards
Conflict of interest
Both authors declare that they have no conflict of interest.
Ethical approval
This article does not contain any studies with human participants or animals performed by any of the authors.
Informed consent
This article does not contain patient data.
References
 1.Famaey N, Sloten JV (2008) Soft tissue modelling for applications in virtual surgery and surgical robotics. Comput Methods Biomech Biomed Eng 11(4):351–366. https://doi.org/10.1080/10255840802020412 CrossRefGoogle Scholar
 2.Spillmann J, Teschner M (2007) CORDE: Cosserat rod elements for the dynamic simulation of onedimensional elastic objects. In: Eurographics/ACM SIGGRAPH symposium on computer animation. Eurographics Association, San Diego, pp 63–72. https://doi.org/10.2312/SCA/SCA07/063072
 3.Wang W, Zhou C, Yang Y, Wang X, Qu J (2015) Flexible rope simulation based on improved massspring model. J Comput Aided Des Comput Graph 27:2230–2236Google Scholar
 4.Bretl T, McCarthy Z (2013) Equilibrium configurations of a Kirchhoff elastic rod under quasistatic manipulation. In: Algorithmic foundations of robotics X. https://doi.org/10.1007/9783642362798_5
 5.Wei GW, Xin C (2016) Mechanics model and its equation of wire rope based on elastic thin rod theory. Int J Solids Struct 102:21–29. https://doi.org/10.1016/j.ijsolstr.2016.10.021 Google Scholar
 6.Selle A, Lentine M, Fedkiw R (2008) A mass spring model for hair simulation. ACM Trans Graph 27:1–11. https://doi.org/10.1145/1399504.1360663 CrossRefGoogle Scholar
 7.Vu TD, Durville D, Davies P (2015) Finite element simulation of the mechanical behavior of synthetic braided ropes and validation on a tensile test. Int J Solids Struct 58:106–116. https://doi.org/10.1016/j.ijsolstr.2014.12.022 CrossRefGoogle Scholar
 8.Huang P, Chao JG (2013) Research progress on physicallybased models of guidewire/catheter simulation for virtual intervention. J Syst Simul 25(4):687–692Google Scholar
 9.Bergou M, Wardetzky M, Robinson S, Audoly B, Grinspun E (2008) Discrete elastic rods. ACM Trans Graph 27:1–12. https://doi.org/10.1145/1399504.1360662 CrossRefGoogle Scholar
 10.Wang ZJ, Fratarcangeli M, Ruimi A, Srinivasa AR (2017) Real time simulation of inextensible surgical thread using a Kirchhoff rod model with force output for haptic feedback applications. Int J Solids Struct 113:192–208. https://doi.org/10.1016/j.ijsolstr.2017.02.017 CrossRefGoogle Scholar
 11.Müller M, Heidelberger B, Hennix M, Ratcliff J (2007) Position based dynamics. J Vis Commun Image Represent 18:109–118. https://doi.org/10.1016/j.jvcir.2007.01.005 CrossRefGoogle Scholar
 12.Kubiak B, Pietroni N, Ganovelli F (2007) A robust method for realtime thread simulation. In: ACM symposium on virtual reality software and technology. ACM, Newport Beach, pp 85–88. https://doi.org/10.1145/1315184.1315198
 13.Umetani N, Schmidt R, Stam J (2014) Positionbased elastic rods. In: Eurographics/ACM SIGGRAPH symposium on computer animation. Eurographics Association, Copenhagen, pp 21–30. https://doi.org/10.1145/2614106.2614158
 14.Deul C, Charrier P, Bender J (2014) Positionbased rigidbody dynamics. Comput Anim Virtual Worlds 27(2):103–112. https://doi.org/10.1002/cav.1614 CrossRefGoogle Scholar
 15.Kugelstadt T, Schömer E (2016) Position and orientation based Cosserat rods. In: ACM SIGGRAPH/Eurographics symposiom on computer animation. Eurographics Association, Zurich, pp 169–178Google Scholar
 16.Korzeniowski P, White RJ, Bello F (2017) VCSim3: a VR simulator for cardiovascular interventions. Int J Comput Assist Radiol Surg 13(1):135–149. https://doi.org/10.1007/s1154801716791 CrossRefPubMedPubMedCentralGoogle Scholar
 17.Chentanez N, Alterovitz R, Ritchie D, Cho L, Hauser KK, Goldberg K, Shewchuk JR, O’Brien JF (2009) Interactive simulation of surgical needle insertion and steering. ACM Trans Graph 28(3):88. https://doi.org/10.1145/1531326.1531394 CrossRefGoogle Scholar
 18.Bender J, Müller M, Otaduy MA, Teschner M, Macklin M (2015) A survey on positionbased simulation methods in computer graphics. Comput Graph Forum 33:228–251. https://doi.org/10.1111/cgf.12346 CrossRefGoogle Scholar
 19.Macklin M, Müller M, Chentanez N, Kim TY (2014) Unified particle physics for realtime applications. ACM Trans Graph 33(4):153. https://doi.org/10.1145/2601097.2601152 CrossRefGoogle Scholar
 20.Jung P, Leyendecker S, Linn J, Ortiz M (2011) A discrete mechanics approach to the Cosserat rod theory—part 1: static equilibria. Int J Numer Methods Eng 85:31–60. https://doi.org/10.1002/nme.2950 CrossRefGoogle Scholar
 21.Han D, Harada T (2013) Tridiagonal matrix formulation for inextensible hair strand simulation. In: Workshop on virtual reality interaction and physical simulation. https://doi.org/10.2312/PE.vriphys.vriphys13.011016
 22.Brown J, Latombe JC, Montgomery K (2004) Realtime Knottying simulation. Vis Comput 20:165–179. https://doi.org/10.1007/s003710030226y CrossRefGoogle Scholar
 23.Spillmann J, Teschner M (2010) An adaptive contact model for the robust simulation of knots. Comput Graph Forum 27:497–506. https://doi.org/10.1111/j.14678659.2008.01147.x CrossRefGoogle Scholar
 24.Teschner M, Heidelberger B, Müller M, Pomerantes D, Gross MH (2003) Optimized spatial hashing for collision detection of deformable objects. In: Proceedings of vision, modeling, visualization. AKA, Munich, pp 47–54Google Scholar
 25.Vaillant R, Barthe L, Guennebaud G, Cani MP, Rohmer D, Wyvill B, Gourmel O, Paulin M (2013) Implicit skinning: realtime skin deformation with contact modeling. ACM Trans Graph 32:1–12. https://doi.org/10.1145/2461912.2461960 CrossRefGoogle Scholar
 26.Unity3D. https://www.unity3d.com. Accessed 5 Sept 2017
 27.Macklin M, Müller M, Chentanez N (2016) XPBD: positionbased simulation of compliant constrained dynamics. In: International conference on motion in games, pp 49–54. https://doi.org/10.1145/2994258.2994272
 28.Deul C, Kugelstadt T, Weiler M, Bender J (2018) Direct positionbased solver for stiff rods. Comput Graph Forum. https://animation.rwthaachen.de/publication/0557/. Accessed 2 Mar 2018
Copyright information
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.