Commit Graph

449 Commits (90adfc591818b8a0fb9ca651f0ca77faa58dc625)

Author SHA1 Message Date
Ferhat Mihoubi 88cdf0193c - Correction of a bug in the Jacobian Matrix computation for a non block-decomposed model using bytecode 2010-11-25 16:11:22 +01:00
Ferhat Mihoubi 8d79ed5db9 - Adds the derivatives with respect to deterministic exogenous variables
and corrects the computation of the number of column in the jacobian matrices in a block decomposed model without bytecode
- Identical corrections for models using bytecode without block decomposition
2010-11-25 16:11:12 +01:00
Ferhat Mihoubi 61a251535f Correction of bugs in check command with block decomposition and
Add the missing dr_block m-file
2010-11-25 16:10:46 +01:00
Sébastien Villemot e5c7e848e4 Preprocessor: also perform numeric initializations in stochastic context 2010-11-25 16:07:55 +01:00
Sébastien Villemot 771b4e766c Preprocessor: various cleanups related to the signed vs non-negative numerical constants issues 2010-11-25 13:45:35 +01:00
Sébastien Villemot 76d5d441ea Change the syntax for values of deterministic shocks:
Arbirtrary expressions after the "values" keywords must now be enclosed
within parentheses; consider the following example:
<code>
periods 1:2;
values -1 -2;
</code>

In the previous syntax, this was interpreted by the preprocessor as a shock of
value -1-2 = -3 for periods 1 and 2, which is clearly not the intent of the
user; with the new syntax, this will be rejected (too many values compared to
the number of ranges).

Also note that now commas are no longer required between arbitrary expressions,
since the parentheses are sufficient for separating them.
2010-11-24 18:26:43 +01:00
Sébastien Villemot 3459e1ffc4 Preprocessor: max lead/lags in the model are no longer affected by lead/lags on parameters (closes #153) 2010-11-18 11:21:20 +01:00
Sébastien Villemot 9d6ad96abd New "console" option (closes #130) 2010-10-28 11:29:39 +02:00
Houtan Bastani c28d15d78a Dynare parallel: preprocessor implementation 2010-10-28 10:54:43 +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 c74ee8e61b - Store the incidence matrix containing reordered equations and variable in block_structure 2010-10-27 15:30:01 +02:00
Ferhat Mihoubi fc31afb356 - The Jacobian matrix in the block decomposed model without bytecode option is now sparse 2010-10-22 16:20:28 +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 57a2e33828 Histval: fixed bug for exogenous introduced in previous commit 2010-10-20 14:56:35 +02:00
Sébastien Villemot 4a252d8d7c Histval block:
- fail when user tries to initialize a variable at a period which is not in the model, and make the error message explicit
- correctly handle exogenous variables in stochastic mode, which are also substituted with an aux var
- added test files
2010-10-20 14:47:03 +02:00
Sébastien Villemot 7f59b8074c Preprocessor: fix possible bug in histval (need to limit search of aux vars to aux vars for lagged vars, otherwise we could have a wrong match with some other kind) 2010-10-20 11:39:09 +02:00
Houtan Bastani 894155be88 trend_var, growth_factor, deflator: stationarize a nonstationary model and test 2010-10-18 16:07:42 +02:00
Houtan Bastani bcc590aafa add preprocessor simplification rule 2010-10-18 15:51: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
Sébastien Villemot 92d9a62dd3 Preprocessor: give more explicit error message when lead or lag is used inside 'planner_objective' 2010-10-11 14:49:23 +02:00
Sébastien Villemot e2ce87b7d5 Preprocessor: don't create auxiliary variables for expressions appearing only
in unused model local variables
2010-10-11 12:58:38 +02:00
Houtan Bastani 078574ee4a external_function: add support for use_dll 2010-10-07 18:05:07 +02:00
Houtan Bastani c19df582e0 external_function: modified to pass functions as string names as opposed to function handles to reduce number of calls to mexCallMatlab when use_dll option is invoked 2010-10-07 16:49:36 +02:00
Houtan Bastani a20bc07fdf replace deprecated Matlab function strvcat with char 2010-09-27 16:11:14 +02:00
Ferhat Mihoubi bc089f732e - Correct the simul call without input argument 2010-09-24 11:07:43 +02:00
Sébastien Villemot 3068fbda8f Preprocessor: no longer crashes when some dynamic variables appear only in
unused model local variables (closes #101)
2010-09-23 12:13:30 +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 648c3cd177 Preprocessor: implement STEADY_STATE operator with "use_dll" and "block"
options (closes #98)
2010-09-20 17:04:38 +02:00
Ferhat Mihoubi 25b3c84b40 RESID command is compatible now with block option and without bytecode option (closes ticket #45) 2010-09-17 16:54:43 +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 60f7678669 - Substitutes lead for exogenous and endogenous variables in the deterministic case: direct substitution of the variables even in non-linear expressions 2010-09-17 12:17:09 +02:00
Sébastien Villemot aeb1a9ee1b Preprocessor: make option "no_static" work even when "bytecode" is not present 2010-09-17 12:17:05 +02:00
Ferhat Mihoubi 98c371f735 Bug correction in the deterministic simulation: to solve a purely backward or forward looking block requires contemporaneous derivatives only. 2010-09-17 12:17:00 +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
Sébastien Villemot dbc9795a08 Preprocessor: rename "NodeID" in "expr_t" 2010-09-17 12:13:26 +02:00
Sébastien Villemot 25cf12f4f1 Preprocessor: uniformize typedef names (with a "_t" suffix) 2010-09-16 19:00:48 +02:00
Sébastien Villemot 3c57d73120 Preprocessor: clean prototypes of ModelTree methods (removed arguments
redundant with data members, added const keywords, use passing-by-reference)
2010-09-16 17:51:50 +02:00
Sébastien Villemot 46b896e987 Preprocessor:
- remove useless output type oMatlabDynamicModelSparseLocalTemporaryTerms
(indistinguishable from oMatlabDynamicModelSparseLocal)
- fix bug in output type of sparse static model
2010-09-16 16:57:35 +02:00
Sébastien Villemot c3608b9ba7 Preprocessor: fix crash when mean or stderr of an estimated parameter is specified as an expression instead of a plain value (bug introduced in 28d30d9a62) 2010-09-16 15:37:27 +02:00
Michel Juillard a5b5f39987 Preprocessor: corrected bug on HISTVAL with lags > 1 2010-09-10 11:43:48 +02:00
Michel Juillard 19fba43208 Revert "Preprocessor: change the automatically generated name of auxiliary vars for"
This reverts commit 524e9a9c67.
2010-09-07 17:12:06 +02:00
Sébastien Villemot 524e9a9c67 Preprocessor: change the automatically generated name of auxiliary vars for
lagged endo/exo so that they contain the type-specific symbol ID (instead of
the preprocessor internal symbol ID)
2010-09-07 13:03:51 +02:00
Sébastien Villemot 54c1c0dfb6 Preprocessor: fix line numbering problems due to native MATLAB statements (bug introduced in a0cd4b33ae and 6582341799) 2010-08-30 14:37:48 +02:00
Sébastien Villemot cda56cab74 Preprocessor: in the lexer, "end;" now corresponds to 2 tokens (instead of one), for consistency with the other tokens 2010-08-30 14:16:07 +02:00
Sébastien Villemot e5ce0264bf Preprocessor: when removing lags greater than 2 on endogenous or lags on exogenous, don't substitute model local variables that do not need to 2010-08-19 15:20:54 +02:00
Sébastien Villemot 0657c7151a Preprocessor: in the parameter derivatives file, add the global "oo_" when the STEADY_STATE operator is used 2010-08-12 18:16:24 +02:00
Michel Juillard 8440c17499 preprocessor: fixing bug for OSR optim_weights with covariances 2010-08-10 20:16:59 +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
Michel Juillard 34828e4110 added conditional variance decomposition to estimation options 2010-06-26 15:39:25 +02:00
Houtan Bastani b5baf45f36 move validation check from constructor to checkpass 2010-06-24 19:42:38 +02:00