Commit Graph

757 Commits (c079ace8c3185fded3fa260e464f15912be1dbd2)

Author SHA1 Message Date
Ferhat Mihoubi 667a25ce9e - Bug correction during the block decomposition: the models' graph was ill oriented before the search of strong components 2010-12-10 15:11:12 +01:00
Ferhat Mihoubi 97664607b2 - external functions are compatible with block decomposition and/or bytecode 2010-12-10 12:06:50 +01:00
Michel Juillard dfbd10a524 added choice of parameter set to shock_decomposition. This corrects a bug when shock_decomposition is requested after Metropolis iterations. 2010-12-08 13:02:59 +01:00
Houtan Bastani 641f03b8d0 fixed bug that would force node sharing when two or more expectation operators had the same expression but different information sets 2010-12-08 12:29:47 +01:00
Sébastien Villemot d4520da481 Preprocessor: fix bug with varexo_det in conjunction with USE_DLL 2010-12-08 11:33:20 +01:00
Sébastien Villemot 8b9d0e91b5 Preprocessor: delete remaining dynamic.m file when using USE_DLL 2010-12-08 11:32:13 +01:00
Sébastien Villemot 33dee34214 MOD files ending with @#endif/@#endfor but no newline now work (closes #73) 2010-12-06 17:59:30 +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 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
Houtan Bastani bc62662fcf DSGE-Var: bug fix. Add init param statement at the before the estimation statement 2010-06-24 15:08:23 +02:00
Houtan Bastani bab490fc7f DSGE-VAR: support deprecated way of declaring dsge_prior_weight 2010-06-22 10:38:54 +02:00
Houtan Bastani 9b5df05804 DSGE-VAR: introduce dsge_var and dsge_varlag options to estimation statement 2010-06-22 10:38:43 +02:00
Houtan Bastani 6582341799 enable multi-line native matlab statements 2010-06-21 13:08:42 +02:00
Houtan Bastani a0cd4b33ae remove comments that are placed on the same line as native Matlab code in a .mod file 2010-06-18 16:21:28 +02:00
Houtan Bastani 8b7d4d590b fix typo 2010-06-18 16:21:28 +02:00
Sébastien Villemot f1abbe724f Preprocessor: cosmetic changes related to 'size_t' 2010-06-18 15:48:46 +02:00
Sébastien Villemot c4ef68b293 Preprocessor: fixed bug (substitution was incorrectly done with leads on exogenous) 2010-06-11 19:21:03 +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 6a8ac70f71 Preprocessor: cosmetic changes 2010-06-10 17:54:03 +02:00
Sébastien Villemot f48eb94f0e Preprocessor: remove spurious compiler warning 2010-06-10 17:52:37 +02:00
Houtan Bastani f1f455026b fix error message 2010-06-10 15:16:54 +02:00
Houtan Bastani 28d30d9a62 Bug fix: catch the case when a parameter follows a beta distribution with mean = std err = 0.5 2010-06-09 15:09:55 +02:00
Sébastien Villemot bed8f4b689 Preprocessor: use a sparse representation for the 2nd derivatives of residual and jacobian w.r.t. parameters and the derivative of hessian w.r.t. parameters 2010-06-07 18:46:57 +02:00
Sébastien Villemot 30d34f2445 Preprocessor: only compute on demand the 2nd derivatives of residual and jacobian w.r.t. parameters and the derivative of hessian w.r.t. parameters 2010-06-07 16:42:27 +02:00
Sébastien Villemot 4a23d93199 Preprocessor: changing return order of parameter derivatives to match Marco's code 2010-06-04 09:57:56 +03:00
Sébastien Villemot 996a646d8f Preprocessor: fix for 'steady_state_model' when not computing Ramsey policy' 2010-06-04 09:33:54 +03:00
Michel Juillard ade0cd9d26 steady_state_model: authorizing change in parameter values in steady_state_model block + removing ys_ initialization to zero 2010-06-03 15:59:35 +02:00
Sébastien Villemot ccaa8e6443 Preprocessor and ref. manual: added 'pruning' option (closes #104) 2010-05-31 18:38:49 +02:00
Sébastien Villemot c58312d3b7 Steady state file: in the presence of 'ramsey_policy', no longer check that the declarations are recursive, and use input vector of steady state file as initial values 2010-05-31 17:43:17 +02:00
Michel Juillard cfa624f52f preprocessor: corrected missing initialization of v3 in <fname>_dynamic.c 2010-05-21 11:38:23 +02:00
Sébastien Villemot 891ad22564 Macro-processor: integer ranges with lower bound greater than upper bound are now empty (for consistency with MATLAB) 2010-05-12 11:50:27 +02:00
Sébastien Villemot 49389592e7 Preprocessor: never set an equal node as a temporary term 2010-05-05 10:10:01 +02:00
Sébastien Villemot 49bdcef648 Preprocessor: replace non-standard operators 'and'/'or' by '&&'/'||' 2010-04-28 16:03:32 +02:00
Sébastien Villemot b3602541ac Preprocessor: with 'steady_state_model' command, write auxiliary equations in the steady state file 2010-04-27 17:04:52 +02:00
Sébastien Villemot 37abe362a3 Preprocessor: added new 'steady_state_model' keyword for automatically creating steady state file 2010-04-23 18:39:07 +02:00
Sébastien Villemot ed84e27319 Preprocessor: added new SymbolTable::orig_endo_nbr() method 2010-04-23 18:36:51 +02:00
Sébastien Villemot 19338906ba Preprocessor: add a check to DynamicModel::toStatic() 2010-04-23 18:32:30 +02:00
Sébastien Villemot e2c0854cd4 Preprocessor: removed useless version of DataTree::AddVariable() 2010-04-23 18:32:25 +02:00
Sébastien Villemot 12ca3fe707 Preprocessor: removed useless version of DataTree::AddExternalFunction() 2010-04-23 18:32:19 +02:00
Sébastien Villemot 4b96b35dad Preprocessor: changed the prototype of DataTree::AddLocalVariable() 2010-04-23 18:32:14 +02: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 b2220c0346 Preprocessor: rename a function argument to avoid name conflict with standard error filestream 2010-04-15 17:46:05 +02:00
Sébastien Villemot da74e53204 Preprocessor:
* give the possibility of calibrating measurement errors in the "shocks" blocks (only for observed endogenous variables)
* M_.H is now initialized in the preprocessor
* only one "varobs" statement is now accepted in a MOD file
2010-04-14 15:03:41 +02:00
Sébastien Villemot 7c01486b84 Preprocessor: minor fix in header inclusion 2010-04-06 11:07:19 +02:00
Michel Juillard d6835338a5 adding option SELECTED_VARIABLES_ONLY 2010-04-02 11:51:21 +02:00
Sébastien Villemot b8b3491a29 Preprocessor: removed spurious warnings 2010-03-29 12:52:29 +02:00
Sébastien Villemot e3be730a46 Preprocessor: fixed bug with warnings (they were all disabled) 2010-03-29 12:44:20 +02:00
Michel Juillard 9b20ae958c added options filter_covariance filter_decomposition for new version of the smoother 2010-03-22 21:57:46 +01:00
Sébastien Villemot 41343575a7 Preprocessor: removed unfinished 'prior_analysis' and 'posterior_analysis' statements 2010-03-18 14:56:22 +01:00
Houtan Bastani eb4efa59ac second derivatives of model equations w.r.t. parameters. 2010-03-16 10:15:19 +01:00
Houtan Bastani b291f4fcf7 small fix to implementation of second derivatives of jacobian w.r.t. parameters 2010-03-15 17:23:55 +01:00
Houtan Bastani 19c4f7426c second derivatives of jacobian w.r.t. parameters 2010-03-15 16:02:07 +01:00
Houtan Bastani 2c1af4dc3b bug fix: missing break in switch statement 2010-03-15 15:59:54 +01:00
Michel Juillard 195fdece71 Merge branch 'master' of ssh://kirikou.dynare.org/srv/d_kirikou/git/dynare 2010-03-15 12:05:33 +01:00
Michel Juillard 6d4b0ecab7 SWZ:
- reverting part of last change to handling of Qi and Ri in ComputingTasks.cc: r is the number of lags present in the restrictions
- fixing handling of Dirichlet option in mhm_input.dat. This fixes the strange Signal messages when running C executables.
- fix path in test_upper_cholesky.mod
2010-03-15 12:03:37 +01:00
Houtan Bastani 4eefafef8a bug fix: prevent vars with leads/lags from being used outside of the model block. 2010-03-15 10:47:44 +01:00
Houtan Bastani ad31f7388e derivative of hessian w.r.t. params. 2010-03-11 16:51:07 +01:00
Houtan Bastani 380ced7673 minor code cleanup. 2010-03-11 12:04:06 +01:00
Houtan Bastani 1c3f7b83e5 Added erf as an internally supported function and updated manual. 2010-03-11 12:00:37 +01:00
Houtan Bastani 5d45bf947d Added normpdf as an internally supported function and updated manual. 2010-03-11 10:16:40 +01:00
Michel Juillard 591e426110 - reversed ordering for lower and upper Cholesky
- added tests
- fixed various bugs
- modified initial values
Still unfinished
2010-03-10 08:32:51 +01:00
Houtan Bastani 5f3cd9894e fixed spacing 2010-03-09 16:40:52 +01:00
Sébastien Villemot 35a20551a6 Preprocessor: minor refactoring and documentation of ExprNode::writeOutput() methods 2010-03-09 12:16:32 +01:00
Houtan Bastani 30ea396a08 Allow temporary terms to work with external functions 2010-03-09 11:21:14 +01:00
Houtan Bastani 4f6a3669c6 Added expression sharing for external functions 2010-03-03 11:43:22 +01:00
Houtan Bastani 28894927dd Modified external functions to enforce consistent number of function arguments within model_block 2010-03-03 11:40:13 +01:00
Houtan Bastani 19d114ed32 Restricted syntactical variances in the implementation of the external_functions statement. 2010-02-24 15:37:52 +01:00
Sébastien Villemot d860763122 Preprocessor: minor cosmetic changes related to external functions 2010-02-23 19:08:54 +01:00
Houtan Bastani 12c4a52ebc Add support for external functions 2010-02-23 18:15:18 +01:00
Sébastien Villemot 38b8ccf52d Preprocessor: add error message when using USE_DLL with MSVC and some function unsupported by MSVC 2010-02-23 16:59:34 +01:00
Sébastien Villemot eba049899e Preprocessor:
* in DataTree, new functions for testing if some opcode (unary, binary or trinary) is used somewhere in the tree
* removed DataTree::containsSteadyState(), rather use a call to the new utility function
2010-02-23 16:45:56 +01:00
Sébastien Villemot 7b8166043e Preprocessor: full support for normcdf() function, in evaluation and in C files (closes #84) 2010-02-23 14:39:49 +01:00
Sébastien Villemot f65ce54dc1 preprocessor: under Octave/Windows, with USE_DLL, do not require "cygwin" or "msvc" option (closes #76) 2010-02-17 18:40:52 +01:00
sebastien f8f57d8d8c preprocessor: added missing header
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3391 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-28 14:18:40 +00: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
houtanb 77897d691e expectation conditional on a restricted information set
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3367 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-18 22:08:44 +00:00
stepan 2377c18e13 Fixed a bug introduced in commit 3319 (trunk). If my understanding is correct, some parenthesis
were missing in the IF condition (causing a preprocessor error). 



git-svn-id: https://www.dynare.org/svn/dynare/trunk@3336 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-10 21:35:32 +00:00
ferhat 46e144ad80 Add new model option no_static : avoid to compute the static model. Useful for models without steady-state.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3319 ac1d8469-bf42-47a9-8791-bf33cf982152
2010-01-08 11:06:25 +00:00
sebastien 0011678cb5 Changes by Ferhat:
* fix options stack_solve_algo={2,3,4} (closes #68)
* fix crashes for singular normalizations (closes #44) and implement decreasing cutoff
* fail for stack_solve_algo=2 under Octave (because there is no gmres function in Octave)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3279 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-21 10:29:21 +00:00
sebastien 80c6e3ad05 Fix problem with USE_DLL under Octave 3.2 (closes #70)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3269 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-18 13:35:50 +00:00
sebastien 30d45ad9c9 Added missing 'nograph' option to 'forecast' command + Fixed affiliations in ref manual
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3265 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-18 08:35:12 +00:00
sebastien e6f1a53e60 Beautified preprocessor code (uncrustify + emacs + manual adjustments, in particular with templates in MacroValue)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3249 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-16 17:13:23 +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
houtanb 271297a446 changed preprocessor internals to support vector<int> type. changed svar_identification to store symbols by symbol ids. Added missing Doxygen comments.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3240 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-14 15:54:00 +00:00
sebastien cf77c3f245 * Fix USE_DLL option at order 2 (closes #64)
* Added a corresponding test


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3236 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-14 11:06:29 +00:00
sebastien 7925cc0d63 preprocessor: fixed USE_DLL under Linux and add a provision for MacOS (need to be tested)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3226 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-11 15:34:47 +00:00
sebastien f1c1ebbd89 preprocessor: fixed typo
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3224 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-11 14:52:04 +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
houtanb fe723f0dab allow for vector <int> to be passed by Bison and modified processing of svar statement accordingly.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3221 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-10 22:49:50 +00:00
michel 74a8acc29c 4.1 adding instruments option to ramsey_policy; ramsey_policy can now use a *_steadystate.m file
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3219 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-10 14:59:32 +00:00
houtanb 203c6582ba svar: allow for two options to be passed instead of only three.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3218 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-09 16:32:30 +00:00
houtanb a1a73b3a17 fixed svar so when the equations option is passed a vec_int it outputs a column vector.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3217 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-09 16:17:12 +00:00
sebastien 2f7c327b0e k-order:
* in the preprocessor, fail if k_order_solver given without use_dll
* updated the reference manual, in particular w.r. to the new wiki page on MEX compilation under Windows


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3216 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-09 11:50:58 +00:00
houtanb 16e1bb2ef0 swz: implementation of svar
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3214 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-09 00:38:53 +00:00
george 6ef321d09c added missing " >> mex.def" for mexFunction as Matlab could not find mexFunction any more
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3213 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-08 18:45:33 +00:00
houtanb a2f878a179 swz: markov switching statement
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3212 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-08 16:46:13 +00:00
michel 7ac2213f9d 4.1 preprocessor: removing -v option in mex under Linux
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3211 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-08 15:12:59 +00:00
michel 84b65c9179 mex for Linux (to be tested)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3210 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-08 14:02:02 +00:00
michel 5958a3256c 4.1 preprocessor: exporting "Dynamic" symbol is necessary only in Windows; added test for ispc
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3209 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-08 12:00:55 +00:00
michel 64bf9ac188 4.1 preprocessor: exporting Dynamic symbol when making mex file for dynamic model with Matlab
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3208 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-08 11:49:25 +00:00
houtanb 965c743537 swz: svar_identification
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3194 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-04 21:32:19 +00:00
sebastien ee3ceb7db6 M-files and preprocessor:
* removed "options_.simul", and instead test if "options_.periods" is non-zero
* test for the incompatibility of options "periods" and "hp_filter" in "stoch_simul.m", instead of in the preprocessor
Reference manual:
* removed "simul" options, updated "periods"
* updated "order" option (for 3rd order)
* added "k_order_solver" option
* give some hints for installing a compiler for users of MATLAB for Windows


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3188 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-01 17:51:47 +00:00
sebastien 59ca45e4f4 Removed last remnants of "ct_" global variable
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3187 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-01 16:30:56 +00:00
houtanb 8cfdeacc50 slight bug fix: allow vec_int type to be specified with commas
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3181 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-12-01 12:17:44 +00:00
michel 48dad3e37a 4.1: add preprocessor interface for k_order_solver
rename use_k_order to k_order_solver in Matlab procedures
     fix tests


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3179 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-30 19:54:45 +00:00
sebastien 19a3db853e preprocessor: fixed option "use_dll" (and therefore "k_order_solver") for Octave
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3178 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-30 16:36:00 +00:00
houtanb 6d5f9b53c6 swz keywords and structure introduced for future implementation of functionality
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3174 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-30 00:38:26 +00:00
sebastien 494668a167 preprocessor: allow the omission of model block when sbvar or ms_sbvar statement is used
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3169 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-26 17:25:04 +00:00
sebastien a2cef7009d Fixes for ticket #57
preprocessor:
* add a field "M_.orig_endo_nbr" containing the nbr of endogenous before adding aux vars
* always provide "M_.aux_vars" (define it to "[]" when there is no aux var)
* rename "M_.aux_vars().orig_endo_index" to "M_.aux_vars().orig_index"

M-files:
* for commands which accept a list of variables (stoch_simul, osr, estimation, dynasave, dynatype, datatomfile), when no variable is given, use only the set of original endogenous (without aux vars) as the default
* when displaying the decision rule, when there is aux vars in the state variables, replace them by their original name (with the right lag)
* in "steady", don't display aux vars
* special exception for ramsey policy: all vars (including aux vars) are displayed, because the system of aux vars from ramsey policy is not compatible with the aux vars from the preprocessor


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3166 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-25 10:22:39 +00:00
sebastien ef3ee28ce8 preprocessor: when there is no computing task, compute the hessian in the dynamic file
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3147 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-12 17:01:26 +00:00
sebastien 76e691c651 preprocessor:
* fixed a bug with EXPECTATION operator: now handle model local variables
* substitute EXPECTATION operator even in deterministic models (for avoiding crashes, even if use of this operator doesn't make sense there)
* forbid the use of EXPECTATION and STEADY_STEATE outside model block
* minor implementation changes in EXPECTATION and STEADY_STATE operators

reference manual:
* documented EXPECTATION and STEADY_STATE operators
* added a note in write_latex_{static,dynamic}_model commands documentation about auxiliary variables and other model transformations


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3145 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-09 15:13:47 +00:00
sebastien 09f1b60e22 predetermined_variables: fixed a bug in M_.predetermined_variables
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3144 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-09 11:07:31 +00:00
sebastien af732433d7 predetermined_variables:
* reworked a little bit the implementation
* documented the command in the reference manual
* added a test


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3143 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-09 11:03:18 +00:00
houtanb 26185780ac implements predetermined_variables operator
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3137 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-07 18:37:11 +00:00
sebastien ab8b4f37f1 * preprocessor: make optional the warnings about uninitialized parameters/endogenous/exogenous, added a new "warn_uninit" option to dynare command to display them
* reference manual: documented the new option, fixed XML conformance of the document


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3135 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-06 18:31:03 +00:00
sebastien 28a9a11878 preprocessor: cosmetic changes
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3134 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-06 18:19:52 +00:00
sebastien 3f52a21352 preprocessor: always create a dynamic model file, even when there is no Dynare command needing it
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3126 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-05 09:59:30 +00:00
michel c68b300954 4.1: removed preprocessor useless initialization of
estim_params_.param_names
     estim_params_.user_param_names


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3125 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-04 20:40:36 +00:00
houtanb cb52002b77 added default cases to remove gcc warnings
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3116 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-11-02 18:31:50 +00:00
stepan bd3ae5a1e9 Removed changes introduced in revision 3108.
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3111 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-31 10:54:58 +00:00
stepan b998047499 Merge branch 'master' of git@vandrezanne.net:/home/git/repositories/dynare
Conflicts:
	preprocessor/DynamicModel.cc

git-svn-id: https://www.dynare.org/svn/dynare/trunk@3108 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-31 07:55:10 +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
houtanb c6ae95e084 changed expectation operator from BinaryOpNode to UnaryOpNode
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3102 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-30 05:21:54 +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 0a5a131e3c - Correction in the memory allocation (new - delete used with object)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3076 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-23 11:26:29 +00:00
stepan 21d58eac91 * Bug fix.
* Changed the conditional forecast section in the manual.
* Removed the calibration token from the preprocessor.

git-svn-id: https://www.dynare.org/svn/dynare/trunk@3067 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-22 15:56:32 +00:00
sebastien e9ca5705d2 preprocessor: fixed bug in "plot_conditional_forecast"
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3066 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-22 14:42:12 +00:00
sebastien df7bc34379 Added a new option "partial_information" to stoch_simul, estimation, osr, ramsey_policy
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3063 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-20 16:55:31 +00:00
sebastien 6799dc4301 preprocessor: remove unnecessary stuff ("forecast" has not the same rank than "stoch_simul/estimation/osr/ramsey_policy")
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3062 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-20 16:17:27 +00:00
sebastien aa6ff983a9 AIM solver:
* added interface in the MOD file, with a new option "aim_solver" to stoch_simul and estimation
* documented the option in the reference manual


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3059 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-20 15:44:56 +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
sebastien dbc9e0996d * Preprocessor: implemented interface to conditional forecast, with three new statements: "conditional_forecast", "conditional_forecast_paths" and "plot_conditional_forecast"
* Reference manual: created a section on forecasting (with "forecast" option), and added the three new statements to that section


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3049 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-16 17:23:57 +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
sebastien dc49fbffdc Preprocessor:
* new options to "identification" statement: "ar", "useautocorr", "load_ident_files", "prior_mc"
* implement the call to dynare_identification() when "identification" statement is encountered
* new options to "dynare_sensitivity" statement: "ar", "useautocorr", "load_ident_files"
* trigger computation of model derivatives w.r. to parameters when "identification" option of "dynare_sensitivity" statement is used


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3046 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-14 16:16:43 +00:00
sebastien 4bb040a234 Preprocessor: fixed grammar for "mode_file" option
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3042 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-13 19:15:21 +00:00
sebastien 80b1e63cdc preprocessor: implement third-order derivatives in USE_DLL mode
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3036 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-12 16:09:16 +00:00
ferhat 4268f2f7a6 topological sort implemented after the block decomposition for dynamic models
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3035 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-09 10:13:14 +00:00
sebastien 9a673167f8 preprocessor:
* fixed substitution of endogenous with leads >= 2: take into account exogenous with leads in non-linear terms
* fixed substitution of exogenous with leads: take into account other variables with leads in non-linear terms


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3027 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-07 16:34:42 +00:00
sebastien c84df1aace preprocessor: in stochastic mode, create auxiliary variables for exogenous with non-zero lead/lag
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3026 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-07 14:07:13 +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
michel add652918e added possibility to call user defined optimizing routine with mode_compute option
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3023 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-06 14:40:49 +00:00
sebastien ed5bad62c3 preprocessor: always trigger creation of *_dynamic.m file when "identification" is present
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3021 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-06 08:56:02 +00:00
houtanb b765264621 fixes global oo_ declaration for steady state operator as discussed on 14 Sep
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3020 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-02 18:36:07 +00:00
sebastien 522de968d0 preprocessor: reverted useless changes from last commit
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3016 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-02 17:02:35 +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
sebastien 6f55900bb9 preprocessor: always compute the Dynamic hessian when "identification" keyword is present
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3003 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-10-01 08:03:40 +00:00
sebastien 97cb944831 preprocessor:
* In stochastic mode, now transforms the model by removing leads and lags greater or equal to 2 (creating auxiliary variables and equations in the process)
* Information about these variables is in structure M_.aux_vars
* Automatically add the necessary initialization for auxiliary vars after the initval block or load_params_and_steady_state


git-svn-id: https://www.dynare.org/svn/dynare/trunk@3002 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-30 15:10:31 +00:00
michel 643551ce22 preprocessor: symbol names that are also option names (alpha, beta, ...) are now case consistent
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2991 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-28 19:29:13 +00:00
sebastien 18a5146082 preprocessor, StaticDllModel: removed useless method
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2990 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-28 13:31:00 +00:00
ferhat 033c321b58 restore the mshocks command
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2985 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-25 12:48:09 +00:00
michel 85ed3d346a preprocessor: adding new options for Marlov Switching
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2975 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-24 13:13:57 +00:00
sebastien edea5b303b Build system: fixes for creation of the tarball
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2968 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-24 10:15:59 +00:00
sebastien 45acc68b8b Preprocessor: fix for static model with block+bytecode option and model local variables
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2958 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-23 12:31:00 +00:00
sebastien 254253e097 Build system: fix for FlexLexer.h
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2954 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-21 10:00:47 +00:00
ferhat 4dff75d79c - the "steady_state" function is implemented with the "bytecode" option
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2952 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-18 16:34:11 +00:00
sebastien d7f8ec9108 Build system: incorporate FlexLexer.h, so that one can compile on systems without flex
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2942 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-17 16:02:55 +00:00
sebastien 77eb291162 Build system: don't use symlinks under Cygwin, MATLAB doesn't understand them
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2939 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-17 12:06:44 +00:00
sebastien 31aff0e756 Various fixes to build system
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2937 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-17 08:14:44 +00:00
sebastien befed5c49d Create a symbolic link for preprocessor in matlab/ (instead of a plain copy)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2933 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-16 13:50:09 +00:00
sebastien 91a23e0d21 Build system:
* add support for Doxygen
* the configure script now tells what will be built and what won't


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2925 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-15 16:50:23 +00:00
sebastien 992370edff * Fix the STEADY_STATE operator for LaTeX output
* Allow the STEADY_STATE operator to work with exogenous/exogenous_det with non zero lead/lag
* Other cosmetic changes


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2917 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-11 09:16:52 +00:00
houtanb e08fa1f618 added steady_state operator to preprocessor
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2916 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-10 20:09:16 +00:00
sebastien ddd286863d * Convert the rest of the already existing build system to Automake
* Add new autoconf macros


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2914 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-10 09:50:58 +00:00
sebastien 88dc668544 Added missing rule for copying preprocessor to matlab/ subdir
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2912 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-09 17:00:43 +00:00
sebastien 9c3c314746 * Rewrite preprocessor build system with automake
* Use new autoconf macros for flex/bison
* Remove autoconf macro for dynare++


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2911 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-09 16:47:43 +00:00
sebastien 3bf1c45ddf Remove autoconf/automake generated files
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2910 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-09 16:44:32 +00:00
sebastien 9571276cc1 Reverted to Unix (LF only) end-of-line convention
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2907 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-09 13:15:02 +00:00
ratto df329354a6 Fixed compilation error with gcc (ver 4.3) on Ubuntu
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2906 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-09 13:01:04 +00:00
sebastien ee49993202 Don't create model subdirectory in block+bytecode mode
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2904 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-08 08:07:07 +00:00
sebastien 7279f0de1b Updated Doxygen configuration file
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2903 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-08 08:06:23 +00:00
sebastien 4c38e9147f Added derivatives of dynamic model residuals with respect to parameters
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2902 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-08 08:06:06 +00:00
sebastien 655fa02710 Removed useless stuff
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2901 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-08 08:05:44 +00:00
sebastien dff2144c2c Added error message if bytecode option specified but no bytecode DLL found
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2896 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-03 16:34:15 +00:00
sebastien 579b5f509e Cleanup "cutoff" and "mfs" options (the former is no longer in options_)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2888 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-03 10:10:06 +00:00
sebastien b88c5abcba Remove useless "markowitz" data member in DynamicModel and StaticDllModel
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2886 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-03 09:57:17 +00:00
sebastien 0857db4e79 More cleanups related to obsolete "cutoff" and "markowitz" statements
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2885 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-03 09:55:15 +00:00
sebastien 71f5e527e6 Remove obsolete "cutoff" and "markowitz" statements
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2884 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-03 09:50:45 +00:00
ferhat 164eb22f87 - get rid of block and bytcode variable in SimulStatement and StochSimulStatement
- minimalist version of dynamicmodel when no dynamic model is needed

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2883 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-02 16:44:15 +00:00
sebastien 74232e9ee5 * Added new option stack_solve_algo to simul
* Added solve_algo=5 for steady
* Remove obsolete method option of simul
* Added various checks to avoid unimplemented combinations of bytecode/block/solve_algo/stack_solve_algo


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2882 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-02 16:34:48 +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
sebastien 9a1339ad11 Added support for equation tags (thanks to Pablo for providing a patch)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2880 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-02 14:37:59 +00:00
sebastien a56de57637 Various cleanups related to new options "bytecode" and "block"
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2879 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-09-02 13:36:56 +00:00
ferhat 1786ba13da - bug fix: block not set to 1 in StaticModel
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2877 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-31 18:56:29 +00:00
michel 1802078154 updating SWZ sbvar code
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2875 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-30 19:24:34 +00:00
ferhat ed6cda0ca1 New options for block decomposition and bytecode (see http://www.dynare.org/DynareWiki/ByteCode):
- the options "sparse_dll" and "sparse" are no more available. They are replaced by combinations of block (for block decomposition) and bytecode (for model stored in a binary file)
- markowitz is now an option of simul and steady commands


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2873 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-29 15:04:11 +00:00
michel 797c9747f6 v4: modify MS option
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2869 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-25 18:55:01 +00:00
ferhat a5e047df47 - Adding missing files: StaticDllModel.cc and StaticDllModel.hh
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2867 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-25 10:14:49 +00:00
ferhat d32dd99210 - extension of normalization of equations to nonlinear equations
- mfs: new option for 'steady' and 'model' commands. Determines the equation belonging to the set of feedback variables.
  mfs = 0 => all variables are considered as feedback variables (default value)
  mfs = 1 => using only naturally normalized equation as potential recursive equations (all variables assigned to unnormalized equations are considered as feedback variable)
  mfs = 2 => adding to the set of potential recursive equation with mfs = 1 the linear equation in endogenous variable normalized (all variables assigned to nonlinear unnormalized equations are considered as feedback variable)
  mfs = 3 => adding to the set of potential recursive equation with mfs = 2 the non linear equation in endogenous variable normalized
- correction of few buggs in simulate.dll
- block_mfs_dll: new option for 'steady' command. Use simulate.dll to solve the steady state model (speedup the computation of the steady-state and the homotopy)

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2866 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-25 09:43:01 +00:00
sebastien 1736b45404 Fixed typo introduced in previous commit
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2860 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-17 15:07:28 +00:00
michel b1809b2403 corrected problems created by new options name conflict with common variable names
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2859 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-08-17 14:46:08 +00:00
michel a2448f6394 v4: adding preprocessor interface to Sims-Wagonner-Zha code for SBVAR (regular and Markov-Switching).
This is not yet completely operational.


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2855 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-26 17:07:07 +00:00
michel ef26fae773 v4: adding interface for shock decomposition
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2853 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-23 08:31:48 +00:00
ferhat 1d9260251d - sparse_dll option works fine with feedback variables
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2851 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-21 15:50:12 +00:00
sebastien a52d38c856 Preprocessor: handle model local variables in blocks_mfs mode of steady command
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2841 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-13 13:44:46 +00:00
sebastien 515be5ad3a Preprocessor: refactor usage of GNU g++ specific features
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2840 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-13 09:13:42 +00:00
sebastien d9aca4bc4e Preprocessor:
* new ExprNode method for computing set of ModelLocalVariables of an expression
* factorized code with collectEndogenous() and collectExogenous() methods


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2839 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-10 16:42:08 +00:00
ferhat 45c28cadc2 - minor modifications in Reorder_the_recursive_variables prototype
- no function comment in MinimumFeedbackSet.cc
- writeChaineRuleDerivative in DynamicModel.cc instead of ModelTree.cc


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2836 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-10 15:37:51 +00:00
ferhat d19ccced9a - Complete implementation of feedback variables in dynamic model with sparse option
- Normalization of linear in endogenous variable equations 

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2834 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-10 15:05:09 +00:00
sebastien 4ba6a505db Preprocessor: bugfixes to block_mfs option of steady
* sort recursive variables in topological order in the _static.m file
* collectEndogenous() returs type specific IDs, not symb_id!


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2833 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-10 14:22:40 +00:00
sebastien e8700bc046 Implemented MATLAB part of the block_mfs option to steady.
(Still need to fix a bug)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2829 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-09 16:35:07 +00:00
sebastien 5495f0c6c0 Preprocessor, static model handling: added code to output M-file when in block+MFS mode
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2820 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-07 15:58:17 +00:00
sebastien b0f252c2f4 Some restructurings in the preprocessor:
* StaticModel: dropped creation of C file in USE_DLL mode
* StaticModel: added computation of derivatives for block MFS mode
* DynamicModel: catch error codes of mkdir()
* ModelTree: moved "mode" member variable to DynamicModel
* ModFile::writeOutput(): moved manipulations relative to dynamic model file to DynamicModel


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2818 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-07 14:20:48 +00:00
sebastien 479f3340f7 Preprocessor: various minor changes, including
* moved some declarations from ExprNode.hh to BlockTriangular.hh to which they conceptually belong
* replaced non standard boolean operators (and, or, not) by standard ones (&&, ||, !)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2812 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-06 10:36:36 +00:00
sebastien 1cde972d91 Preprocessor: changes to code for chain rule derivation
* fixed a bug in the handling of VariableNode: we now make a copy of the recursive_variables map, instead of modifying that of the caller
* factorized code shared with standard derivation
* various minor cleanups


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2811 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-06 09:34:21 +00:00
sebastien db382f1f6f Changes to the write_latex_{static,dynamic}_model:
* fixed bug in the dynamic version (was putting time subscripts to parameters)
* changed symbol for multiplication to a space (was a dot)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2802 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-07-02 14:51:14 +00:00
sebastien 62f6368a19 trunk preprocessor: added new option "block_mfs" to "steady"
* normalizes the static model
* computes its block decomposition, using topological order
* for each block, computes minimum feedback set of variables
* at this stage, only produces text output (no change in the computation of steady state)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2798 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-30 15:07:09 +00:00
sebastien 1f22698295 trunk preprocessor: various minor changes in MinimumFeedbackSet.{cc,hh}
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2797 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-30 14:43:59 +00:00
sebastien a05fa888b0 trunk preprocessor: M_.NNZDerivatives is now a column vector instead of a matrix
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2794 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-29 10:52:57 +00:00
sebastien e7c9ec55e9 trunk preprocessor: fixed bug with sparse Hessian and USE_DLL
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2793 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-29 09:27:09 +00:00
sebastien bbd756220c trunk preprocessor: output the number of non-zero derivatives in main M-file
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2792 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-26 13:57:07 +00:00
sebastien 14eea65483 trunk preprocessor:
* for 2nd and 3rd derivatives of static and dynamic model, create the sparse matrices in a more efficient way (thanks to Pablo Winant for suggesting this and providing a patch)
* this breaks USE_DLL option at order 2
* fixed bug when hessian or 3rd deriv. matrix was all zero: the matrix was not constructed at all, leading to crashes in Matlab code


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2787 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-25 09:56:41 +00:00
sebastien 0612cd8ebe trunk preprocessor: fixed logical and operator (thanks to Pablo Winant for pointing this out)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2785 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-25 07:35:08 +00:00
sebastien cbbaf112e3 trunk preprocessor: fixed bug when loading non-existent steady-state file
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2753 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-10 14:45:41 +00:00
sebastien b710347869 trunk: build system updates
* top-level Makefile now generated
* automatic rules for regenerating configure and Makefiles
* enhanced source tarball creation (no longer destroys SVN subdirs)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2734 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-08 10:04:06 +00:00
sebastien 0b0aea0589 trunk: fixed preprocessor/Makefile.in
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2730 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-05 17:01:15 +00:00
ferhat ed679ec55c - ModelBlocks.cc and ModelBlocks.hh erased
- Makefile.in corrected

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2729 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-05 16:04:23 +00:00
ferhat 0380ae414a - References to ModelNormalization erased
- Use derivatives w.r. to lead and lag endogenous in BlockTriangular.cc

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2728 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-05 15:30:32 +00:00
ferhat 1707d7eed9 Minor corrections (comments corrected in MinimumFeedBackSet.hh, makefile updated and ModelNormalization erased)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2727 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-05 15:04:09 +00:00
ferhat 6479edf5a7 - Correction of several bugs
- normalize an equation linear in its endogenous variable
- Chained rule derivatives (necessary to reduce a block to the feedback equations and variables)

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2726 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-05 14:45:23 +00:00
sebastien 0acc298758 trunk preprocessor BlockTriangular.cc: fixed misleading error message
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2689 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-25 09:46:40 +00:00
sebastien 6f5d4b3c95 trunk: fixed several copyright headers
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2681 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-19 08:57:07 +00:00
michel fb494361e2 4.1: corrected typo in file include name
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2680 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-18 05:02:20 +00:00
ferhat 1a058fea4f - Bugs correction in the new block decomposition (incorporating the feedback variables)
- First draft of DynamicModel.cc files with feedback variables. 
TODO : 
- reduction of the Jacobian matrix 
- symbolic normalization of equations
- application to the binary code evaluation (simulate.dll).

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2678 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-15 22:41:51 +00:00
ferhat 7384613258 Correction of few bugs in DynamicModel and BlockTriangular
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2674 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-13 22:16:51 +00:00
ferhat 25ca5d3ee8 New implementation of block decomposition & feedback variables using Boost for DynamicModel
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2671 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-12 23:03:40 +00:00
michel 33b9537149 v4.1: added to preprocessor int NNZDerivatives[3] with number of non-zeros derivatives at order 1, 2, and 3
used it to initialize sparse g2 and g3 in Matlab <modfile>_dynamic.m


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2668 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-12 20:32:27 +00:00
sebastien f06a89697d trunk preprocessor:
* change the way we check for success of strtod() in NumericalConstants::AddConstant, because of Windows compatibility problem
* reverted r2660 changeset


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2661 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-07 08:50:59 +00:00
michel 6258410a83 4.1: added -DNDEBUG in Makefile.in to avoid assert() problem under Windows. This is a quick fix that needs to be redone correctly
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2660 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-07 07:46:02 +00:00
sebastien 077e61e2c2 trunk preprocessor:
* fixed bug with normcdf() when converting to static model
* fixed description of derivative computation


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2655 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-05-04 12:59:21 +00:00
sebastien 44c864f9f7 trunk preprocessor: added new statements "write_latex_dynamic_model" and "write_latex_static_model" which list model equations in LaTeX code
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2654 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-30 13:14:33 +00:00
sebastien e96420b3a7 trunk preprocessor: cosmetic changes
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2653 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-30 13:05:21 +00:00
sebastien bacbd603fd trunk preprocessor:
* removed obsolete output type CDynamicSparseDLL
* probably fixed a bug in BlockTriangular::Reduce_Blocks_and_type_determination


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2652 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-29 14:16:14 +00:00
sebastien b8a8bd0068 trunk preprocessor: enforce impossibility of mixing deterministic and stochastic statements, even in Sparse/SparseDLL modes
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2649 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-29 11:35:44 +00:00
sebastien c431ca637c trunk preprocessor: in NumericalConstants
* fixed bug introduced in r2642 with NaN
* added a check to verify that the conversion to double succeeded (use strtod() instead of atof())
* store the double values in a vector


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2647 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-29 11:05:40 +00:00
sebastien 6a4a414a3b trunk preprocessor:
* finished normalization algorithm
* added routine for computing the equations which are already in normalized form


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2645 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-28 17:11:48 +00:00
sebastien 920e21561b trunk preprocessor: added method VariableNode::get_symb_id()
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2643 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-28 17:03:21 +00:00
sebastien 84ba1aff7c trunk preprocessor: use assert() function at several places
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2642 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-28 16:21:39 +00:00
sebastien bc86ddc1a2 trunk preprocessor: small simplification of the Makefile
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2641 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-28 16:16:12 +00:00
sebastien a7e32f5025 trunk preprocessor: added two more symbolic simplication rules, particularly useful for the static model
* x-x=0
* x/x=1


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2640 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-28 16:04:29 +00:00
sebastien 5cc4e16ebf trunk StaticModel.cc: added model normalization (still need to force normalization of equations of the form a = f(b,c))
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2638 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-27 17:15:14 +00:00
michel af69c4d6a5 4.1: changed mex LDFLAGS option for compiling *_dynamics.c to make the Dynamic function public.
This most likely makes it unusable for compilers other than gcc


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2632 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-25 13:06:36 +00:00
sebastien fc71060fa6 trunk:
* use autoconf to create the preprocessor Makefile
* the preprocessor now displays the version number
* the top-level Makefile triggers compilation of the preprocessor and of the documentation


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2621 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-23 15:52:00 +00:00
sebastien d55470ca88 trunk preprocessor: cosmetic changes
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2614 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-20 15:54:19 +00:00
sebastien b775f1812c trunk preprocessor:
* added support for derivatives of Hessian w.r. to parameters
* added "identification" command which does nothing for the moment, except triggering those derivatives w.r. to params


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2613 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-20 13:58:15 +00:00
sebastien f7c97fcebe trunk preprocessor: restructuring the way we decide which derivatives to compute
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2610 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-20 10:48:54 +00:00
sebastien a8bed91300 trunk preprocessor:
* fixed bug with planner_objective
* fixed another bug due to unitialized max_{lead,lags} values


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2604 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-18 18:07:28 +00:00
sebastien db2bcba968 trunk: reverted r2572 changeset
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2601 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-18 14:07:57 +00:00
sebastien c4e1b8ef80 trunk preprocessor: fixed bug with normcdf derivative (introduced in r2596)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2598 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-17 21:22:44 +00:00
sebastien 4bb5ce9b86 trunk preprocessor: restructuration of the code before adding derivatives w.r. to parameters (in particular, removed VariableTable, and replaced it by a system of derivation IDs)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2597 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-17 16:26:23 +00:00
sebastien 03ce535f04 trunk preprocessor:
* enforce lag=0 for DataTree and StaticModel
* various minor and cosmetic changes


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2596 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-16 10:33:30 +00:00
sebastien da408a908f trunk preprocessor: some cleanups related to sparse mode (removed SimulSparseStatement class and incorporated it into SimulStatement, determine mode at preprocessing time instead of runtime in StochSimulStatement)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2595 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-14 15:02:51 +00:00
sebastien 2e9ce1fe1e trunk preprocessor: added missing headers for recent versions of GCC
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2594 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-14 14:47:57 +00:00
sebastien 845888d692 trunk preprocessor: cosmetic change for consistency in bison file
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2593 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-14 14:43:54 +00:00
sebastien 6dc870727d trunk preprocessor:
* created a distinct expression tree for the static model (thus giving better sharing of sub-expressions and better computation of temporary terms for the static model)
* for that purpose, created StaticModel and DynamicModel classes (ModelTree still persists, but only contains code shared between StaticModel and DynamicModel)
* removed sparse static file (to be later replaced by new algorithm for steady state computation on large models)


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2592 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-14 14:39:53 +00:00
ferhat ee64d9abac The sparse option in model is now compatible with homotopy => preprocessor commit
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2588 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-10 16:56:27 +00:00
sebastien eb2544b2a2 trunk preprocessor: use different tokens for inv_gamma_pdf and inv_gamma1_pdf (for more explicit error messages and for consistency with ln and log)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2580 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-09 14:47:45 +00:00
sebastien c00e5ac992 trunk: fixed bug with USE_DLL and second order (Hessian matrix was not sparse)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2572 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-09 10:07:37 +00:00
sebastien 695a638f09 trunk: fixed bug with USE_DLL (stoch_simul was calling stoch_simul_sparse, because of wrong handling of options_.model_mode)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2571 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-04-09 10:02:45 +00:00
sebastien 5ee346e4fd trunk: {load,save}_params_and_steady_state now use a text file for communicating (instead of a MAT-file)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2517 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-24 16:29:58 +00:00
ferhat a5a4c36ac0 Minor corrections on multiprocessing in simulate
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2464 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-13 17:59:45 +00:00
sebastien 433d3c9d13 trunk preprocessor: removed underscore in Model_Graph.{cc,hh}
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2460 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-13 13:48:30 +00:00
sebastien 3586f4b3bd trunk preprocessor: removed the include/ directory
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2459 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-13 13:39:31 +00:00
ferhat b6636fc799 modifications in sparse options to support the new variable indexation
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2458 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-13 13:33:09 +00:00
sebastien b502d94145 trunk preprocessor: simplified build system (only one Makefile now)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2455 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-12 11:02:56 +00:00
sebastien a3485ac69a trunk preprocessor: added new "change_type" command
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2452 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-11 11:43:18 +00:00
sebastien 35d2231010 trunk preprocessor: fix compatibility issues with Bison 2.4
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2442 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-27 14:29:08 +00:00
sebastien 4005d25f25 trunk preprocessor:
* reorganized symbol table so that internally symbols have a unique integer ID (as a result, sparse code is temporarily in a broken state)
* rewritten from scratch ModFile::evalAllExpressions()
* {load,save}_params_and_steady_state moved to NumericalInitialization.{cc,hh}
* fixed bug related to endval block


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2441 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-27 12:19:25 +00:00
sebastien 8e75f758e6 trunk: allow the possibility of modifying Matlab matrices which have been earlier used in initval/endval
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2437 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-26 10:46:54 +00:00
sebastien 596d2a801d trunk preprocessor: fixed a memory management bug related to the filename being parsed
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2412 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-12 13:38:01 +00:00
sebastien 449baffb0a trunk preprocessor/macro: allow empty arrays, and iteration over them in @#for loops (empty array can only be constructed through set difference for the moment)
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2401 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-06 15:47:26 +00:00
sebastien d4e10fdaa5 trunk preprocessor: fixed bug in the macro-processor, when the body of a @#for loop is empty
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2399 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-05 15:54:09 +00:00
sebastien de5ed16ef1 trunk preprocessor: cosmetic change to Bison file, for consistency with other options
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2398 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-05 15:07:49 +00:00
sebastien 7cb97d5ac0 trunk preprocessor: allow one line comments behind @#else
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2396 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-04 23:42:48 +00:00
sebastien 783b1adfb6 trunk preprocessor: allow one line comments behind @#endif and @#endfor
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2394 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-04 23:24:16 +00:00
michel 5f148e90f4 adding PLOT_PRIORS option, no plotting is the new default
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2391 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-03 14:10:16 +00:00
ferhat 851b5896c0 correction of the constants returned by functions ReadNum and ReadAlpha in the SimpleEleme virtual class
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2384 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-30 11:04:21 +00:00
michel 44a9cd73b8 added expression_or_empty token
re-authorized empty expression between commas in estimated_parameters statements


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2374 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-25 09:50:21 +00:00
ferhat 56c0af0b7e Find the temporary terms even in local model variables
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2373 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-23 14:09:24 +00:00
sebastien 723b260f9f trunk preprocessor: automatic reindentation of all code with emacs
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2372 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-23 10:59:37 +00:00
sebastien e98844dc61 trunk preprocessor: allow arbitrary expressions (and not just constants) in estimated_params, estimated_params_init and estimated_params_bounds blocks
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2368 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-22 15:05:38 +00:00
sebastien 50985b004e trunk preprocessor: fixed bug with estimated_params_init and estimated_params_bounds in conjunction with correlation of endogenous variables
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2366 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-22 10:10:39 +00:00
sebastien 2495aca72a trunk:
* updated copyright headers of all files modified since January 1st: the copyright notice now encompasses 2009
* fixed various other copyright header issues


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2364 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-21 14:39:24 +00:00
sebastien c6761f79dd trunk preprocessor: added option to remove @#line statements in output of macro-processor
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2361 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-21 13:45:44 +00:00
sebastien 8acb8f98e4 trunk preprocessor: no longer impose that extension be .dyn or .mod
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2360 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-21 12:08:11 +00:00
sebastien bc384c2f5f trunk preprocessor: removed unused header file
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2359 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-21 11:37:02 +00:00
ferhat 4fe7e3e155 - SymbolGaussElim.cc is discarded from the preprocessor (all simulations are now implemented in simulate)
- Correction in model_info.m

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2358 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-20 22:04:37 +00:00
ferhat b18d8ae275 - forgotten files in the previous upload: MatlabFile.cc and MatlabFile.hh
- temporary terms computed just before the equation where they appeared => important for "evaluated blocks" where temporary terms depend on endogenous computed in the block

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2351 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-02 13:00:43 +00:00
ferhat a0bbe27b95 Load_params_and_steady_state is now a dynare command -> needed to normalize the equations.
-> MatlabFile.cc and MatlabFile.hh are added to dynare in order to read the Mat-File

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2349 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-31 19:29:17 +00:00
ferhat 487afce68d - corrections of few bugs in local model variable with sparse option
- simplifications of model blocks management in Modeltree
- corrections of the temporary variables management with sparse option

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2341 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-24 15:49:01 +00:00
ferhat 5eead4dfa9 - corrections of bugs in exprnode and with solve_two_boundaries_simple type
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2333 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-19 16:24:22 +00:00
ferhat 29ca49f885 - Correction of several bugs in sparse_dll
- Pound expressions accepted with sparse option


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2329 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-19 10:24:31 +00:00
sebastien ace3002b72 trunk: added options_ structure to *_results.mat file
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2318 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-18 11:14:05 +00:00
sebastien dd79043bb2 trunk preprocessor: fixed bug with optim options
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2317 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-15 15:45:54 +00:00
sebastien e8918e7ab0 trunk preprocessor:
* added "onlymacro" option
* added the possibility to specify macro output file with "savemacro=..."


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2316 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-15 14:39:36 +00:00
michel ee5e86f91e corrected typo in preprocessing of exo_det_names
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2314 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-12 16:36:28 +00:00
sebastien 299e68470d trunk preprocessor/macro: report the location of @#for or @#if statement when not matched by an @#endfor or an @#endif
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2304 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-09 16:13:03 +00:00
sebastien 6017007f4f trunk: fixed dsample command (was broken until now)
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2301 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-08 16:19:59 +00:00
sebastien 34bfaeb3ab trunk preprocessor/macro: added new 'in' operator for testing membership of an array
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2300 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-08 15:13:08 +00:00
sebastien 6c0480d7f2 trunk: fixed bug in operator precedence in macro-processor (+ and - had highest precedence than * and /, colon (:) precedence was too high)
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2298 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-08 14:42:43 +00:00
sebastien 2134146033 trunk:
* removed obsolete global variables "endval_" and "rplottype_"
* removed duplicate initialization of options_.replic


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2295 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-05 15:34:26 +00:00