+ New `preconditioner` option to the `perfect_foresight_solver` and `perfect_foresight_with_expectation_errors_solver` commands, which controls the preconditioner used with GMRES or BiCGStab
+ New `preconditioner` option to the `perfect_foresight_solver` and `perfect_foresight_with_expectation_errors_solver` commands, which controls the preconditioner used with GMRES or BiCGStab
+ The new default, `preconditioner=first_iter_lu`, does a LU decomposition with complete pivoting at the first Newton iteration, and uses it as preconditioner in further iterations
+ The new default, `preconditioner=first_iter_lu`, does a LU decomposition with complete pivoting at the first Newton iteration, and uses it as preconditioner in further iterations
+ The value `preconditioner=block_diagonal_lu` computes a block diagonal preconditioner based on a LU decomposition for only a few periods of the stacked system
+ The value `preconditioner=block_diagonal_lu` computes a block diagonal preconditioner based on a LU decomposition for only a few periods of the stacked system
+ The old default, using an incomplete LU decomposition, remains available under `precondition=ilu`
+ The old default, using an incomplete LU decomposition, remains available under `precondition=incomplete_lu`
+ The `first_iter_lu` and `block_diagonal_lu` preconditioners deliver a significant performance improvement over the old default (`ilu`) and make this algorithm competitive and in some cases faster than other perfect foresight solvers
+ The `first_iter_lu` and `block_diagonal_lu` preconditioners deliver a significant performance improvement over the old default (`incomplete_lu`) and make this algorithm competitive and in some cases faster than other perfect foresight solvers
+ Other new options that control the behaviour of the iterative solvers: `iter_tol`, `iter_maxit`, `gmres_restart`, `block_diagonal_lu_maxlu`, `block_diagonal_lu_nperiods`, `block_diagonal_lu_nlu`, `block_diagonal_lu_relu`
+ Other new options that control the behaviour of the iterative solvers: `iter_tol`, `iter_maxit`, `gmres_restart`, `block_diagonal_lu_maxlu`, `block_diagonal_lu_nperiods`, `block_diagonal_lu_nlu`, `block_diagonal_lu_relu`
- Option values `solve_algo={6,7,8}` and `stack_solve_algo={2,3}` are now available without `block` nor `bytecode` (e14a49211067b27114d8173b16d4cb8f7595b0c3, aa263e6a2adc9414142551a01bbcc46abb6a3894)
- Option values `solve_algo={6,7,8}` and `stack_solve_algo={2,3}` are now available without `block` nor `bytecode` (e14a49211067b27114d8173b16d4cb8f7595b0c3, aa263e6a2adc9414142551a01bbcc46abb6a3894)