adding solve_algo=9: using trust_region algorithm on the entire model

time-shift
Michel Juillard 2014-05-07 21:25:10 +02:00
parent a6106f07c7
commit 57ae7d7fd9
2 changed files with 10 additions and 2 deletions

View File

@ -2758,7 +2758,8 @@ using the same solver as value @code{1}
Use Chris Sims' solver
@item 4
Trust-region solver with autoscaling.
Splits the model into recursive blocks and solves each block in turn
using a trust-region solver with autoscaling.
@item 5
Newton algorithm with a sparse Gaussian elimination (SPE) (requires
@ -2777,6 +2778,9 @@ each iteration (requires @code{bytecode} and/or @code{block} option,
Newton algorithm with a Stabilized Bi-Conjugate Gradient (BICGSTAB)
solver at each iteration (requires @code{bytecode} and/or @code{block}
option, @pxref{Model declaration})
@item 9
Trust-region algorithm on the entire model.
@end table
@noindent

View File

@ -109,7 +109,11 @@ if options_.solve_algo == 0
info = 1;
end
elseif options_.solve_algo == 1
[x,info]=solve1(func,x,1:nn,1:nn,jacobian_flag,options_.gstep, ...
[x,info]=solve1(func,x,1:nn,1:nn,jacobian_flag,options_.gstep, ...
tolf,options_.solve_tolx, ...
options_.steady.maxit,options_.debug,varargin{:});
elseif options_.solve_algo == 5
[x,info]=trust_region(func,x,1:nn,1:nn,jacobian_flag,options_.gstep, ...
tolf,options_.solve_tolx, ...
options_.steady.maxit,options_.debug,varargin{:});
elseif options_.solve_algo == 2 || options_.solve_algo == 4