generic update
implement proper trapezoidal rule weighting