Bond Graph Modelling of Engineering Systems: Theory,