OOPS Object Oriented Parallel Solver CESI Centre for Energy Systems Integration SML Structured Modelling Language