finite differences added