An introduction to bond graph modelling with applications. (2021)