update optmial power function