energy function classes
merged