semi-Lagrangian method