new morse_style energy function added