Commit Graph

1011 Commits (e9ffb16ec62b8e6cba2ca1dc84e8c4c65d8a45f0)

Author SHA1 Message Date
Sébastien Villemot 9dfb556740
k-order DLL: fix bug introduced in 1f7d3beddc
For the IntSequence class, the initialization with {} and () are no longer
equivalent.
2019-02-12 19:09:28 +01:00
Sébastien Villemot 1f7d3beddc
Dynare++ tensor library: modernize the Symmetry class
We now use a initializer list constructor for creating symmetries of the form
$y^n$, $y^n u^m$, $y^nu^m\sigma^k$.

The constructor taking a single integer is used to initialize a symmetry of a
given length.

Similar changes are made to IntSequence.

This behavior is similar to std::vector.
2019-02-11 16:45:07 +01:00
Sébastien Villemot af722f438f
Dynare++: drop remaining "using namespace std" 2019-02-06 19:00:46 +01:00
Sébastien Villemot 733308807d
Dynare++: by default, use as many threads as there are logical CPUs
The former default was 2 threads, since Dynare++ was written at a time when
hyper-threading was being generalized (but multiple cores were not).
2019-01-29 16:34:25 +01:00
Sébastien Villemot 752a02a36c
Dynare++: use C++11 threads (instead of POSIX threads API)
On Windows, this means that a POSIX threads implementation is no longer needed,
since C++11 threads are implemented using native Windows threads.

On GNU/Linux and macOS, POSIX threads are still used under the hood.

A new m4 macro (AX_CXX11_THREAD) is used to add the proper compilation
flags (instead of AX_PTHREAD).
2019-01-28 18:44:24 +01:00
Sébastien Villemot 1ef1dedc65
Refactor GeneralMatrix and ConstGeneralMatrix classes
- Remove the GeneralMatrix(const ConstVector &) constructor, since it is hides
  a memory allocation (copying the ConstVector into a fresh Vector). This
  helped detecting and fixing several unneeded memory allocations. Some other
  memory allocations are now more visible (with an explicit Vector{}
  constructor).

- Add checks in GeneralMatrix(Vector, …) and ConstGeneralMatrix(ConstVector, …)
  constructors for verifying that the {Const,}Vector has unit-stride (this was
  an implicit assumption so far) and is large enough for storing rows*cols
  elements.

- Add GeneralMatrix::operator=(const ConstGeneralMatrix &).

- Delete ConstGeneralMatrix::operator=().
2019-01-24 15:27:23 +01:00
Sébastien Villemot c711d34d1d
Dynare++ / sylvester equation solver: refactor Vector and ConstVector classes
- these classes now encapsulate a std::shared_ptr<{const, }double>, so that
  they do not perform memory management, and several {Const,}Vector instances
  can transparently share the same underlying data

- make converting constructor from ConstVector to Vector explicit, since that
  entails memory allocation (but the reverse conversion is almost costless, so
  keep it implicit); do the same for GeneralMatrix/ConstGeneralMatrix,
  TwoDMatrix/ConstTwoDMatrix

- remove the constructors that were extracting a row/column from a matrix, and
  replace them by getRow() and getCol() methods on {Const,}GeneralMatrix

- rename and change the API of the complex version Vector::add(), so that it is
  explicit that it deals with complex numbers

- add constructors that take a MATLAB mxArray
2019-01-22 16:13:22 +01:00
Sébastien Villemot 3c5afded8e
k-order DLL: fix build failure 2019-01-10 19:45:11 +01:00
Sébastien Villemot 188d6296d7
Dynare++: finish to apply Dynare C++ coding style and extensions (.cc/.hh) 2019-01-08 17:12:05 +01:00
Sébastien Villemot ce1ef47093
dynare++ / tensor library (TL): move away from CWEB
By the way apply Dynare C++ coding style and extensions (.cc/.hh).
2019-01-08 16:09:25 +01:00
Sébastien Villemot df772325a2
dynare++/kord: move away from CWEB
By the way apply Dynare C++ coding style and extensions (.cc/.hh).
2019-01-04 16:32:05 +01:00
Sébastien Villemot dcac799289
Fix check for QZ eigenvalue criterium
The criterium was previously incorrectly applied to the square absolute value of
eigenvalues. Rather apply it to the absolute value itself (as done in
mjdgges.m and the AIM solver).

Closes #1632
2019-01-02 16:37:30 +01:00
Sébastien Villemot 331a27398a
Fix another memory leak in k-order DLL
Re Dynare/dynare#1490.
2018-11-08 17:30:48 +01:00
Sébastien Villemot 50a09a687e
C++11 modernization
Incidentally, fix a memory leak related to DynamicModelAC instantiation, using
a std::unique_ptr (see Dynare/dynare#1490).
2018-11-08 17:24:19 +01:00
Sébastien Villemot ffb36e5713 Remove obsolete kludges for MinGW 2018-10-02 17:10:36 +02:00
Sébastien Villemot 59642c3312 C output of preprocessor now splits generated fcts into several smaller fcts
Adapt the k-order DLL as a consequence.
2018-10-01 16:13:12 +02:00
Sébastien Villemot d03cc56587 solve_algo=7 and stack_solve_algo=2 are now allowed under Octave
The gmres() function has been implemented (actually since Octave 3.4.1!).
2018-08-02 15:20:39 +02:00
Sébastien Villemot 932e5f946c Update preprocessor submodule
Adapt bytecode DLL as a consequence.
2018-07-18 17:52:44 +02:00
Sébastien Villemot cb46a2697e Fix invalid memory write in k-order DLL
The bug would show at order 3 when the last output argument (derivs) is not
requested (in practice every 3rd order solution without pruning). The DLL would
still attempt to write into it, causing an invalid memory access.
2018-07-02 16:37:46 +02:00
Sébastien Villemot b2c554623f Various fixes related to the new layout of generated files 2018-06-28 18:14:40 +02:00
Sébastien Villemot a1b8bd39b2 Move the location of various generated files on the filesystem
- M and MEX files are now under +${MODELNAME}/
- bytecode, C source and JSON now under ${MODELNAME}/model/
2018-06-27 17:03:39 +02:00
Sébastien Villemot e1a3c40ef0 Fix compilation of MS-SBVAR DLL under Octave 4.4 2018-06-05 17:07:45 +02:00
Sébastien Villemot 02084ce310 Remove qzcomplex Oct-file
It's actually not needed. The QZ complex decomposition can be obtained in
Octave on real matrices by casting them to the complex type.
2018-05-17 12:11:15 +02:00
Sébastien Villemot e2c2f2d966 Remove fallbacks for ilu, linsolve and ordschur under Octave
These functions are all included in Octave 4.2.
2018-05-16 10:48:44 +02:00
Sébastien Villemot 7a2aa211bf Make mjdgges DLL compatible with MATLAB interleaved complex API
This API was introduced in MATLAB 9.4 (R2018a), because the internal
representation of complex numbers has changed.
2018-05-14 15:16:09 +02:00
Houtan Bastani fb6a11f544 move estimation-dll to its own repository: https://github.com/DynareTeam/estimation-dll.git 2017-09-22 15:31:23 +02:00
Sébastien Villemot 1ff5c3f571 Fix various typos (thanks lintian). 2017-06-28 15:06:54 +02:00
Ferhat Mihoubi 119e5b4dfa Corrects bugs in bytecode related to the use of finite instead of isfinite and to mxMalloc tests 2017-06-05 18:51:43 +02:00
Stéphane Adjemian (Charybdis) 1bf81c9f5a Fixed copyright notices. 2017-05-18 18:36:38 +02:00
Stéphane Adjemian (Charybdis) b4448937cc Fixed indentation of c/h/cc/hh files. 2017-05-16 16:30:27 +02:00
Stéphane Adjemian (Charybdis) a53636e24e Fixed copyright notices. 2017-05-16 14:11:15 +02:00
Ferhat Mihoubi 981e31c8c3 Fix issues in bytecode with option extended_path related to the size of endo_simul and exo_simul
(cherry picked from commit ab7acc49e30fbcb292d63d58281581a308716b4c)
2017-05-08 18:40:18 +02:00
Ferhat Mihoubi e248d8bf59 Fix memory and periods issues in bytecode
(cherry picked from commit fa5dd681abcb3243a5ee9be1f71fdfc51bced1cd)
2017-05-08 18:39:44 +02:00
Ferhat Mihoubi 857fc3c4f4 Corrects several bugs related to bytecode:
- Memory allocation is checked
- The amount of memory allocated for conditional forecast is corrected
2017-04-05 11:48:40 +02:00
Stéphane Adjemian (Charybdis) 1229372a6c Defines M_PI (cross compilation for Octave). 2016-12-01 13:32:54 +01:00
Stéphane Adjemian (Charybdis) 23642b3b6b Defines M_PI, M_SQRT2 and finite() in bytecode...
... Which are not in standard C/C++ (otherwise compilation of the mex for Octave
with -std=c++11 fails).
2016-12-01 13:32:54 +01:00
Houtan Bastani e3fbefc616 mjdgges: fix bug where qz_criterium was not taken into account if a threshold argument is also passed 2016-10-27 11:19:34 +02:00
Houtan Bastani 8b17af05d5 bytecode: work around for isnan and isinf bug in C++ standard, glibc <= 2.23.
Fixed by https://sourceware.org/bugzilla/show_bug.cgi?id=19439
2016-10-11 16:01:27 +02:00
Michel Juillard 5d38280f27 remove one instance of dynamic exception specification
closes issue #1250
2016-07-16 00:13:47 +02:00
ferhat ac2e5cfd52 - In extended path
- fix an error with results print out
  - fix an error withe exogenous initialization
2015-11-19 17:03:05 +01:00
ferhat 77f5d572de Fix the output arguments in case of bytecode failure 2015-11-06 15:06:17 +01:00
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
Houtan Bastani 1b869b26a7 fix dates for changes in 86c3c0fb1b and a40323d2fb 2015-01-08 18:39:04 +01:00
ferhat 86c3c0fb1b Checks that fields endo_names, exo_names and param_names exist 2015-01-06 10:30:52 +01:00
ferhat 24b2993f50 Solves issues in deterministic simulation:
- replaces maximum_endo_(lead|lag) by maximum_(lead|lag) to determine the maximum number of lead and lag in deterministic simulation
- allows to use bytecode in solve_perfect_foresight_model.m
- Adds model information in bytecode
2014-12-17 09:37:43 +01:00
Sébastien Villemot 41295ad602 Minor cleanups in k_order_perturbation DLL. 2014-03-21 17:26:55 +01:00
Sébastien Villemot 050b495a52 Fix an invalid memory access in k_order_perturbation DLL.
In the case where a 2nd/3rd derivative is symbolically not zero but numerically
zero at the evaluation point, the last lines of the g2/g3 matrices (in
KordpDynare::calcDerivativesAtSteady()) where uninitialized (these matrices
store the sparse hessian/3rd-deriv in coordinate list form, i.e. with 3 columns
and as many rows as non-zero elements). When reconstructing the dense
hessian/3rd-deriv matrix out of g2/g3, this would result in invalid memory
accesses.
2014-03-21 17:26:48 +01:00
Michel Juillard 45f7de33e8 sobol qmc_sequence MEX: dimension larger than 1111 returns a proper
Matlab error message instead of crashing
2014-02-15 21:11:42 +01:00
Sébastien Villemot 5308da2cad Upgrade the minimum requirement to MATLAB 7.5 (R2007b). 2014-02-03 15:52:54 +01:00
Sébastien Villemot e5d4defb41 Fix handling of qz_criterium in k_order_perturbation MEX.
If the MEX file was called with options_.qz_criterium=[], it would not use a
correct default value (but would use NaN).

Closes #574
2014-01-27 15:33:37 +01: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
Sébastien Villemot 85f001885e Estimation DLL: fix bug with creating MAT files
Similar problem to #446
2013-12-06 14:46:44 +01:00
Houtan Bastani a8d07308a9 ms-sbvar: support ctrl-c changes in submodule, #304 2013-12-05 16:13:58 +01:00
Houtan Bastani 830c09760e preprocessor: remove clang warning on declaration of const static double in class definition 2013-11-22 14:59:34 +01:00
Houtan Bastani 3c75923e2d revert £ change as 156 is an extended ascii code 2013-11-05 19:06:20 +01:00
Houtan Bastani 0e4bb3f8e9 fix typo 2013-11-05 18:06:24 +01:00
Houtan Bastani 5352fb4d16 preprocessor and matlab mex fixes for clang compilation 2013-11-05 18:04:57 +01:00
ferhat f4cee9d5e5 Corrects a bug in the way to test for the presence of the global variables 2013-10-28 14:26:42 +01:00
Stéphane Adjemian (Charybdis) 399b6d2615 Specialized maxit in bytecode mex (dynamic simulation vs steady state). 2013-10-09 16:55:46 +02:00
Stéphane Adjemian (Charybdis) d8052342f3 Fixed bug introduced in cc0d9b42f0 (bytecode.cc).
Problem when reading nested structures.
2013-10-09 16:26:29 +02:00
Stéphane Adjemian (Charybdis) cc0d9b42f0 Changed name of options_.maxit as options_.simul.maxit. 2013-10-09 13:06:06 +02:00
Sébastien Villemot c34c90e8cb Fix bug in linsolve when second argument is a zero-column matrix
Fixes crash of 1st-order purely forward models under Octave
2013-08-15 12:19:51 +02: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
Stéphane Adjemian (Charybdis) cb2228acad Merge branch 'master' into experimental-mjdgges-threshold 2013-06-12 17:27:25 +02:00
Sébastien Villemot 61485ab809 Fix copyright notices 2013-06-12 17:04:46 +02:00
Sébastien Villemot f1c8ec60c7 Remove various compilation warnings 2013-06-12 16:05:35 +02:00
Sébastien Villemot 555fc98673 Fix bug in gemv binding 2013-06-12 16:05:35 +02:00
Stéphane Adjemian (Charybdis) 7fc92c96d9 Fixed bug related to the test on the number of input arguments. 2013-06-12 10:21:27 +02:00
Stéphane Adjemian (Charybdis) b81fcbeeb1 Added an option for the threshold level of the 0/0 generalized eigenvalue test.
The option is passed in the fourth input argument of mjdgges. If the
mex is called with less than four arguments, then the threshold level
takes its previous (hardcoded) default value: 1e-6.
2013-06-12 09:46:32 +02:00
Ferhat Mihoubi b1da2f2b7d "slowc" option is now available to solve a simple equation in bytecode 2013-06-10 16:46:54 +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 2670be408e Bug fix in steady state solver 2013-04-19 18:01:19 +02:00
Sébastien Villemot 7495668ef2 Minor simplification and improvements 2013-04-19 18:01:19 +02:00
Sébastien Villemot e1f702f83a Various fixes to steady state computation in estimation DLL
Still not working… Valgrind detects unitialized values during the call to
hybridjs…
2013-04-18 18:28:34 +02:00
Stéphane Adjemian (Charybdis) 8eed899f92 Fixed bug. Compilation of bytecode was crashing with USE_OMP. 2013-04-18 11:20:35 +02:00
Sébastien Villemot 8dbf195422 Compatibility fix with GCC 4.8 2013-04-15 17:18:38 +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 37592309fb Distribute dynumfpack.h in tarball 2013-03-24 09:42:45 +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 19032f4b07 Adds an umfpack definition file for matlab on windows 2013-03-22 16:38:34 +01:00
Ferhat Mihoubi 43a50dd395 - adds the kernel CUDA file for SparseMatrix 2013-03-22 16:36:30 +01:00
Ferhat Mihoubi dfa744fcb3 - adds new files: Evaluate.cc and Evaluate.hh to bytecode 2013-03-22 16:34:50 +01:00
Ferhat Mihoubi 2a51248832 Adds a block Kalman filter using GPU 2013-03-22 15:47:57 +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 ba889e853c Preprocessor interface and documentation for endogenous_prior option
Closes #321
2013-03-18 11:12:49 +01:00
Sébastien Villemot f89edf476e Start refactoring of penalty handling
Handle all events that lead to a penalty through an exception.
Next steps:
- make all exceptions derive from a common class containing info code and
  penalty value
- catch these exceptions at the top-level, and construct the penalty-adjusted
  likelihood
2013-03-06 17:55:15 +01:00
Sébastien Villemot 82930ee29a Implementation of steady state computation in estim DLL, using the GSL
Does not seem very robust (fails on fs2000), need to investigate why.
2013-03-06 16:58:22 +01:00
Sébastien Villemot 871cbbe448 Construct the filename of the dynamic MEX file only at the deepest level
In the calling chain, only pass the basename of the MOD file.
2013-03-05 14:45:47 +01:00
Sébastien Villemot 325a2ea90e Remove unused field n_exog of DynamicModelDLL class 2013-03-05 13:00:57 +01:00
Sébastien Villemot 75fbd38524 Handle constant in Kalman filter
Previously, the filter was only working with options_.noconstant, i.e. when the
data are centered.
2013-02-07 18:34:17 +01:00
Sébastien Villemot be2764520a Estimation DLL: explicitly fail with option loglinear or observation trends 2013-02-07 17:00:48 +01:00
Sébastien Villemot 6fc94a12d0 C++ DecisionRules: support models with no static variables 2013-02-07 16:03:11 +01:00
Sébastien Villemot ea3d2cd1ed Include right header in definition of LogLikelihoodSubSample 2013-02-05 15:49:47 +01:00
Sébastien Villemot da046d378e Fix typos 2013-02-05 15:49:27 +01:00
Sébastien Villemot a06e3d9714 Clarify error message of logposterior DLL for purely backward/forward models 2013-02-05 14:57:38 +01:00
Sébastien Villemot 21055da526 Remove incorrect use of static keyword
This leads to a crash when the DLL is called several times in the same
Octave/MATLAB session.
2013-01-30 18:39:18 +01:00
Sébastien Villemot deb9ece36d Fix MOD-file name in Kalman tests 2013-01-30 16:44:10 +01:00
Sébastien Villemot f60acd4366 Relax criterion for decision rules test
Otherwise it fails with on Karaba
2013-01-30 16:43:35 +01:00
Sébastien Villemot b3acdc0836 Make various functions more generic, using templates
This was necessary to make some tests work again
2013-01-30 16:43:02 +01:00
Sébastien Villemot 02fee79fc7 Add some sanity checks 2013-01-30 16:27:13 +01:00
Sébastien Villemot 5beec53458 Remove unused function prototype 2013-01-30 16:26:56 +01:00
Sébastien Villemot c121aa14b1 Remove oo_.dr.{nstatic,npred,nboth,nfwrd,nspred,nsfwrd}
Replace them by equivalents in M_ (and an extra one: M_.dynamic).

IMPORTANT POINT: oo_.dr.npred used to count both purely backward and mixed/both
variables. This was the cause of lots of confusion. The new M_.npred only
counts purely backward variables.

We now have the following indentities:

M_.npred + M_.nboth + M_.nfwrd + M_.nstatic = M_.endo_nbr
M_.nspred = M_.npred + M_.nboth
M_.nsfwrd = M_.nfwrd + M_.nboth
M_.ndynamic = M_.npred + M_.nboth + M_.nfwrd
2012-11-16 20:05:13 +01:00
Sébastien Villemot 31a13db66a Remove duplicate information in M_.blocksMFS 2012-11-16 17:39:03 +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 c031b463ff Use my @dynare.org address 2012-10-01 16:41:18 +02:00
Sébastien Villemot 0332309647 Remove embedded SLICOT, rely on external binary 2012-09-13 11:08:42 +02:00
Sébastien Villemot 53709a3214 Ensure compatibility with matio 1.5
Closes: #275
2012-08-07 14:44:45 +02:00
Houtan Bastani e5dd2d31ec fix typo 2012-08-07 11:39:47 +02:00
Sébastien Villemot 2e65a9ab96 Provide a better implementation of linsolve for Octave
Closes: #273
2012-08-06 18:26:16 +02:00
Michel Juillard f5f5ca1a83 removing printing used for debugging 2012-08-01 18:38:42 +02:00
Michel Juillard 2244af9c62 adding pruning option for 3rd order 2012-07-31 21:50:59 +02:00
Michel Juillard 84164dc57e adding possibility to pass derivative matrices to k_order_perturbation
MEX function
2012-07-07 21:21:28 +02:00
Michel Juillard 287b134884 k_order mex: added derivatives as members of KorderpDynare 2012-07-06 13:52:17 +02:00
Sébastien Villemot 83623723d9 Block kalman filter: enclose OpenMP statements in conditionals 2012-06-11 14:31:33 +02:00
Sébastien Villemot 4a9592a50c Fix LAPACK type error 2012-06-11 12:25:56 +02:00
Ferhat Mihoubi 2a8436aa44 Extends the block Kalman filter to the missing observations case (not called for the moment) 2012-06-11 10:39:25 +02:00
Sébastien Villemot 02efbd31a8 Convert files to Unix EOL 2012-06-08 19:10:19 +02: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 6cb7a5f1e5 Corrects a bug in the arguments returned by bytecode 2012-06-06 16:32:01 +02:00
Ferhat Mihoubi 7dbd826d7e Code cleaning 2012-06-06 16:30:28 +02:00
Sébastien Villemot f36f76760a Fix bug where the nth derivative of 0^n evaluated to 0 instead of n!
(complement to commit cd0bc28e)
2012-05-21 18:34:10 +02:00
Michel Juillard e63c41184c bytecode: removing debuging message 2012-05-20 14:37:30 +02:00
Sébastien Villemot 615535ad88 Fix compilation errors with GCC 4.7 2012-05-08 16:10:10 +02:00
Houtan Bastani b96c35a1a4 ms-sbvar: remove unused code 2012-04-13 15:56:25 +02:00
Houtan Bastani 402363bab2 MS-SBVAR: rewrite ms_variance_decomposition 2012-03-08 17:54:35 +01:00
Houtan Bastani 5f60f1bd27 MS-SBVAR: rewrite ms_forecast 2012-03-08 17:54:05 +01:00
Houtan Bastani 864e0b7c7e MS-SBVAR: rewrite ms_irf 2012-03-08 17:53:58 +01:00
Ferhat Mihoubi 3730957e9f Considers both 'inf' and 'nan' results in functions return and improves an error message 2012-03-06 11:09:46 +01:00
Ferhat Mihoubi 3072c6e611 Displays more details in case of singular system 2012-03-06 11:03:13 +01:00
Stéphane Adjemian (Charybdis) a2f3a53634 Parallelization of local_state_space_iteration_2 (used in non linear filters). 2012-03-05 23:11:49 +01:00
Sébastien Villemot c49d33e6ba Add local_state_space_iterations subdir to dist rule 2012-03-05 18:53:59 +01:00
Stéphane Adjemian (Charybdis) 40329e3e29 Added routine to compute one step ahead state space iteration (mex and m). The state space
equations are approximated at order two around the deterministic steady state.
2012-03-04 22:07:27 +01:00
Sébastien Villemot 89ca683ab9 Fix "make dist" following changes in estimation DLL 2012-02-24 12:21:33 +01:00
Michel Juillard da0beac147 updating calling sequence for estimation dll and introducing templates
when necessary
2012-02-23 18:39:41 +01:00
Ferhat eb567f5202 Cleaning the code: getting rid of unused variables 2012-02-17 10:59:39 +01:00
Sébastien Villemot a66594caed Add MEXEXT define to build system, adapt relevant DLL and Windows packaging
Closes: #235
2012-01-09 12:39:09 +01:00
Stéphane Adjemian (Charybdis) 3e84e333b4 Changed verbosity options (fast deterministic simulations). Default is options_.verbosity==1. 2011-12-26 17:46:48 +01:00
Sébastien Villemot cb9858d6a5 Minor improvements and bugfix to qmc_sequence
* make 2nd argument optional
* fix bug related to 3rd argument
* simplify code
2011-12-26 16:09:33 +01:00
Sébastien Villemot a1c466a3bb Fix license notice of qmc_sequence MEX 2011-12-26 15:40:44 +01:00
Sébastien Villemot 1d4301bd97 Fix build failure on Octave/32-bit 2011-12-26 14:41:02 +01:00
Stéphane Adjemian (Charybdis) 6bb3a1c736 Fixed bug. Wrong calling sequence to dgemm. 2011-12-23 12:10:23 +01:00
Stéphane Adjemian (Charybdis) b9d47ae42e Fixed the inverse Gaussian Cumulative Distribution Function. Return -Inf/Inf if input is equal to
0/1.
2011-12-23 11:16:06 +01:00
Stéphane Adjemian (Charybdis) be6f82f145 Fixed bug (wrong size in memcpy for the last input argument). 2011-12-23 10:43:52 +01:00
Stéphane Adjemian (Charybdis) dccc8478aa Fixed warning message (warning: cast to pointer from integer of different size). 2011-12-22 13:08:26 +01:00
Stéphane Adjemian (Charybdis) 699b93b9d4 Fixed mex error message (use DYN_MEX_FUNC_ERR_MSG_TXT). 2011-12-22 12:14:39 +01:00
Stéphane Adjemian (Charybdis) 1aa26572f4 Fixed headers. 2011-12-22 12:11:20 +01:00
Stéphane Adjemian (Charybdis) 645dc7dc45 Fixed headers. 2011-12-22 11:32:53 +01:00
Stéphane Adjemian (Charybdis) 4869fff243 Added new mex file for computing Quasi Monte-Carlo sequences (Sobol), texinfo headers and unitary tests are available in <DYNARE_PATH>/matlab/qmc_sequence.m. 2011-12-21 18:23:15 +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
Stéphane Adjemian (Charybdis) a36cf30118 Make options_.dynatol specific to x/f by adding dynatol.x and dynatol.f. By default dynatol.x=dynatol.f= old default value of dynatol. 2011-12-12 14:20:14 +01:00
Sébastien Villemot fefe425c61 mjdgges: add missing math.h header (for fabs()) 2011-12-12 10:35:39 +01:00
Michel Juillard 6927a261e3 changing int* in lapack_int* 2011-11-26 10:59:22 +01:00
Ferhat Mihoubi 1f8e4a517b Corrects the computation of the determinant of the covariance of the forecast error 2011-11-25 14:45:54 +01:00
Ferhat Mihoubi 715e528462 Corrects bugs in case of singular covariance matrix of the forecast error 2011-11-25 14:44:23 +01:00
Ferhat Mihoubi bae787c5a1 Provides informations on errors from BLAS 2011-11-25 14:31:26 +01:00
Ferhat Mihoubi 7df4621b6b Correct the size of covariance matrix of innovations 2011-11-25 14:27:25 +01:00
Michel Juillard b58eaa8e2b introducing new test for 0/0 case in mjdgges 2011-11-18 22:12:36 +01:00
Sébastien Villemot d4b4060d69 Fix build failure with -Werror=format-security
See Debian bug #646258 (http://bugs.debian.org/646258) and
http://wiki.debian.org/ReleaseGoals/SecurityHardeningBuildFlags for details.
2011-11-07 15:29:06 +01:00
Ferhat Mihoubi d336bb00a0 Correction of a bug the dimension of Q matrix is equal to the number of shocks, not to the number of observable variables 2011-10-28 22:40:05 +02:00
Ferhat Mihoubi ca10372607 * Correction of a bug appearing in a block decomposed model when an observable variable are also a state variable 2011-10-28 22:25:05 +02:00
Sébastien Villemot ebcc9d8f91 Fix crash of mjdgges when options_.qz_criterium = [] 2011-09-28 16:00:36 +02:00
Sébastien Villemot a1ee7f1ee4 block_kalman_filter: add MEX to build system 2011-09-23 18:22:15 +02:00
Sébastien Villemot 324ad05ec1 block_kalman_filter: fix memory leak 2011-09-23 18:22:00 +02:00
Sébastien Villemot 3f2e29f7bf Adapt block_kalman_filter to Dynare's way of handling errors in MEX files 2011-09-23 18:21:04 +02:00
Sébastien Villemot b21a99d9d2 Adapt block_kalman_filter for Dynare's BLAS/LAPACK framework 2011-09-23 18:15:18 +02:00
Ferhat Mihoubi 3d1a0c2652 block-Kalman filter is now available when block option is used 2011-09-20 14:18:31 +02:00
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
Houtan Bastani e57056ad14 sparse_hessian_times_B_kronecker_C: remove instances of mexErrMsgTxt 2010-09-23 10:45:18 +02:00
Houtan Bastani ca24c92ed7 A_times_B_kronecker_C: remove instances of mexErrMsgTxt 2010-09-23 10:45:08 +02:00
Houtan Bastani 7b0d6da920 mjdgges: remove instances of mexErrMsgTxt 2010-09-23 10:44:59 +02:00
Houtan Bastani e32c8b1b76 k_order_perturbation: remove instances of mexErrMsgTxt and mexErrMsgIdAndTxt 2010-09-23 10:44:39 +02:00
Houtan Bastani 1eaee02729 logposterior: remove instances of mexErrMsgTxt 2010-09-23 10:44:22 +02:00
Houtan Bastani b512a43848 fix file mode 2010-09-23 10:44:10 +02:00
Houtan Bastani 6631f2d1d0 Macro used to clean up after encountering an error in a mex file (previously handled by mexErrMsgTxt) and helper m file 2010-09-23 10:43:16 +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
Sébastien Villemot fbbc21d577 Estimation DLL: make it compatible with changes introduced in 648c3cd177 + code simplification 2010-09-20 19:25:31 +02:00
Sébastien Villemot aa8963c1db K-order DLL: code simplification 2010-09-20 19:24:23 +02:00
Sébastien Villemot d7754ca288 K-order DLL: make it compatible with changes introduced in
648c3cd177
2010-09-20 18:30:00 +02:00
Sébastien Villemot 6c66e3d2af Bytecode DLL: include dynmex.h instead of mex.h (for compatibility with older
MATLAB)
2010-09-20 10:23:05 +02:00
Ferhat Mihoubi 0ecfc5eed9 - Incorrect type for variable map_idx_res (the variable with highest error) 2010-09-17 12:26:54 +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
George Perendia 99a884e09c C++ Estimation DLL: Adding 1st cut draft RandomWalkMetropolisHastings.cc and related untested files for review 2010-09-14 12:21:45 +01:00
George Perendia 73fb122e1e Estimation C++ DLL: Enhancing KalmanFilter performance using symmetric matrix and vector BLAS routines calls added or enhanced in BlasBindings.hh and dynblas.h + some minor fixes to Matrix.hh and LogPriorDensity.cc 2010-09-03 11:17:50 +01:00
Sébastien Villemot 8589be3d4b K-order DLL: cosmetic changes
- remove unused argument of the DLL
- fix documentation inside source file
2010-08-30 17:11:58 +02:00
Sébastien Villemot a4769fc80d K-order DLL: no longer create an extra MAT file (useless and undocumented) 2010-08-30 17:11:26 +02:00
George Perendia 61da05b5e4 C++ Estimation DLL: KalmanFilter, dynlapack and LapackBindings with Cholesky decomp. based matrix inverter 2010-08-04 15:57:52 +01:00
George Perendia 1ac71f3d0c Estimation C++ DLL: 4 fixes and some additional files used in testing: sweuromodel_dll.mod, data and DsgeLikelihood.m modified for testing under octave 2010-08-04 14:52:56 +01:00
Michel Juillard 89bdc81ada suppressed computation of steady state inside k_order_perturbation 2010-07-17 10:18:25 +02:00
Michel Juillard 96bdf8c371 make sure that 2nd and 3rd order derivatives that haven't been computed are not taken to be zero. 2010-07-17 10:14:22 +02:00
Sébastien Villemot 9642683b7d Build system: fix for building source tarball 2010-07-12 14:30:57 +02:00
Sébastien Villemot acf5451c1f Build system: rename 'loglikelihood' to 'logposterior' 2010-07-09 12:48:08 +02:00
George Perendia 50c1e0a8ec C++ Estimation DLL: update of core files and logposterior.cc removed, keeping loglikelihood.cc 2010-07-08 09:56:19 +01:00
George Perendia 5c01144793 C++ Estimation DLL: update of testInitKalman.cc and testKalamn.cc 2010-07-08 09:56:18 +01:00
Sébastien Villemot f34c31307b K-order: minor fix for order of initialization of data members 2010-06-25 15:40:36 +02:00
Sébastien Villemot 04905660b8 Added new loglikelihood DLL (does not yet contain prior computation, only the likelihood) 2010-06-11 19:18:16 +02:00
Sébastien Villemot 7410094588 Estimation DLL: various minor changes 2010-06-11 19:16:03 +02:00
Sébastien Villemot e5d093c6ad Estimation DLL: refactor detrending stuff to avoid allocating the matrix for detrended data at every iteration 2010-06-11 19:11:27 +02:00
Sébastien Villemot 85f855d759 Estimation DLL: fixed bug in EstimatedParametersDescription::getNumberOfPeriods() 2010-06-11 18:03:14 +02:00
Sébastien Villemot 32e41b7b01 Estimation DLL, LogLikelihoodMain: fixed bug (likelihood was not initialized to zero) 2010-06-11 16:51:08 +02:00
Sébastien Villemot e1b274f2dc Estimation DLL, ModelSolution class: make llxSteadyState a data member 2010-06-11 14:54:10 +02:00
Sébastien Villemot 1e41458826 Estimation DLL: bugfixes in LogLikelihoodMain 2010-06-10 19:13:20 +02:00
Sébastien Villemot 974e9ac0ad Estimation DLL: remove 'const' qualifiers in order to be able to put these classes in std::vector (the STL want an assignment operator) 2010-06-10 19:13:20 +02:00
Sébastien Villemot 8a7ed1ec48 Estimation DLL, VDVEigDecomposition: remove useless test in destructor 2010-06-10 19:13:20 +02:00
Sébastien Villemot 2c0b3469be Estimation DLL, Vector class: fixed bug in the copy constructor 2010-06-10 19:13:20 +02:00
Sébastien Villemot 110a33a0c8 Estimation DLL, QRDecomposition: fix memory leak 2010-06-10 19:13:20 +02:00
Sébastien Villemot a1df331c58 Estimation DLL: fixed test for Prior PDF following the removal of "mode" in the Prior class 2010-06-10 19:13:20 +02:00
Sébastien Villemot 81f0cf1bc3 Bytecode DLL: provisions for Microsoft Visual C++ 2010-06-09 18:35:35 +02:00
Sébastien Villemot 045e2e21ef Bytecode DLL: bugfix for erf() 2010-06-09 18:31:39 +02:00
Sébastien Villemot fe61608ede Estimation DLL: bugfix in LogLikelihoodMain 2010-06-09 11:42:23 +02:00
Sébastien Villemot bedc69beb8 Estimation DLL: pass the name of the dynamic MEX file through the whole hierarchy of constructors (instead of the basename of the MOD file) 2010-06-09 11:42:22 +02:00
Sébastien Villemot 35ad5b1aba Estimation DLL: removed useless "mode" information in Prior class 2010-06-09 11:42:22 +02:00
Sébastien Villemot 90e9506d93 Estimation DLL: added test MOD file 2010-06-09 11:39:03 +02:00
Sébastien Villemot ab0d4a143e Build system: added new test for C++ prior classes 2010-06-09 11:37:42 +02:00
George Perendia 69abb07f05 C++ Estimation DLL: Adding basic Uniform and Gaussian random number generators to Priors.hh and a basic test routine 2010-06-08 16:38:49 +01:00
George Perendia 4f98b560ad Estimation C++DLL: First draft for LogPosteriorDensity, LogPriorDensity and associated changes: random number generation still missing 2010-06-02 13:38:27 +01:00
Houtan Bastani 762e703692 Allow the user to pass a constant seed 2010-06-01 11:18:55 +02:00
Houtan Bastani 1bc7bf7fbb make blas and lapack functions work with matlab 2010-06-01 11:18:54 +02:00
George Perendia 508422307e Estimation C++DLL: adding Standard dev. to Prior.cc & .hh 2010-05-25 17:53:58 +01:00
Michel Juillard a3d798836e k_order_perturbation: fixing bug in making of tensor of 3rd order derivatives
modifying tests and adding a new test against dynare++ output (fs2000k4.mod)
2010-05-22 16:12:39 +02:00
Sébastien Villemot 399d66d81c Estimation DLL, generalized Schur decomposition: fix bug with complex part of infinite generalized eigenvalue (was NaN instead of zero) 2010-05-14 19:26:52 +02:00
Michel Juillard 894ed518c8 mjdgges.c: eliminates bogus imaginary NaNs in eigenvalues 2010-05-14 15:03:15 +02:00
Sébastien Villemot 6f11442c7b Estimation DLL: fix to testModelSolution 2010-05-07 18:18:24 +02:00
George Perendia 775a1f6471 Estimation DLL: updating test function 2010-05-07 17:09:51 +01:00
George Perendia 1c5c7f3fbf Estimation DLL: adding LapackBindings.hh 2010-05-07 17:00:56 +01:00
Sébastien Villemot b903776e0c Estimation DLL: fixed type errors in VDVEigDecomposition class 2010-05-07 17:17:30 +02:00
Sébastien Villemot 3688a6ef5a Estimation DLL: bugfix in constructors for vector views 2010-05-07 17:17:30 +02:00
George Perendia 55fc3feea4 Estimation: Update of main files 2010-05-07 16:08:58 +01:00
Sébastien Villemot b101dbd483 Estimation DLL: give the possibility to construct Vector/Matrix views out of other views 2010-05-07 12:18:45 +02:00
Sébastien Villemot 3292ee68c2 Build system: updates for estimation DLL 2010-05-07 10:40:03 +02:00
Sébastien Villemot ec5fd63063 Estimation DLL: removed obsolete file 2010-05-07 10:39:54 +02:00
Sébastien Villemot e4f640f201 Estimation DLL: simplification of the handling of indices in T and R matrices 2010-05-06 18:57:15 +02:00
Sébastien Villemot 5aa17370e8 Estimation DLL: minor type fix 2010-05-06 16:45:50 +02:00
Sébastien Villemot 2b5a907bb0 Estimation DLL: optimization in Kalman filter 2010-05-06 16:30:13 +02:00
Sébastien Villemot ba0503628e Estimation DLL: no longer pass lead/lag incidence matrix as argument, this is redundant with the zeta indices 2010-05-06 15:32:11 +02:00
Sébastien Villemot 6bdfc2958b Estimation DLL: removed obsolete files 2010-05-06 15:31:06 +02:00
George Perendia 31d9dd2481 estimation: extending LogLikelihoodSubSample.hh 2010-05-06 12:45:40 +01:00
George Perendia c729b8984d Estimation Adding more Headers 2010-05-06 12:37:06 +01:00
George Perendia 1819272d51 Estimation: Fix to VDVEigDecomposition.hh 2010-05-05 18:01:59 +01:00
George Perendia ba31b9bcbf Estimation libmat VDV Eigen decomposition class 2010-05-05 16:47:47 +01:00
Sébastien Villemot 208210c6fd Merge remote branch 'george/master' 2010-04-23 18:31:38 +02:00
George Perendia 43b2aae64e C++ Estimation Minor changes to KalmanFilter initialisation and testing routines to improve handling structural changes parameters and test accuracy 2010-04-23 15:28:42 +01:00
Sébastien Villemot 18c36c3dd5 Merge remote branch 'george/master' 2010-04-16 18:34:57 +02:00
George Perendia e9846ae65f C++ Estimaion: Minor change KalmanFilter.* to use gain matrix KFinv for conversion check and cosmetic changes to ModelSolution.cc, testInitKalman.cc and testkalman.cc 2010-04-16 17:00:51 +01:00
Ferhat Mihoubi f849b11563 The functions erf, normpdf and normcdf work fine with bytecode option 2010-04-16 17:00:05 +02:00
Sébastien Villemot 0281c5138a Build system: added new testKalman for Estimation DLL 2010-04-13 18:41:15 +02:00
George Perendia a489c8810d C++ Estimation: Adding test and fixing a bug for KalmanFilter.cc and making some cosmetic changes to InitializeKalmanFilter.cc and ModelSolution.cc 2010-04-13 12:38:13 +01:00
Sébastien Villemot b8bf1794ca Minor fix in prototype of LAPACK dgees 2010-04-02 14:53:14 +02:00
George Perendia f0fc974b9e !st draft Kalman Filter main, auxiliary an test routines for C++ estimation 2010-04-01 13:36:58 +01:00
George Perendia 127e5ca05a Minor data initiation bug fix in testInitKalman.cc 2010-03-16 16:54:28 +00:00
Sébastien Villemot b1e90e59af Estimation DLL: added testInitKalman to the build system, and modify it to accept the dynamic DLL as argument 2010-03-16 15:57:10 +01:00
Sébastien Villemot d93a5af70b Estimation DLL, DynamicDLL class: removed dependency on MEX header, unnecessary and makes the compilation of test files more complicated 2010-03-16 15:55:37 +01:00
Sébastien Villemot 35377ff303 Estimation DLL, InitializeKalmanFilter: removed unknown header 2010-03-16 15:55:08 +01:00
George Perendia f62dce714e Minor modification of types 2010-03-16 13:52:00 +00:00
George Perendia c738941044 Merge branch 'master' of ssh://kirikou.dynare.org/srv/d_kirikou/git/dynare 2010-03-16 13:27:29 +00:00
George Perendia 881b1168fe Adding InitializeKalmanFilter.cc/hh, its supporting files: DetrendData.cc/hh (a basic one), libmat/DiscLyapFast.cc, a test driver routine and a minor amendment to ModelSolution.hh. 2010-03-16 13:26:05 +00:00
Sébastien Villemot fd3c35937b Estimation DLL, dynamic DLL loading: minor changes to testModelSolution (now takes the full name of the dynamic DLL in argument) 2010-03-16 10:27:58 +01:00
Sébastien Villemot 3c8bfc5ef0 Estimation DLL, dynamic DLL loading: fixed memory leaks 2010-03-16 10:27:58 +01:00
George Perendia 882ea0ed75 Amending assertions in BlasBindings.hh 2010-03-15 12:12:43 +00:00
Sébastien Villemot 2449a4365c K-order DLL, DynareNameList class: removed memory leaks 2010-03-09 18:30:23 +01:00
Sébastien Villemot d95b0cf6d7 K-order DLL, KordpDynare class: removed memory leaks 2010-03-09 18:30:23 +01:00
Sébastien Villemot bb3675e75c K-order DLL, DynamicDLL class: removed memory leaks 2010-03-09 18:30:23 +01:00
Sébastien Villemot 1b3bc4a825 K-order DLL: removed useless stuff 2010-03-09 18:30:23 +01:00
Sébastien Villemot 1bc6da864c Estimation DLL, matrix library: adding test-repmat to build system 2010-03-08 13:50:02 +01:00
Sébastien Villemot 2aab5b47f2 Estimation DLL, matrix library: minor fixes for removing compiler warnings 2010-03-08 13:49:47 +01:00
George Perendia a78ca35807 Adding test-repmat.cc - a test for new Matrix.hh repmat utilities 2010-03-08 12:39:25 +00:00
George Perendia fa54eb55ca Adding 8 new template functions to Matrix.hh mat namespace, few of which emulate Matlab repmat and assign / reorder by vector. 2010-03-08 12:22:23 +00:00
George Perendia 5d0e93adfe Declare libmat destructors virtual 2010-03-08 10:09:45 +00:00
Sébastien Villemot 3475341ac9 Bytecode DLL: fixed compilation with MSVC 2010-02-23 16:04:32 +01:00
Sébastien Villemot 263725aa1f Estimation DLL, ModelSolution class:
* fixed initialization of matrices
* removed useless ModelSolutionException, rather forward upwards the exception thrown below
* DynamicModelDLL is now a full member instead of a pointer
2010-02-22 15:58:44 +01:00
Sébastien Villemot 3cacb48c81 Estimation DLL, MEX utils: fix compilation issues 2010-02-22 15:56:00 +01:00
Sébastien Villemot a17207fb56 Estimation DLL: fixed remaining EOL problems 2010-02-22 15:09:48 +01:00
George Peredia f430e53e01 Fixing of the testModelSolution.cc 2010-02-22 13:26:47 +00:00
Sébastien Villemot 30d9feb146 Estimation DLL:
* finished test for DecisionRules
* added new test for LUSolver
* improved test for QRDecomposition
2010-02-19 18:42:02 +01:00
Sébastien Villemot dcf10eba56 Estimation DLL: added decision rules w.r. to exogenous shocks 2010-02-19 18:41:12 +01:00
Sébastien Villemot 5ee45cfb60 Estimation DLL: fixed decision rules with respect to state variables (ghx) 2010-02-19 18:00:34 +01:00
Sébastien Villemot 547a912d5e Estimation DLL, matrix library:
* fixed various bugs
* added utility for computing the infinite norm
* changed the direction of mat::transpose(A, B) for consistency with GSL
2010-02-19 17:04:45 +01:00
Sébastien Villemot 0ef2f8c4bd Estimation DLL: optimization of DecisionRules 2010-02-19 14:24:29 +01:00
Ferhat Mihoubi faa5da07dc Bug correction in error messages and reduction of memory requirement during simulation 2010-02-19 11:03:53 +01:00
Sébastien Villemot 229d0e1ea4 Merge remote branch 'george/master' 2010-02-18 19:19:14 +01:00
Sébastien Villemot a78bdab6d3 Estimation DLL: test file for DecisionRules based on example1.mod (only checks the eigenvalues for the moment) 2010-02-18 19:18:25 +01:00
Sébastien Villemot 1280000ee4 Estimation DLL: fixed various bugs in DecisionRules 2010-02-18 19:17:55 +01:00
Sébastien Villemot cd9f9ff1b9 Estimation DLL, matrix library: fixed bug in mat::row_copy() 2010-02-18 19:11:09 +01:00
unknown 9a77efe440 Amend Estimation C++ ModelSolution, some utils (new Matrix version of dynamic_dll) and a test routine 2010-02-18 17:45:28 +00:00
Sébastien Villemot 07091a6b63 Estimation DLL, matrix library: removed useless end-of-lines 2010-02-18 18:11:21 +01:00
Sébastien Villemot 9ac6553776 Estimation DLL, matrix library: fixed bug in MatrixView::setAll() 2010-02-18 18:10:59 +01:00
Sébastien Villemot 4f7ef5f49d Estimation DLL, matrix library: added utility for computing A=B' 2010-02-18 18:10:45 +01:00
Sébastien Villemot b737535955 Estimation DLL, matrix library: fixed problem in QRDecomposition (two workspaces are needed of different sizes) by imposing in the constructor the size of the matrix to be left-multiplied by Q 2010-02-18 18:10:16 +01:00
Sébastien Villemot 30ee44f8b4 Estimation DLL, matrix library: fixed bug in mat::negate(),;mat::add(), mat::sub() 2010-02-18 18:09:04 +01:00
Sébastien Villemot daf97deb04 Estimation DLL, matrix library: fixed incorrect assertion in col_copy() 2010-02-17 12:22:02 +01:00
Sébastien Villemot 440db94603 Estimation DLL, DecisionRules: fixed incorrect matrix dimensions 2010-02-17 12:21:39 +01:00
Sébastien Villemot 8fa10d61cc Build system: fix the creation of tarball 2010-02-13 09:52:43 +01:00
Sébastien Villemot fb97797405 Estimation DLL: first version of matrix library + still unfinished decision rules computation 2010-02-09 19:15:59 +01:00
Sébastien Villemot cf8f793c55 k_order_perturbation: give a value to model residuals, otherwise valgrind logs are cluttered with unitialized value errors 2010-02-09 14:32:40 +01:00
Sébastien Villemot 34ab1a5686 k_order_perturbation: fixed illegal cast 2010-02-09 14:24:16 +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 MIHOUBI cb1cc4049b convergence error message changed in bytecode 2010-01-29 17:51:39 +01:00
ferhat b5727e0658 Adds location indications in error message of "bytecode" + minor correction (string passed as &string).
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3374 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-22 16:42:08 +00: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 98de32dfcb build_matlab: fix for 64-bit Mac (thanks to Jacob Smith for reporting)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3371 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-22 09:14:09 +00:00
sebastien cda4f57a7c build_matlab.m: add support for 64-bit Mac Intel
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3368 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-19 11:21:58 +00:00
sebastien e7adf28fbd A few more copyright fixes
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3316 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-08 09:54:43 +00:00
sebastien 1d64cb1ef9 build_matlab.m: activate POSIX threads on Linux and Mac OS
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3304 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-06 09:40:45 +00:00
sebastien 65fc856710 k_order_perturbation: renamed source files with *.cc and *.hh extensions, for compliance with Dynare coding standards + adapted the build system accordingly
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3260 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-17 11:00:50 +00:00
sebastien 9eb14e0017 Removed obsolete build_octave
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3254 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-16 17:29:51 +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 fb8406ef0a USE_DLL option now works with MSVC + Added new options for Windows to 'dynare' command, to select the compiler: 'cygwin' and 'msvc' + Added the mexopts.bat for Cygwin in the SVN
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3223 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-11 14:46:21 +00:00
sebastien 4bcbd06980 k_order_perturbation: cosmetic change
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3207 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-08 10:01:41 +00:00
george effee9ffab removed more leaks
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3205 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-07 17:03:59 +00:00
george 5c75c9aaee removed more leaks in calcDerivatives
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3204 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-07 12:48:18 +00:00
george 12d7abab24 removed leaks in calcDerivatives
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3203 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-07 12:35:55 +00:00
michel 8198b1a1eb 4.1 k_order_perturbation: correcting bug in releasing _dynamic.DLL (Windows version)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3200 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-06 21:21:06 +00:00
michel 5031122649 4.1 k_order_perturbation: simplifying dynamic_dll code
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3199 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-06 14:10:43 +00:00
michel f22fa8979c 4.1 k_order_perturbation: fixing typos
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3198 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-06 13:21:52 +00:00
george c6ed380a08 Additional #if !defined(__CYGWIN32__) && !defined(_WIN32)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3197 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-06 12:21:38 +00:00
michel e690320b1d 4.1: more defined __CYGWIN32__
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3196 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-06 11:56:11 +00:00
george 684d8ac822 Cleared up DynareMxArrayToString in k_order_perturbation.cpp and changed #ifdef to #if defined() in dynamic_dll.cpp
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3195 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-06 00:03:22 +00:00
sebastien 0dd2bdf39a k_order_perturbation: fix for compilation with MS Visual C++
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3185 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-01 15:18:48 +00:00
george ff6f2a90ea Updating Working Prototype for performance testing
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3182 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-01 13:34:34 +00:00
sebastien ad71ee53c2 k_order_perturbation: cosmetic changes for the sake of clarity
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3180 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-30 20:31:11 +00:00
sebastien 03600d9131 k_order_perturbation DLL:
* no longer use mexPrintf()/mexErrMsgTxt() outside mexFunction(): use exceptions to report errors, in order to be able to integrate the code in a standalone executable
* fixed a few memory leaks (other still remain)
* fixed a buffer overflow issue in the filename of the dynamic MEX (using C++ string object)
* various cosmetic cleanups


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3177 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-30 16:31:27 +00:00
michel 5f05a14b17 v4.1: fixing k_order_perturbation DLL for order == 3
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3170 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-29 20:50:39 +00:00
george d28442f206 Update, still subject to further testing
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3160 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-20 17:43:05 +00:00
sebastien cdbbc97fc7 build_matlab.m: fixes for MSVC (object files have extension .obj)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3130 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-06 11:32:08 +00:00
sebastien 93b4e4c74d build_matlab.m: added building of dynare_simul_ + factorized compilation of libdynare++ (fixes trac issue #50)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3129 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-06 11:14:19 +00:00
sebastien 8bfc97626f build_matlab.m: reverted back to r3123 version
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3127 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-05 10:04:00 +00:00
george 91df747554 Minor updates
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3124 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-04 17:20:35 +00:00
sebastien 30d2f00cc2 Reorganized the directory hierarchy for storing MEX files for MATLAB:
* mex/matlab/ is now the default location
* removed mex/2007a, mex/2007b and mex/2009a-64bit
* on Windows platforms, use version specific subdirs of mex/matlab if present (called win32-6.5.1-7.4, win32-7.4-7.9, win64-7.2-7.4, win64-7.5-7.7, win64-7.8-7.9)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3123 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-04 10:56:37 +00:00
sebastien 295f998503 Dynare++ and k_order_perturbation DLL:
* support Microsoft Visual C++ 2008 compiler (necessary for 64-bit 
platforms)
* use standard C++ headers for C Standard Library support


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3121 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-03 14:16:18 +00:00
sebastien 11230eec3f Build system: added k_order_perturbation to the build_matlab script
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3106 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-30 17:29:50 +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
george a479888c1b Adding new test mexFunction + some minor updates and corrections
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3103 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-30 13:21:03 +00:00
sebastien ffd9b2d405 preprocessor: clean-up workaround for acosh(), asinh(), atanh() on Win 64 platforms
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3101 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-29 17:16:10 +00:00
ferhat 079b5a7abb - Correction in the memory allocation (new - delete used with object)
- bytecode test upgraded

git-svn-id: https://www.dynare.org/svn/dynare/trunk@3075 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-23 11:23:47 +00:00
sebastien 9ab04f3323 Renamed kordepert to k_order_perturbation
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3070 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-23 09:07:47 +00:00
george 3fb3430e91 New Matlab functions emulation routines: Assign by vector indices (a(k,l)=b(m,n)) , repmat, multiply elements (.*)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3068 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-23 08:08:53 +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 f7d69ff58c avoid useless iteration in simulation of simple equations
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3025 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-07 09:31:58 +00:00
sebastien bbc7e77648 korderpert: fix missing include for Cygwin with -mno-cygwin option
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3018 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-02 17:20:19 +00:00
ferhat ece194b602 The local variables are implemented with byte code
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3015 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-02 16:47:43 +00:00