Commit 6a269268 by Sébastien Villemot

```This MEX solves nonlinear systems of equations using a trust region algorithm.
The problem is subdivided in smaller problems by doing a block
triangularisation of the Jacobian at the guess value, using the
Dulmage-Mendelsohn algorithm.

The interface of the MEX is simply:

[x, info] = block_trust_region(f, guess_value);

Where f is either a function handle or a string designating a function.
f must take one argument (the evaluation point), and return either one or two
arguments (the residuals and, optionally, the Jacobian).

On success, info=0; on failure, info=1.```
parent 93bd817c
 ... ... @@ -101,6 +101,12 @@ doc/internals/ltxpng /mex/build/matlab/*/*.mod /mex/build/octave/*/*.mod # Extra rules for trust_region MEX testfiles /mex/sources/block_trust_region/test/*.mod /mex/sources/block_trust_region/test/dulmage_mendelsohn_test /mex/sources/block_trust_region/test/trust_region_test !/mex/sources/block_trust_region/test/Makefile # Dynare++ /dynare++/integ/src/quadrature-points.dSYM/ /dynare++/src/dynare++.dSYM/ ... ...
 mex_PROGRAMS = block_trust_region nodist_block_trust_region_SOURCES = \ dulmage_mendelsohn.f08 \ matlab_fcn_closure.f08 \ trust_region.f08 \ mexFunction.f08 \ matlab_mex.F08 \ blas_lapack.F08 BUILT_SOURCES = \$(nodist_block_trust_region_SOURCES) CLEANFILES = \$(nodist_block_trust_region_SOURCES) dulmage_mendelsohn.mod: dulmage_mendelsohn.o matlab_fcn_closure.mod: matlab_fcn_closure.o matlab_fcn_closure.o: matlab_mex.mod trust_region.mod: trust_region.o trust_region.o: lapack.mod mexFunction.o: matlab_mex.mod dulmage_mendelsohn.mod matlab_fcn_closure.mod trust_region.mod %.f08: \$(top_srcdir)/../../sources/block_trust_region/%.f08 \$(LN_S) -f \$< \$@
 ACLOCAL_AMFLAGS = -I ../../../m4 SUBDIRS = mjdgges kronecker bytecode block_kalman_filter sobol local_state_space_iterations perfect_foresight_problem num_procs SUBDIRS = mjdgges kronecker bytecode block_kalman_filter sobol local_state_space_iterations perfect_foresight_problem num_procs block_trust_region # libdynare++ must come before gensylv, k_order_perturbation, dynare_simul_ if ENABLE_MEX_DYNAREPLUSPLUS ... ...
 include ../mex.am include ../../block_trust_region.am
 ... ... @@ -172,6 +172,7 @@ AC_CONFIG_FILES([Makefile sobol/Makefile local_state_space_iterations/Makefile perfect_foresight_problem/Makefile num_procs/Makefile]) num_procs/Makefile block_trust_region/Makefile]) AC_OUTPUT
 ACLOCAL_AMFLAGS = -I ../../../m4 SUBDIRS = mjdgges kronecker bytecode block_kalman_filter sobol local_state_space_iterations perfect_foresight_problem num_procs SUBDIRS = mjdgges kronecker bytecode block_kalman_filter sobol local_state_space_iterations perfect_foresight_problem num_procs block_trust_region # libdynare++ must come before gensylv, k_order_perturbation, dynare_simul_ if ENABLE_MEX_DYNAREPLUSPLUS ... ...
 EXEEXT = .mex include ../mex.am include ../../block_trust_region.am
 ... ... @@ -129,6 +129,7 @@ AC_CONFIG_FILES([Makefile sobol/Makefile local_state_space_iterations/Makefile perfect_foresight_problem/Makefile num_procs/Makefile]) num_procs/Makefile block_trust_region/Makefile]) AC_OUTPUT
 ... ... @@ -15,7 +15,8 @@ EXTRA_DIST = \ gensylv \ dynare_simul_ \ perfect_foresight_problem \ num_procs num_procs \ block_trust_region clean-local: rm -rf `find mex/sources -name *.o` ... ...
This diff is collapsed.