calc power func