Commit Graph

47 Commits (25121bca4f9c97fed28599e9f9adeba2028e5bd0)

Author SHA1 Message Date
Stéphane Adjemian (Charybdis) 2ec1579cd0 Fixed warnings in bytecode compilation.
Removed unused variables.
2015-10-19 18:01:38 +02:00
ferhat 7c5272d852 Allows to compute the extended path and the conditional forecasts with bytecode 2015-09-22 15:39:49 +02:00
Sébastien Villemot 66d48f5917 Compatibility fixes for Octave 3.8.
- no longer use OCTAVE_QUIT in MEX files; this seems now only possible in
  oct-files. (Ref #304)
- do not build linsolve.oct on Octave >= 3.8, it is available natively.
- do not add strjoin.m to the patch on Octave >= 3.8, it is available natively.
- default_save_options has been renamed save_default_options.
2014-01-03 11:05:39 +01:00
Stéphane Adjemian (Charybdis) 5a4399e9b3 Removed openmp pragmas in bytecode.
This commit fixes #420, so that bytecode doesn't crash when Dynare is compiled with --enable-openmp flag.
2013-07-11 15:12:41 +02:00
Sébastien Villemot f1c8ec60c7 Remove various compilation warnings 2013-06-12 16:05:35 +02:00
Ferhat Mihoubi bdee6d14ec Fix the problems related to the initialization of ilu preconditioner using BiCGStab and also a bug in the BiCGStab in case of block (without bytecode) model options. 2013-06-08 17:16:20 +02:00
ferhat 4e7050baf9 Use ilu with type=ilutp instead of nofill
Contrary to luinc command ilu with nofill option doesn't not allow for partial
pivoting
2013-05-23 11:44:29 +02:00
Sébastien Villemot 3025a14ed9 Adapt for removal of luinc in MATLAB R2013a 2013-03-25 12:05:56 +01:00
Sébastien Villemot 1db892efc4 Fix compilation problems of bytecode with UMFPACK and MATLAB's libut 2013-03-23 13:02:07 +01:00
Ferhat Mihoubi 03e487a092 Major update of bytecode:
- Iterative linear solvers using CUDA
 - interpreter.cc decomposed
2013-03-22 15:44:34 +01:00
Sébastien Villemot bc1872625b Fix typo in previous commit 2012-11-06 14:44:29 +01:00
Ferhat 50fd1a4c0d In the two boundaries solver, gives up the symbolic solver if a stable computation solution could not be found on the first third of the simulation period 2012-11-06 14:38:51 +01:00
Sébastien Villemot c079ace8c3 Remove various compiler warnings 2012-06-08 19:06:03 +02:00
Sébastien Villemot 1f9cea669a Update copyright notices 2012-06-08 18:22:34 +02:00
Ferhat Mihoubi 7dbd826d7e Code cleaning 2012-06-06 16:30:28 +02:00
Michel Juillard e63c41184c bytecode: removing debuging message 2012-05-20 14:37:30 +02:00
Ferhat Mihoubi 3072c6e611 Displays more details in case of singular system 2012-03-06 11:03:13 +01:00
Ferhat eb567f5202 Cleaning the code: getting rid of unused variables 2012-02-17 10:59:39 +01:00
Stéphane Adjemian (Charybdis) 3ba5a645be Make verbosity flag effective: do not print informations about perfect foresight solvers if options_.ep.verbosity=0. 2011-12-12 14:20:14 +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 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
Ferhat Mihoubi 816dbefa28 - Corrections in the debugging conditional preprocessor expressions 2010-12-31 16:29:39 +01:00
Ferhat Mihoubi bdfa881a96 Reorganization of error handling in bytecode 2010-11-25 16:11:05 +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
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 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
Sébastien Villemot a3640239ab Removed all MSVC workarounds, since we can now definitely drop this compiler on
Windows/64-bit platform
2010-09-21 15:06:14 +02:00
Ferhat Mihoubi 45137f1367 - bug correction in error printout (elimination of an unused variable : nb_endo in SparseMatrix) 2010-09-17 12:26:44 +02:00
Ferhat Mihoubi c7eff4ba60 - Adding the relaxation method for block and/or bytecode options
- Changing the the stack_solve_algo option :
Previous version             New version
1 : Sparse LU                0 : Sparse LU
2 : GMRES                    1 : Relaxation
3 : BiCGStab                 2 : GMRES
4 : Sparse LU & Optimal Path 3 : BiCGStab
5 : bytecode own solver      4 : Sparse LU & Optimal Path
                             5 : bytecode own solver
2010-09-17 12:18:25 +02:00
Ferhat Mihoubi 77b6096962 - extends the mex_interface: bytecode's debuging purpose
- correction of memory leaks in bytecode
2010-09-17 12:17:14 +02:00
Ferhat Mihoubi 0a3c8a4b0c - compute the jacobian matrix for exogenous, det_exogenous and previous blocks endogenous
- preprocessor provides informations about the dynamic structure of each block
- extends the algorithms available with bytecode: stack_solve_algo = 1, 2, 3 and 4 is compatible the bytecode. Speed and memory requirement are improved with stack_solve_algo = 1 or 4 for large scale models.
- bytecode can be used to evaluate a model
2010-09-17 12:16:47 +02:00
Ferhat Mihoubi faa5da07dc Bug correction in error messages and reduction of memory requirement during simulation 2010-02-19 11:03:53 +01:00
Ferhat MIHOUBI 6d958b6e8d Improvement of the floating point error messages (the equation and the location of the error are displayed) 2010-02-06 15:07:56 +01:00
Ferhat MIHOUBI cea26af06e Uses the initial method to manage the floating exceptions 2010-02-05 18:50:57 +01:00
Ferhat MIHOUBI f7ac31b58a Improves the global convergence of Newton method for static model 2010-02-05 18:33:34 +01:00
Ferhat MIHOUBI 4a33777ef7 Adds exceptions management on floating point operations using cfenv.h from gcc 2010-02-05 12:07:46 +01:00
ferhat 0efd5b1621 "bytecode" option can be used without "block" option
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3373 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-22 10:03:29 +00:00
sebastien f3549b4c64 Beautified MEX source code
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3251 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-16 17:18:38 +00:00
sebastien aa23ed73e9 preprocessor + bytecode DLL: various enhancements to block and bytecode options (changes by Ferhat)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3244 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-16 13:21:31 +00:00
sebastien 31ed196c44 Various minor changes for compatibility with MS Visual C++ and GCC 4.4
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3105 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-30 16:29:16 +00:00
ferhat e1f17fa9e5 - adds a new option in simul command when block and bytecode options are used : minimal_solving_periods. With bytecode option, the linear solver is applied only on the first periods. As soon as the set of operations remains the same from one period to another, they are repeated for the remaining periods. In some cases the linear solver could encounter exact or near singularities. To avoid these effects, this new option allows the user to extend the minimal number of periods where the model has to be solved.
- corrects some mod files.
- In steady command, get check argument from bytecode dll

git-svn-id: https://www.dynare.org/svn/dynare/trunk@3051 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-18 15:18:16 +00:00
ferhat 3c2d944cfc - use of classes to describe the bytecode tags
- use static option for bytecode instead of steady_state option

git-svn-id: https://www.dynare.org/svn/dynare/trunk@3048 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-16 16:34:27 +00:00
ferhat e627f62441 - bug fix in Simulate_NG
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2918 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-11 10:19:39 +00:00
ferhat 9f45200924 simulate.dll has been replaced by bytecode.dll
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2881 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-02 14:40:54 +00:00