Data Assimilation algorithms