A method for non-linear analysis of pile groups under vertical loads