Skip to main content
Log in

Passivity-preserving splitting methods for rigid body systems

  • Published:
Multibody System Dynamics Aims and scope Submit manuscript

Abstract

A rigid body model for the dynamics of a marine vessel, used in simulations of offshore pipe-lay operations, gives rise to a set of ordinary differential equations with controls. The system is input–output passive. We propose passivity-preserving splitting methods for the numerical solution of a class of problems which includes this system as a special case. We prove the passivity-preservation property for the splitting methods, and we investigate stability and energy behaviour in numerical experiments. Implementation is discussed in detail for a special case where the splitting gives rise to the subsequent integration of two completely integrable flows. The equations for the attitude are reformulated on \(\mathit{SO}(3)\) using rotation matrices rather than local parameterisations with Euler angles.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. \(Q:=R_{b}^{e}\) in the notation of [26] and [10].

  2. \(y_{n+1}=y_{n}+\frac{h}{2} ( f(y _{n})+f(y_{n}+hf(y_{n})) )\).

References

  1. Baker, A.: Matrix Groups: An Introduction to Lie Group Theory. Springer Undergraduate Mathematics Series. Springer, London (2002)

    Book  MATH  Google Scholar 

  2. Blanes, S., Casas, F., Murua, A.: Splitting methods in the numerical integration of non-autonomous dynamical systems. Rev. R. Acad. Cienc. Exactas Fís. Nat., Ser. A Mat. 106(1), 49–66 (2012). https://doi.org/10.1007/s13398-011-0024-8

    Article  MathSciNet  MATH  Google Scholar 

  3. Blanes, S., Casas, F., Murua, A.: Splitting methods with complex coefficients. Bol. Soc. Esp. Mat. Apl. 50, 47–61 (2010)

    MathSciNet  MATH  Google Scholar 

  4. Blanes, S., Casas, F., Ros, J.: High order optimised geometric integrators for linear differential equations. BIT Numer. Math. 42(2), 262–284 (2002). https://doi.org/10.1023/A:1021942823832

    Article  MATH  Google Scholar 

  5. Bou Rabee, N., Marsden, J.E.: Hamilton–Pontryagin integrators on Lie groups Part I: Introduction and structure-preserving properties. Found. Comput. Math. 9, 197–219 (2009). https://doi.org/10.1007/s10208-008-9030-4

    Article  MathSciNet  MATH  Google Scholar 

  6. Celledoni, E., McLachlan, R.I., McLaren, D.I., Owren, B., Quispel, G.W.R., Wright, W.: Energy-preserving Runge–Kutta methods. Modél. Math. Anal. Numér. 43(4), 645–649 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  7. Celledoni, E., Säfström, N.: Efficient time-symmetric simulation of torqued rigid bodies using Jacobi elliptic functions. J. Phys. A 39(19), 5463–5478 (2006). https://doi.org/10.1088/0305-4470/39/19/S08

    Article  MathSciNet  MATH  Google Scholar 

  8. Celledoni, E., Fassò, F., Säfström, N., Zanna, A.: The exact computation of the free rigid body motion and its use in splitting methods. SIAM J. Sci. Comput. 30(4), 2084–2112 (2008). https://doi.org/10.1137/070704393

    Article  MathSciNet  MATH  Google Scholar 

  9. Egeland, O., Gravdahl, J.T.: Modeling and Simulation for Automatic Control. Marine Cybernetics, Trondheim (2002). Corrected second printing (2003)

    Google Scholar 

  10. Fossen, T.I.: Marine Control Systems. Marine Cybernetics, Trondheim (2002)

    Google Scholar 

  11. Jensen, G.A., Säfström, N., Nguyen, T.D., Fossen, T.I.: Modeling and control of offshore pipelay operations based on a finite strain pipe model. In: Proceedings of American Control Conference, St. Louis, MO, USA, pp. 4717–4722 (2009). https://doi.org/10.1109/ACC.2009.5160110

    Google Scholar 

  12. Jensen, G.A., Säfström, N., Nguyen, T.D., Fossen, T.I.: A nonlinear PDE formulation for offshore vessel pipeline installation. Ocean Eng. 37(4), 365–377 (2010). https://doi.org/10.1016/j.oceaneng.2009.12.009

    Article  Google Scholar 

  13. Gustafsson, E.: Accurate discretizations of torqued rigid body dynamics. Master thesis, Norwegian University of Science and Technology, Trondheim (2010)

  14. Hairer, E.: Energy-preserving variant of collocation methods. J. Numer. Anal. Ind. Appl. Math. 5, 73–84 (2010)

    MathSciNet  MATH  Google Scholar 

  15. Hairer, E., Lubich, C., Wanner, G.: Geometric Numerical Integration. Springer Series in Computational Mathematics, vol. 31. Springer, Berlin (2006)

    MATH  Google Scholar 

  16. Hairer, E., Wanner, G.: Solving Ordinary Differential Equations II. Springer Series in Computational Mathematics, vol. 14. Springer, Berlin (1996)

    Book  MATH  Google Scholar 

  17. Holm, D.D.: Geometric Mechanics, Part II: Rotating, Translating and Rolling. Imperial College Press, London (2008)

    Book  MATH  Google Scholar 

  18. Lamb, H.: Hydrodynamics, 4th edn. Cambridge University Press, Cambridge (1916)

    MATH  Google Scholar 

  19. Kirchhoff, G.R.: Ueber die Bewegung eines Rotationskörpers i einer Flüssigkeit. Crelle t. LXXI (1869) [Ges. Abh. p. 376], Mechanik, c. XIX

  20. Marsden, J.E., Ratiu, T.S.: Introduction to Mechanics and Symmetry: A Basic Exposition of Classical Mechanical Systems, 2nd edn. Texts in Applied Mathematics, vol. 17. Springer, New York (1999)

    Book  MATH  Google Scholar 

  21. Marsden, J.E., West, M.: Discrete mechanics and variational integrators. Acta Numer. 10, 357–514 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  22. McLachlan, R.I., Quispel, G.R.W., Robidoux, N.: Geometric integration using discrete gradients. Philos. Trans. R. Soc. A, Math. Phys. Eng. Sci. 357, 1021–1045 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  23. MSS. Marine Systems Simulator (2010). http://www.marinecontrol.org. Viewed 2014-04-04

  24. Müller, A.: Screw and Lie group theory in rigid body dynamics. Multibody Syst. Dyn. 42, 219–248 (2018). https://doi.org/10.1007/s11044-017-9583-6

    Article  MathSciNet  MATH  Google Scholar 

  25. Jahnke, T., Lubich, C.: Error bounds for exponential operator splitting. BIT Numer. Math. 40, 735–744 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  26. Perez, T., Fossen, T.I.: Kinematic models for manoeuvring and seakeeping of marine vessels. Model. Identif. Control 28(1), 19–30 (2007). https://doi.org/10.4173/mic.2007.1.3

    Article  Google Scholar 

  27. Säfström, N.: Modeling and simulation of rigid body and rod dynamics via geometric methods. PhD thesis, Norwegian University of Science and Technology, Trondheim (2009)

  28. Van der Schaft, A.: Port-Hamiltonian Systems: An Introductory Survey. European Mathematical Society Publishing House (EMS Ph), Madrid (2006)

    MATH  Google Scholar 

Download references

Acknowledgements

This work has received funding from the European Unions Horizon 2020 research and innovation programme under the Marie Skłodowska-Curie grant agreement No. 691070, and from The Research Council of Norway. We are grateful to T.I. Fossen for useful discussions. We are also grateful to Sergio Blanes and Fernando Casas for useful discussions regarding splitting methods, and for providing highly accurate coefficients for the splitting methods of order 4 and 6 used in the numerical experiments. Part of this work was done while visiting Massey University, Palmerston North, New Zealand, and La Trobe University, Melbourne, Australia.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Elena Celledoni.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: Euler parameters

We here review briefly the main properties of quaternions and Euler parameters. More information on this subject can be found, e.g. in [20]. The set of quaternions,

$$ \mathbb{H}:=\bigl\{ q=(q_{0},\mathbf{q})\in\mathbb{R}\times \mathbb{R}^{3}, \, \mathbf{q}=[q_{1},q_{2},q_{3}]^{T} \bigr\} \cong\mathbb{R}^{4}, $$

is a strictly skew field [1]. Addition and multiplication of two quaternions, \(p=(p_{0},\mathbf{p})\), \(q=(q_{0},\mathbf{q}) \in\mathbb{H}\), are defined by

$$ p+q:=(p_{0}+q_{0},\mathbf{p}+\mathbf{q}), $$

and

$$ pq:=\bigl(p_{0}q_{0}-\mathbf{p}^{T} \mathbf{q},p_{0}\mathbf{q}+q_{0} \mathbf{p}+\mathbf{p} \times\mathbf{q}\bigr). $$
(A.1)

For \(q\neq(0,\mathbf{0})\) there exists an inverse

$$ q^{-1}:=q^{c}/\| q\|^{2},\quad\|q\| := \sqrt {q_{0}^{2} + \| \mathbf{q}\|_{2}^{2}}, $$

where \(q^{c}:=(q_{0},-\mathbf{q})\) is the conjugate of \(q\), such that \(qq^{-1}=q^{-1}q= e=(1,\mathbf{0})\). In the sequel we will consider \(q\in\mathbb{H}\) as a vector \(q=[q_{0},q_{1},q_{2},q_{3}]^{T}\in \mathbb{R}^{4}\). The multiplication rule (A.1) can then be expressed by means of a matrix–vector product in \(\mathbb{R}^{4}\). Namely, \(pq=L(p)q=R(q)p\), where

$$ L(p):=\left [ \textstyle\begin{array}{c@{\quad}c} p_{0}&-\mathbf{p}^{T} \\ \mathbf{p} & p_{0}I+\widehat{\mathbf{p}} \end{array}\displaystyle \right ] , \qquad R(q):=\left [ \textstyle\begin{array}{c@{\quad}c} q_{0}&-\mathbf{q}^{T} \\ \mathbf{q} & q_{0}I-\widehat{\mathbf{q}} \end{array}\displaystyle \right ] , $$

and \(I\) is the \(3\times3\) identity matrix. Note that \(R(q)\) and \(L(p)\) commute, i.e. \(R(q)L(p)=L(p)R(q)\).

Three-dimensional rotations in space can be represented by Euler parameters, i.e. unit quaternions

$$ \mathbb{S}^{3}:=\{q \in\mathbb{H}\, | \, \|q\|=1 \}. $$

Equipped with the quaternion product, \(\mathbb{S}^{3}\) is a Lie group, with \(q^{-1}=q^{c}\) and \(e = (1,\mathbf{0})\) as the identity element. There exists a (surjective \(2:1\)) group homomorphism (the Euler–Rodriguez map) \(\mathcal{E}:\mathbb{S}^{3} \to\mathit{SO}(3)\), defined by

$$ \mathcal{E}(q) := I +2q_{0}\widehat{\mathbf{q}}+2\widehat{\mathbf{q}} ^{2}. $$

The Euler–Rodriguez map can be explicitly written as

$$ \mathcal{E}(q) = \left [ \textstyle\begin{array}{c@{\quad}c@{\quad}c} 1-2(q_{2}^{2}+q_{3}^{2})& 2(q_{1}q_{2}-q_{0}q_{3})& 2(q_{0}q_{2}+q _{1}q_{3}) \\ 2(q_{0}q_{3}+q_{1}q_{2})&1-2(q_{1}^{2}+q_{3}^{2})&2(q_{2}q_{3}-q_{0}q _{1}) \\ 2(q_{1}q_{3}-q_{0}q_{2})&2(q_{0}q_{1}+q_{2}q_{3})&1-2(q_{1}^{2}+q_{2} ^{2}) \end{array}\displaystyle \right ] . $$

A rotation in \(\mathbb{R}^{3}\),

$$ \mathbf{w}=Q\mathbf{u},\quad Q\in\mathit{SO}(3), \quad\mathbf{u},\mathbf{w} \in \mathbb{R}^{3}, $$

can, for some \(q\in\mathbb{S}^{3}\), be expressed in quaternionic form as

$$ w=L(q)R\bigl(q^{c}\bigr) u= R\bigl(q^{c} \bigr)L(q) u, \quad u=(0,\mathbf{u}),\ w=(0, \mathbf{w})\in\mathbb{H}_{\mathcal{P}}, $$

where \(\mathbb{H}_{\mathcal{P}}:=\{q\in\mathbb{H}\, | \, q_{0}=0 \} \cong\mathbb{R}^{3}\) is the set of so called pure quaternions.

1.1 A.1 The Lie algebra \(\mathfrak{s}^{3}\)

If \(q\in\mathbb{S}^{3}\), it follows from \(qq^{c}=e\) that

$$ \mathfrak{s}^{3}:=T_{e}\mathbb{S}^{3}= \mathbb{H}_{\mathcal{P}}. $$

The Lie algebra \(\mathfrak{s}^{3}\), associated with \(\mathbb{S}^{3}\), is equipped with a Lie bracket \([\, \cdot\, ,\cdot\,]_{\mathfrak{s}}: \mathfrak{s}^{3}\times\mathfrak{s}^{3} \to\mathfrak{s}^{3}\),

$$ [\,u\, , w\,]_{\mathfrak{s}}:= L(u)w-L(w)u=(0,2 \mathbf{u}\times \mathbf{w}), $$

where \(u=(0,\mathbf{u})\), \(w=(0,\mathbf{w})\).

The derivative map of ℰ is \(\mathcal{E}_{*} =T_{e} \mathcal{E}:\mathfrak{s}^{3}\to\mathfrak{so}(3)\). This map, given by

$$ \mathcal{E}_{*}(u)=2\widehat{\mathbf{u}},\quad u=(0, \mathbf{u}), $$

is a Lie algebra isomorphism. Assume now that \(q\in\mathbb{S}^{3}\) is such that \(\mathcal{E}(q(t))=Q(t)\), then \(L(q^{c})\dot{q}\in \mathfrak{s}^{3}\), \(Q^{T}\dot{Q}\in\mathfrak{so}(3)\) and

$$ \mathcal{E}_{*}\bigl(L\bigl(q^{c}\bigr) \dot{q}\bigr) = Q^{T}\dot{Q}. $$
(A.2)

Furthermore, it can be shown that

$$ \mathcal{E}_{*}\bigl(L(q)R\bigl(q^{c}\bigr) u \bigr) = 2 \widehat{\mathcal{E}(q)\mathbf{u}} \quad \forall q\in \mathbb{S}^{3} ,\, u=(0,\mathbf{u}) \in\mathfrak{s} ^{3}. $$
(A.3)

As a consequence of (A.2) and (A.3), the kinematics of the attitude of the vessel (23) can be expressed in Euler parameters in \(\mathbb{S}^{3}\) as

$$ \dot{q} = \frac{1}{2}q\,\omega, \quad \omega=(0, \boldsymbol{\omega}). $$
(A.4)

Appendix B: The equations using Euler parameters

We rewrite the equations (31), (32), (33), (34), using (A.4) to represent the attitude with Euler parameters. Note that if \(q \in \mathbb{S}^{3}\) is known, we also know the Euler angles \({\boldsymbol{\theta}}\) from a transformation between the two representations:

$$\begin{aligned} \dot{\mathbf{p}} &= \mathbf{p}\times\boldsymbol{\omega} - \bigl( D_{t}\mathbf{v}+\mathcal{E}(q)^{T}\mathbf{g}_{t}^{s}- \boldsymbol{\tau}_{t} \bigr) , \\ \dot{\mathbf{m}} &= \mathbf{m} \times\boldsymbol{\omega} + \mathbf{p}\times \mathbf{v}- \bigl( D_{r}\boldsymbol{\omega}+ \mathcal{E}(q)^{T} \mathbf{g}_{r}^{s}-{\boldsymbol{\tau}}_{r} \bigr) , \\ \dot{q} &= \frac{1}{2}q\,\omega, \quad \omega=(0,\boldsymbol{\omega}), \\ \dot{\mathbf{x}} &= \mathcal{E}(q)\,\mathbf{v}, \\ \dot{\boldsymbol{\varphi}}_{\boldsymbol{\theta}} &= \tilde{{\boldsymbol{\theta}}}, \\ \dot{\boldsymbol{\varphi}}_{\mathbf{x}} &=\tilde{\mathbf{x}}, \end{aligned}$$

with

$$\begin{aligned} {\boldsymbol{\tau}}_{r} &= - \bigl( \varPi_{e}^{-1} \mathcal{E}(q) \bigr) ^{T}\bigl(K_{p}^{r} \tilde{{ \boldsymbol{\theta}}} + K_{d}^{r} \dot{\tilde{{\boldsymbol{ \theta}}}} + K_{i}^{r} \boldsymbol{\varphi}_{\boldsymbol{\theta}} \bigr), \\ \boldsymbol{\tau}_{t} &= -\mathcal{E}(q)^{T} \bigl( K_{p}^{t} \tilde{\mathbf{x}} + K_{d}^{t} \dot{\tilde{\mathbf{x}}} + K_{i}^{t} \boldsymbol{ \varphi}_{\mathbf{x}} \bigr) , \\ \tilde{{\boldsymbol{\theta}}} &= {\boldsymbol{\theta}}- {\boldsymbol{ \theta}}_{\mathrm{ref}}, \hspace{6mm} \dot{\tilde{{\boldsymbol{\theta}}}} = \dot{{ \boldsymbol{\theta}}} = \varPi_{e}^{-1}\mathcal{E}(q)\, \boldsymbol{\omega} , \hspace{6mm} \tilde{\mathbf{x}} = \mathbf{x}- \mathbf{x}_{\mathrm{ref}}. \end{aligned}$$

Appendix C: Splitting coefficients

The coefficients of a 4th order splitting scheme in the format (10) are

$$\begin{aligned} a_{1} =& 0.0792036964311956500000000000000000000000, \\ a_{2} =& 0.353172906049773728818833445330, \\ a_{3} =& -0.042065080357719520000000000000000000000, \\ a_{4} =& 1-2(a_{1}+a_{2}+a_{3}), \\ b_{1} =& 0.209515106613361881525060713987, \\ b_{2} =& -0.14385177317981800000000000000000000, \\ b_{3} =& \frac{1}{2}-(b_{1}+b_{2}). \end{aligned}$$

The coefficients of a 6th order splitting scheme in the format (10) are

$$\begin{aligned} a_{1} =& 0.0502627644003923808654389538920, \\ a_{2} =& 0.413514300428346618921141630839, \\ a_{3} =& 0.045079889794397660000000000000000000, \\ a_{4} =& -0.188054853819571375656897886496, \\ a_{5} =& 0.541960678450781151905056284542, \\ a_{6} =& 1-2(a_{1}+a_{2}+a_{3}+a_{4}+a_{5}), \\ b_{1} =& 0.148816447901042828823498193483, \\ b_{2} =& -0.132385865767782744686048193902, \\ b_{3} =& 0.0673076046921849473963237618218, \\ b_{4} =& 0.432666402578172649872653897748, \\ b_{5} =& \frac {1}{2}-(b_{1}+b_{2}+b_{3}+b_{4}). \end{aligned}$$

We refer to [2] for an overview on splitting schemes.

Appendix D: Parameter values

The values of the parameters we use in the experiments are in SI units

$$\begin{aligned} \textstyle\begin{array}{rl@{\qquad}rl} D_{r1} & = 9.329153987 \times10^{2}, & D_{t1} & = 3.53933789 \times 10^{1}, \\ D_{r2} & = 6.514979127508227 \times10^{8}, & D_{t2} & = 1.1781388 \times10^{2}, \\ D_{r3} & = 3.15094664584 \times10^{4}, & D_{t3} & = 1.4566249 \times 10^{6}, \\ D_{r} & = \mathrm{diag}(D_{r1},D_{r2},D_{r3}), & D_{t} & = \mathrm {diag}(D_{t1},D_{t2},D_{t3}), \\ K_{p}^{r} & = \mathrm{diag}\bigl(0,0,1\cdot10^{8}\bigr), & K_{p}^{t} & = \mathrm {diag}\bigl(4\cdot10^{5},4\cdot10^{5},0\bigr), \\ K_{d}^{r} & = \mathrm{diag}\bigl(0,0,1\cdot10^{9}\bigr), & K_{d}^{t} & = \mathrm {diag}\bigl(4\cdot10^{6},4\cdot10^{6},0\bigr), \\ K_{i}^{r} & = \mathrm{diag}\bigl(0,0,2\cdot10^{5}\bigr), & K_{i}^{t} & = \mathrm {diag}\bigl(1\cdot10^{3},1\cdot10^{3},0\bigr), \\ T_{1} & = 2.873071 \times10^{8} , & {\boldsymbol{\theta}}_{0} & = [0.05,-0.02,0.10]^{T}, \\ T_{2} & = 2.726143\times10^{9} , & {\boldsymbol{\theta}}_{\mathrm{ref}} & = [ 0,0,0.54 ] , \\ T_{3} & = 2.90000 \times10^{9} , & \mathbf{x}_{0} & = [723,0,0]^{T}, \\ T & =\mathrm{diag}(T_{1},T_{2},T_{3}), & \mathbf{x}_{\mathrm{ref}} & = [ 780,20,0 ] , \\ \overline{GM}_{T} & = 2.1440 , & m_{v} & = 6.3622085\times10^{6}, \\ \overline{GM}_{L} & = 103.628 , & A_{\mathrm{wp}} & = 1.3834\times10^{3} , \\ g & = 9.81 , & \\ \rho_{w} & = 1.025 \times10^{3} , & \\ z_{\mathrm{eq}} & = 0. & \\ \end{array}\displaystyle \end{aligned}$$

Many of the values are taken from data for a supply vessel from [23].

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Celledoni, E., Høiseth, E.H. & Ramzina, N. Passivity-preserving splitting methods for rigid body systems. Multibody Syst Dyn 44, 251–275 (2018). https://doi.org/10.1007/s11044-018-9628-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11044-018-9628-5

Keywords

Navigation