A free surface flow solver based on an efficient improvement to a coupling method for interface computations