A system identification-based MPPT algorithm for solar photovoltaic pumping system under partial shading conditions