added nodal objective function