Anderson method.
M=0 .... linear mixing M=1 .... Anderson mixing with 2 iterations M=2 .... Anderson mixing with 3 iterations etc. optimal is M=5
scipy.optimize.anderson
scipy.optimize.line_search