Commit Graph

491 Commits (c079ace8c3185fded3fa260e464f15912be1dbd2)

Author SHA1 Message Date
Stéphane Adjemian (Charybdis) 560800bcc5 Changed the order of the output arguments in kronecker product related mex routines. 2011-09-05 18:57:42 +02:00
Houtan Bastani d7c06ead1e ms-sbvar bugfix: replace shocks with shocks_per_parameter 2011-08-30 16:12:00 +02:00
Houtan Bastani 6ef0f0c94d ms-sbvar bugfix: remove option shocks as it is not used 2011-08-23 13:43:24 +02:00
Houtan Bastani 383b12df0e ms-sbvar bugfix: change the way options are passed to irf, forecast and variance decomposition mex functions 2011-08-23 13:43:24 +02:00
Ferhat Mihoubi 567ef44f6d - Corrects the simulation period for a forward looking system 2011-08-11 14:15:49 +02:00
Stéphane Adjemian (Charybdis) 52fa569f00 Changed default value of the tolerance parameter. 2011-06-28 14:49:56 +02:00
Stéphane Adjemian (Charybdis) f2450932da Use DYN_MEX_FUNC_ERR_MSG_TXT when INFO>0. 2011-06-28 14:49:56 +02:00
Stéphane Adjemian (Charybdis) 10a21fdaa8 Cosmetic changes. 2011-06-28 14:49:56 +02:00
Ferhat Mihoubi fe1b241186 Add an option in bytecode to prevent the display of error messages . 2011-06-18 17:15:47 +02:00
Jacob Smith a07b0ae614 Bug Fix, when using parameter uncertainty on multiple regimes 2011-06-16 10:30:07 -04:00
Sébastien Villemot fee32bdf25 Fix compilation problems with GCC 4.6 2011-06-13 11:38:09 +02:00
Michel Juillard d53a1f5d04 MS-SBVAR: bug correction (replacing mxFree by free for space allocated with new) 2011-05-31 11:31:38 +02:00
Houtan Bastani a44a384146 remove extraneous code 2011-05-23 17:36:29 +02:00
Houtan Bastani 561d07e89b SWZ: bug fix 2011-05-20 14:34:21 +02:00
Houtan Bastani cd021d33f6 SWZ: make mex files return error code 2011-05-20 14:34:07 +02:00
Sébastien Villemot 5fa666e448 k-order perturbation: cosmetic change related to mxGetPr/mxGetData 2011-05-20 10:59:40 +02:00
Sébastien Villemot f5b35df24f k-order perturbation: fixed bug in M-file evaluation 2011-05-20 10:59:40 +02:00
Jacob Smith da43f3d0f5 Adding Mex Functionality to work with new MS-SBVAR Code, includes Forecasting,IRF,Variance Decomposition, Plotting and new global settings 2011-05-13 15:13:02 +02:00
Ferhat Mihoubi 31b6c08347 Correct a bug when the model contains deterministic exogenous variables and bytecode option is used.
Note that stochastic simulations do not work for the moment with block option.
2011-03-18 01:09:20 +01:00
Ferhat Mihoubi f48aa28e39 Corrections for steady_state operator bug with bytecode. bytecode is now fixed. 2011-03-14 17:46:00 +01:00
Michel Juillard 55bb27c5f6 new correction for steady_state operator bug. Steady_state vector is passed as argument to *_dynamic model function. As a result, bytecode is currently broken. 2011-03-13 17:06:57 +01:00
Houtan Bastani b744707672 change macro defines to accord with change in submodule code 2011-03-04 11:35:38 +01:00
Sébastien Villemot f6c51d4cc4 libslicot: fix typo (thanks to Thomas Weber) 2011-02-23 10:07:59 +01:00
Sébastien Villemot eb0255d526 Build system: add MS-SBVAR to dist tarball 2011-02-22 16:51:23 +01:00
Houtan Bastani f2e2f68223 SWZ: centralize mex changes, remove unused functions 2011-02-22 15:06:38 +01:00
Houtan Bastani a1ade98209 SWZ: move mex files under mex/sources 2011-02-22 15:06:38 +01:00
Houtan Bastani 670a40836f add blas functions to dynblas.h 2011-02-22 15:06:38 +01:00
Houtan Bastani 2ec494f1c9 kalman_steady_state: remove instances of mexErrMsgTxt 2011-02-11 12:25:14 +01:00
Houtan Bastani 69375f4b93 logMHMCMCposterior: remove instances of mexErrMsgText 2011-02-11 12:25:10 +01:00
Houtan Bastani 4ac3a6c5a4 replace mex.h with dynmex.h 2011-02-11 12:24:13 +01:00
Sébastien Villemot 7717da4316 K-order DLL: remove warning about NOMINMAX 2011-02-07 12:37:47 +01:00
Sébastien Villemot 3fa2339cfe Estimation DLL: remove warning about NOMINMAX 2011-02-07 12:37:34 +01:00
Sébastien Villemot 0f9ec8b2dc K-order DLL: add test for NaN/Inf in param/steady-state vectors to avoid crashes (thanks to J. Pfeifer for reporting this) 2011-02-07 11:12:57 +01:00
Sébastien Villemot 02652f6eb8 Updated copyright notices 2011-02-04 17:27:33 +01:00
Sébastien Villemot cc2a9d90ac Global reindentation of MEX source files 2011-02-04 16:53:12 +01:00
Ferhat Mihoubi 6f184371ef - Correction of temporary terms when bytecode is used and solve_algo <= 4 2011-02-02 00:31:37 +01:00
Ferhat Mihoubi 66a7884a15 - Corrects the "if (~eval)" displayed with print option in bytecode 2011-01-31 17:44:22 +01:00
Ferhat Mihoubi 3393eebf71 When a model is evaluated with bytecode the residual has to be returned in the equations order (not in the variables order) 2011-01-31 12:30:16 +01:00
Ferhat Mihoubi ce07223628 - The Temporary terms management with bytecode when the model is block decomposed and solve_algo<5 is now compatible with octave
- Gets rid of warning message during the compilation of bytecode
2011-01-14 19:24:18 +01:00
Ferhat Mihoubi 206fff0e71 - Corrects the following problem:
Octave BiCGStab algorithm involves a 0 division in case of a preconditioner equal to the LU decomposition of the A matrix (in a linear system of the form A.x = b).
- The solution:
Checks if the linear system is solved simply using: x_new = x_old + U \ (L \ x_old)
Ticket #11
2011-01-14 10:39:33 +01:00
Sébastien Villemot ffc53ca910 Fix integer types in Kronecker DLLs 2011-01-13 19:34:49 +01:00
Ferhat Mihoubi 20f414e0d2 - Extends the error messages in bytecode
- Implements the print option in bytecode
- Minor modifications to manage the global temporary terms
2010-12-31 16:41:50 +01:00
Ferhat Mihoubi 313f64e153 - Adds option 'print' to bytecode
- Manages global temporary terms when the model is evaluated block by block
- Stores the result of a first order derivative only in case of numerical approximation. Do nothing if an external function is called to compute the first order derivatives (it has already been done during the function call)
- Cleans the code
2010-12-31 16:37:34 +01:00
Ferhat Mihoubi 816dbefa28 - Corrections in the debugging conditional preprocessor expressions 2010-12-31 16:29:39 +01:00
Sébastien Villemot 9aa79c6140 Another build system fix 2010-12-28 10:50:51 +01:00
George Perendia 887209208f Estimation C++ DLL: Adding the new Proposal class with common, adjustable seed for both normal and uniform rng and the associated changes including the removal of now obsolete RandSampler class. 2010-12-24 09:49:59 +00:00
Houtan Bastani a11817cfa4 k-order: added support for m-files, added tests and modified manual 2010-12-22 09:48:05 +01:00
Houtan Bastani d0853e1658 k-order: removed unnecessary check 2010-12-22 09:48:05 +01:00
Ferhat Mihoubi 7a58637932 - Displays an error message and interrupts the execution of bytecode in case of unknown function 2010-12-17 18:54:03 +01:00
Ferhat Mihoubi 129d404eb8 - The binary operator oDerivPower is implemented in bytecode 2010-12-17 18:54:03 +01:00
Houtan Bastani d69d225b82 k-order: removed unused variable from class definition 2010-12-17 12:16:32 +01:00
Sébastien Villemot aa58f7bd37 Estimation DLL, QRDecomposition: removed unused data members 2010-12-17 10:52:00 +01:00
George Perendia 424bd8257b Estimation C++ DLL: Bug fixing in KalmanFilter.cc - re-setting a_init and some minor refactoring and tidying up 2010-12-17 09:02:24 +00:00
Houtan Bastani b63590712c fixed bug in argument number check and removed unused variable 2010-12-14 18:42:29 +01:00
Sébastien Villemot 1329b57ff2 Estimation DLL: fix DecisionRules::compute() (was not reentrant, since GeneralizedSchurDecomposition::compute() modifies D and E) 2010-12-13 17:15:08 +01:00
George Perendia 915bb4c451 Estimation C++ DLL: Bug-fixing Sampler 2010-12-11 19:22:27 +00:00
Michel Juillard d38c4de498 estimation_dll: adding test for logposterior 2010-12-10 21:34:40 +01:00
Ferhat Mihoubi 97664607b2 - external functions are compatible with block decomposition and/or bytecode 2010-12-10 12:06:50 +01:00
Sébastien Villemot befa1b966b Estimation DLL: removed illegal casts from pointer to integer 2010-12-09 10:49:44 +01:00
George Perendia fa3e19fdfb C++ Estimation DLL: Update of logMHMCMCposterior.cc with a draft octave MAT draws file save and adding a test random_walk_metropolis_hastings_core.m: Octave version crashes at start of DLL and Matlab version finishes with low acceptance due to frequent B&K and reports error within debugger too - needs more debugging! 2010-12-07 23:03:11 +00:00
Sébastien Villemot 2d84d8dc49 K-order DLL: code simplification 2010-12-06 17:01:06 +01:00
Sébastien Villemot a9b4331a95 Bugfix at order 3 (hopefully was not affecting final results, thanks to Pablo Winant for spotting this):
- in the 3rd derivatives matrix, among symmetric elements, the first one had
the right values but the following ones were set to zero
- moreover, the k-order DLL was trying to add all the symmetric elements in the
folded tensor, instead of only keeping one value among all the symmetric ones
- hopefully, Ondra's tensor library was (silently) refusing to add symmetric
elements after the first (and right) value had been added
- so the final result was correct
2010-12-06 17:00:46 +01:00
Ferhat Mihoubi bdfa881a96 Reorganization of error handling in bytecode 2010-11-25 16:11:05 +01:00
Stéphane Adjemian (Charybdis) 010c4c0c20 Fixed bug in kalman_steady_state.cc related to long integer and (mkl) lapack calls. Changed building system by adding -fdefault-integer-8 flag to gfortran when slicot is compiled on a 64-bits platform. 2010-11-25 14:35:46 +01:00
Sébastien Villemot 5a9615951c Kronecker DLL: fix minor issue (was creating a lot of warnings under Octave) 2010-11-24 19:12:03 +01:00
Sébastien Villemot 43f69d27e8 Kalman steady state DLL: minor fixes 2010-11-22 12:22:45 +01:00
Sébastien Villemot b8aae7bbf9 Fix underscoring problems with Fortran code 2010-11-22 12:22:22 +01:00
Sébastien Villemot 81342073c0 Build system: added kalman_steady_state DLL sources to dist file 2010-11-22 10:39:19 +01:00
Stéphane Adjemian (Charybdis) dfbbc415cd Merge remote branch 'origin/master' 2010-11-19 14:49:26 +01:00
Stéphane Adjemian (Charybdis) 160922a189 Added mex file for computing the fixed point of the riccati equation in the kalman filter.
The mex works with octave but not with matlab (lapack issue again ;-).
2010-11-19 14:39:54 +01:00
Sébastien Villemot b3ee886391 Build system: added libslicot to dist file 2010-11-19 09:22:00 +01:00
Stéphane Adjemian (Charybdis) d5b032c99f Moved test files for kronecker product mex files from ./mex/sources/kronecker/tests to ./tests/kronecker. 2010-11-18 16:01:21 +01:00
Stéphane Adjemian (Charybdis) 382ab96cde Added the Slicot library (distributed under the GNU General Public Licence at www.slicot.org). This library provides routines
for the design and analysis of control systems. Adapted the building system to handle fortran 77 source files.
2010-11-18 10:11:27 +01:00
Stéphane Adjemian (Charybdis) 5c709e4733 Changed set_dynare_threads.m. The number of threads in parallelized mex files to be used if dynare is built with the openmp flag
(--with-openmp) is not passed by an environment variable anymore. The function set_dynare_threads changes the default value of the
number of threads (default is 1) in the options_.threads structure. Changed calls to sparse_hessian_times_B_kronecker_C and
A_times_B_kronecker_C dlls accordingly.
2010-11-15 13:06:39 +01:00
Sébastien Villemot dbe288e3ca Make sure "min" and "max" macros are never defined under Windows, this can create conflicts with "std::min" and "std::max" 2010-10-29 12:01:47 +02:00
Sébastien Villemot 48096db2ff Build system: add logMHMCMC DLL 2010-10-28 10:17:58 +02:00
Sébastien Villemot 036867765b logMHMCMCposterior: minor compatibility fix for Octave (the 3rd arg of mexPutVariable() is not marked "const" under Octave) 2010-10-28 10:17:38 +02:00
Sébastien Villemot 8d3d004105 logMHMCMCposterior: under Octave, do load/save MAT files, because the "mat.h" interface does not exist 2010-10-28 10:15:53 +02:00
Ferhat Mihoubi 1aceb504fd Check command is now compatible with block and bytecode options 2010-10-27 15:34:48 +02:00
Ferhat Mihoubi 36941dd704 - During an evaluation of the model with bytecode stores all Jacobian matrix (w.r. to endogenous of the current block, exogenous and endogenous from previous blocks) in M_block_structure.block(j) 2010-10-27 15:30:01 +02:00
Ferhat Mihoubi 7ea9d28afd - updates the third output argument when it is M_.block_structure.block 2010-10-27 15:30:01 +02:00
George Perendia f8815c8896 C++ Estimation DLL: Update to logMHMCMCposterior.cc mexFunction DLL driver: its call to close waitbar seems to cause crashes and it is for now left commented out and the waitbar neeeds to be closed manually or,
alternativelly, call dll with options_.console_mode=1
2010-10-26 18:31:32 +01:00
Ferhat Mihoubi 39718c8645 - extends steady algorithms to solve_algo=5, 6, 7 and 8 for a block decomposed model without bytcode
-  solve_algo is reordered =
   * 0: fsolve
   * 1: solve1
   * 2, 4: solve1 + block decomposition
   * 3: csolve
   * 5: bytecode own solver (use Gaussian elimination + sparse matrix)
   * 6: LU decomposition with UMFPack (method handling sparse matrix in Matlab)
   * 7: GMRES
   * 8: BiCGStab
2010-10-22 16:49:47 +02:00
Ferhat Mihoubi 1a09426706 - Correction of several bugs with Octave
- Add wrapper needed to compute the steady-state using bytecode and solve_algo = 0, ..., 4
2010-10-22 10:09:07 +02:00
Sébastien Villemot cab8941c29 qzcomplex and ordschur oct-files:
- added embedded tests
- minor cosmetic changes
2010-10-21 15:58:24 +02:00
Sébastien Villemot 81823ad035 New oct-file for "ordschur": the diffuse filter now works under Octave 2010-10-21 15:43:13 +02:00
Sébastien Villemot 69fc0e320b New oct-file "qzcomplex" for bringing the complex QZ decomposition to Octave. Fixes issues with partial information under Octave. 2010-10-21 12:33:18 +02:00
George Perendia 9123e4e70c C++ Estimation DLL: Update of logMHMCMCposterior and auxiliary files: added progress bar and recovery from file and tied up few loose ends - still unstable ! 2010-10-14 23:31:25 +01:00
Ferhat Mihoubi 8f36437662 - Extends the algorithms compatible with bytecode to compute the steady-state (ticket #11). The new values for solve_algo are:
* 0: fsolve
   * 1: solve1
   * 2, 4: solve1 + block decomposition
   * 3: csolve
   * 5: LU decomposition with UMFPack (method handling sparse matrix in Matlab)
   * 6: GMRES
   * 7: BiCGStab
   * 8: bytecode own solver (use Gaussian elimination + sparse matrix)

- Bytecode can now evaluate a specific block instead of the overall blocks (new bytecode's option 'Block = block_number')
2010-10-11 19:21:32 +02:00
Ferhat Mihoubi 4b824ad8ed - extends the error messages in mex_interface (necessary to emulate the mex functions in a standalone mode for debugging purposes) 2010-10-11 18:09:31 +02:00
Ferhat Mihoubi f6835d1d61 - adds bytecode_debug.m m-file to save the global variables. Necessary to run bytecode in a standalone mode for debugging purposes. 2010-10-11 18:01:44 +02:00
Ferhat Mihoubi 9a0201b26a Minor corrections on ErrorHandling 2010-10-11 17:56:23 +02:00
Sébastien Villemot dbbe177ed6 Estimation DLL: fix bug related to number of rows of matrix of endogenous (nb_row_x was incorrectly initialized in dynamic C file) 2010-10-05 16:30:21 +02:00
Sébastien Villemot eea1bcc27c k-order DLL: fix bug related to number of rows of matrix of endogenous
(nb_row_x was incorrectly initialized in dynamic C file)
2010-10-05 15:28:15 +02:00
George Perendia d7e8870c18 C++ Estimation DLL: Adding draft logMHMCMCposterior.cc mexFile driver for the modified RandomWalkMetropolisHastings.cc and other related files inc. draft test random_walk_metropolis_hastings_core.m
Still missing functionality: Sliding progress bar, seed change and loading old, incomplete (failed) run files
2010-10-04 13:58:25 +01:00
Sébastien Villemot 1a27ed9f38 OpenMP support:
- removed build_matlab_multithread.m and isopenmp MEX file
- introduced a new option "--enable-openmp" in configure script
- when openmp support is compiled in, the default is still one thread; the user can set the number of threads with "set_dynare_threads(n)"
- closes #68
2010-09-27 15:56:19 +02:00
Sébastien Villemot 477652c6e9 Build system: removed obsolete build_matlab script 2010-09-27 15:51:32 +02:00
Sébastien Villemot 5a1caff861 Build system: fix for bug introduced in 5504811b1a 2010-09-27 14:18:39 +02:00
Sébastien Villemot 5504811b1a Removed obsolete Kalman filter code 2010-09-24 13:01:52 +02:00
Ferhat Mihoubi df1b1e4ed0 - In bytecode, the MATLAB function "mexErrMsgTxt" has been replaced by an exception handling see ticket #137 2010-09-24 12:52:58 +02:00