Coupled multi-physics simulations : using mini-apps to explore optimisation and emerging hardware for large-scale problems