Commit Graph

355 Commits (cb411e5642ecd6978c86d4ad3dfca15fa840c913)

Author SHA1 Message Date
Houtan Bastani a43bac5842 preprocessor: bug fix; warning should be issued if there is at least one unused exo not more than one 2015-03-06 09:49:11 +01:00
Houtan Bastani 4ba729fdd6 preprocessor: new command write_latex_original_model. closes #657 2015-02-16 08:31:30 +01:00
Houtan Bastani 0f24ec02a6 preprocessor: add new commandline option onlyclearglobals. closes #635 2014-12-30 21:51:33 +01:00
Houtan Bastani 8ddda0ef82 preprocessor: add oo_recursive_ to results file, closes #812 2014-12-17 11:10:09 +01:00
Houtan Bastani 7352cc4fe2 preprocessor: add field to store the number of multiplier equations added to ramsey problem. closes #728 2014-10-13 17:25:08 +02:00
Houtan Bastani fbfd2d7e17 preprocessor: add field that contains the total number of equations, #728 2014-10-13 17:17:50 +02:00
Houtan Bastani 5146a43084 preprocessor: always output the original number of equations 2014-10-13 17:16:41 +02:00
Sébastien Villemot 901d4b8394 Forbid use of 'identification' with exogenous deterministic variables.
Closes #664
2014-07-30 17:28:45 +02:00
Stéphane Adjemian (Charybdis) a6ffab3e7f Save empty dates and dseries objects in memory (base workspace) instead of disk (faster). Added an initialization mode for dates and dseries constructor. The following commands:
dates('initialization');
dseries('initialization');

create variables emptydatesobject and emptydseriesobject in base workspace.
2014-06-11 12:22:31 +02:00
Michel Juillard cb45fe885e Merge branch 'master' into ep 2014-05-09 10:02:05 +02:00
Michel Juillard cffe121a37 fixing extended-preprocessor C++ API and test case 2014-04-24 14:33:04 +02:00
Sébastien Villemot 75dbe4afde Bugfix: M_.sigma_e_is_diagonal could be wrong if there were several shocks blocks. 2014-04-10 11:43:26 +02:00
Sébastien Villemot bd89254791 Cosmetic change for clearer code. 2014-04-09 18:33:24 +02:00
Sébastien Villemot d44cb3af93 Introduce two new command: perfect_foresight_{setup,solver}.
simul is now simply an alias for
perfect_foresight_setup+perfect_foresight_solver.
2014-04-09 17:57:17 +02:00
Sébastien Villemot ff17a871dd Multiple "shocks" block are cumulative.
This was the default behavior before commit 82b31156. This commit reintroduces
this behavior.
2014-04-09 15:23:20 +02:00
Michel Juillard cd063ce3fe extended-preprocessor: starting a C interface (not finished) 2014-04-05 15:46:35 +02:00
Houtan Bastani 2515d772ab changes related to #641 for os x 2014-03-25 10:43:14 +01:00
Sébastien Villemot 51e8a70bf4 Fix call to "mex" helper under MATLAB 8.3 (R2014a) and GNU/Linux.
There is a new LINKOPTS variable which governs the list of symbols to be
exported, so we set it to an empty value to have all symbols exported.
Previously we were overloading the LDFLAGS which was containing the list of
exported symbols.
2014-03-24 16:31:43 +01:00
Michel Juillard 6f65d48376 extended-preprocessor: starting a C interface (not finished) 2014-03-16 18:49:54 +01:00
Michel Juillard 8d042b8121 finishing ramsey_model implementation 2014-03-09 12:15:32 +01:00
Sébastien Villemot 9a0dddef31 Rename OutputType to FileOutputType (to distinguish it from ExprOutputType).
Also rename DynareOutput.hh to FileOutputType.hh. Include the latter in dist
tarball, and add copyright/license header.
2014-02-25 16:45:55 +01:00
Sébastien Villemot eaf02155cb Remove some limitations of steady state model:
- allow recursive definitions (Closes #554)
- allow a variable to be defined twice, simply emit a warning (Ref #556)
2014-02-24 17:27:34 +01:00
Michel Juillard 3d11273a61 extended-preprocessor: update test example1 2014-02-24 13:33:48 +01:00
Michel Juillard 1cfaddcd44 extended_preprocessor: renaming files/class and bug fixing 2014-02-24 13:33:48 +01:00
Michel Juillard 6e0ef026ac write C++ version of model functions without temporary terms 2014-02-24 13:33:48 +01:00
Michel Juillard 71824b3d4c extended-preprocessor: finished removing c_driver mechanism 2014-02-24 13:27:14 +01:00
Michel Juillard 2e7afdb22b extended-preprocessor: adding line options output= and cuda; starting
to change ModFile::c_driver mechanism
2014-02-24 13:27:14 +01:00
Houtan Bastani 0e469dc6e8 pretty end to dynare processing 2014-02-24 12:41:02 +01:00
Houtan Bastani 109045a97b ms-dsge: add options statement
Conflicts:
	preprocessor/ComputingTasks.cc
	preprocessor/ComputingTasks.hh
	preprocessor/ParsingDriver.cc
2014-02-24 12:41:02 +01:00
Houtan Bastani 1424f34eed ms-dsge: write C output
Conflicts:
	preprocessor/ComputingTasks.cc
	preprocessor/ComputingTasks.hh
2014-02-24 12:41:02 +01:00
Houtan Bastani e1cebde83a ms-dsge: add param initialization to C output 2014-02-24 12:41:02 +01:00
Houtan Bastani 053ee41ac0 ms-dsge: create C driver file without statements
Conflicts:
	preprocessor/DynareMain2.cc
	preprocessor/ModFile.cc
	preprocessor/ModFile.hh
	preprocessor/Statement.hh
2014-02-24 12:41:02 +01:00
Michel Juillard 9dfcf897f7 adding 3rd order derivatives to Static Model for evaluation of Ramsey
policy computed at order = 2
2013-12-11 19:24:29 +01:00
Houtan Bastani 1d7646a6e5 For Matlab >= 2013a on osx, use renamed SDKROOT macro, MW_SDKROOT 2013-12-10 18:18:46 +01:00
Sébastien Villemot 78ea064592 Cleanup more preprocessor-generated files at each run 2013-12-02 17:22:16 +01:00
Sébastien Villemot 6ba0980460 Add a warning when some exogenous are not used in the model 2013-11-29 16:03:45 +01:00
Sébastien Villemot 1414f98cff Refactor code for collecting variables appearing in expressions
- rename ExprNode::collectVariables in ExprNode::collectDynamicVariables
- new ExprNode::collectVariables: same as above, but without lag information
- remove ExprNode::findUnusedEndogenous: essentially redundant with the above)
- remove ExprNode::collectModelLocalVariables: idem
2013-11-29 15:37:11 +01:00
Sébastien Villemot 173dc32e60 Refuse that estimated parameters appear in the expressions defining the variance/covariance matrix of shocks
Closes #469
2013-11-29 14:51:17 +01:00
Houtan Bastani f964d06e22 saves variables if they exist at end of dynare run. closes #517 2013-11-13 11:29:27 +01:00
Houtan Bastani bd9e8acdab preprocessor: move M_.Correlation_matrix and M_.Correlation_matrix_ME to preprocessor #392 2013-10-29 15:02:07 +01:00
Sébastien Villemot 46c7622f1c Reactivate and fix the test for the balanced growth path.
If the homogeneized equation evaluates to zero, then we skip the
test (otherwise the 2nd derivative of the log is infinite, and the test fails
while it should not necessarily).

Closes #506
2013-10-29 18:46:54 +08:00
ferhat b21252b895 Comment the trend test for a balance growth path => problematic with eLogTrend 2013-10-28 16:41:21 +01:00
ferhat b6c0850fb7 Add a flag for calib_smoother command and apply a setup similar to the one used for stoch_simul command:
- Add auxiliary variables for leaded and lagged exogenous
- Set the cutoff applied to the Jacobian at zero for the static and the dynamic models
2013-10-28 14:22:23 +01:00
Houtan Bastani 76714b34df new nostrict command-line option does not exit when there are more endogenous than equations (closes #2) 2013-09-13 14:44:01 -04:00
Stéphane Adjemian (Charybdis) 4fe0f4af65 Added (command line) nointeractive option. 2013-07-10 12:02:12 +02:00
Stéphane Adjemian (Charybdis) d7c4d4d3eb Added (command line) nograph option. 2013-07-10 11:03:48 +02:00
Sébastien Villemot a595a83b16 Add new option parallel_local_files to model block
Ref #389
2013-05-31 14:47:38 +02:00
Sébastien Villemot 55a548282c Possibility of restricting differentiate_forward_vars to some variables
Closes #351
2013-05-17 16:53:15 +02:00
Sébastien Villemot ddaedb5ee3 Document how functions with a kink are differentiated
Also add a warning in the documentation and in the preprocessor about the usage
of some functions (max, min, abs, sign, comparison operators) in a stochastic
context.

Closes #355
2013-05-17 16:53:14 +02:00
Sébastien Villemot 94e6f569b8 Add new model option 'differentiate_forward_vars' (ref. #351) 2013-04-25 18:09:31 +02:00
Sébastien Villemot 270a5db60a Fix handling of auxiliary variables in endval block 2013-04-22 18:02:32 +02:00
Sébastien Villemot 75f8467803 Implement tags [static] and [dynamic] for equations
Closes #307
2013-04-11 17:11:35 +02:00
Michel Juillard 24cac29cdf removed changes linked with transforming variables to avoid log or
power of negative numbers
2013-04-09 16:35:57 +02:00
Sébastien Villemot 69a5271db7 Revert spurious preprocessor changes introduced in dfa744f 2013-03-26 16:51:10 +01:00
Ferhat Mihoubi 832c9d37ef - adds new files: Evaluate.cc and Evaluate.hh to bytecode 2013-03-22 16:34:50 +01:00
Sébastien Villemot 4f2f9e7ed6 Add preprocessor messages (stdout, stderr) to the logfile
Closes #306
2013-03-18 13:44:04 +01:00
Sébastien Villemot 70193c92b2 Remove spurious display when there is zero preprocessor warning 2013-03-05 12:53:37 +01:00
Sébastien Villemot 8ba4a3a4d2 Remove obsolete workaround for Octave 3.2 2013-02-28 10:32:09 +01:00
Sébastien Villemot 8610453baf Reorganization of warnings
- at the end of the computation, don't display all preprocessor warnings but
   only their number
 - also display if there has been a MATLAB/Octave warning (counting their
   number does not seem feasible). Closes #181
 - add new "nowarn" option to disable all warnings. Closes #301
2013-02-26 16:50:05 +01:00
Sébastien Villemot e717881115 Add more explicit error message when mixing ramsey_policy with varexo_det 2013-02-07 11:52:59 +01:00
Sébastien Villemot b02662e2d9 Fix linking of static file with use_dll under Windows
The "Static" symbol was not exported; instead, it was the non-existing
"Dynamic" symbol which was exported.
2013-01-30 14:02:23 +01:00
Sébastien Villemot dc1be70d82 Add derivatives of static model w.r.t. parameters
The new file is <FILENAME>_static_params_derives.m

Closes: #160
2012-11-29 18:07:48 +01:00
Sébastien Villemot aca256eb02 Remove obsolete workaround for Octave 3.2 2012-11-29 16:44:51 +01:00
Houtan Bastani ab604b7d16 console => nodisplay (Completes ticket #282) 2012-11-12 16:48:44 +01:00
Sébastien Villemot fb4a8d6186 Provide dynamic 3rd derivaties for estimation w/ analytic derivation 2012-08-08 15:34:43 +02:00
Sébastien Villemot 1082a16a64 Compute static hessian for estimation w/ analytic derivation 2012-08-08 12:42:02 +02:00
Sébastien Villemot de80c3dade Always compute hessian when analytic_derivation is set 2012-06-08 11:47:10 +02:00
Sébastien Villemot 73a503eba4 Generate derivs wrt params when anaytic_derivation=1 2012-06-07 15:33:43 +02:00
Houtan Bastani dc2e5e9226 config file: support GlobalInitFile option 2012-06-06 16:18:09 +02:00
Michel Juillard 73b4052f2b first implementation of transform_logpow. It creates too many auxilary
variables and probably violates Jensen inequality in some cases.
2012-05-23 15:09:33 +02:00
Michel Juillard 2098528f9e starting implementation of transformed variables to replace arguments
of log and pow functions so as to insure non-negative arguments
2012-05-21 22:05:19 +02:00
Sébastien Villemot ec83afaa29 Fix compilation errors with GCC 4.7 2012-05-08 16:10:10 +02:00
Sébastien Villemot e1e77909a1 New preprocessor option for not creating a logfile
Closes: #241
2012-04-20 18:15:02 +02:00
Houtan Bastani e4916a1d84 preprocessor: display a summary of preprocessor warnings at the end of a Dynare run 2012-01-30 10:44:14 +01:00
Michel Juillard c60de03e84 the overall time of execution is now saved in the log file 2012-01-22 16:09:42 +01:00
Houtan Bastani 7c8baba064 warning output stream should be cerr 2012-01-18 14:42:57 +01:00
Houtan Bastani 67f3a0ecc0 preprocessor: separate dynamic and static functions from their mexfiles 2011-12-23 18:22:41 +01:00
Houtan Bastani 29d8028fc4 preprocessor: add prior statement 2011-12-21 12:21:29 +01:00
Sébastien Villemot bb39de5496 Preprocessor: delete _steadystate2.m file from previous run if exists
Closes: #224
2011-11-25 15:13:16 +01:00
Michel Juillard 411a7fa683 fixed "clear global" for Octave 2011-11-22 22:09:13 +01:00
Michel Juillard c9509817f0 another work-around for Octave 3.2 bug with "clear all" 2011-11-21 15:03:19 +01:00
Michel Juillard 805d01c785 use "clear -all" instead of "clear all" when running under Octave 2011-11-20 14:48:01 +01:00
Ferhat Mihoubi fd923d428d Displays an error message when the model contains pound expressions and 'bytecode' or 'block' options are present 2011-10-14 14:35:32 +02:00
Ferhat Mihoubi c4e0158e44 block-Kalman filter is now available when block option is used 2011-09-20 14:18:31 +02:00
Houtan Bastani ab589aaaa8 output derivatives of static model when identification is present (closes #127) 2011-08-19 16:58:44 +02:00
Houtan Bastani 5c48733f55 output mex file for static model (closes #183) 2011-08-19 16:57:27 +02:00
Sébastien Villemot 06f7d23e90 Preprocessor: fix crash when no computational task is required 2011-06-22 11:34:38 +02:00
Ferhat Mihoubi 53fe3fe8ed - Compute :
+ the number of static, lag, lead and both variables,
  + the lead_lag_incidence matrix for variables related to previous blocks
  + the index of reordered policy rule
for each block during the preprocessing step
- correct a bug in the comment related to first order derivatives in _dynamic.m file for a block decomposed model without bytcode
- avoid simplification of the Jacobian matrix (setting to zero all elements below the cutoff) for  estimated or stochastically simulated models: the cutoff option is set to 0.
2011-06-18 17:53:50 +02:00
Michel Juillard 7433d140f7 discretionary_policy: fixing bug in preprocessor requirements 2011-06-18 06:53:00 +02:00
Sébastien Villemot 282f34b2d3 Preprocessor: adopt a more consistent behavior when no computing task is requested 2011-05-03 11:28:43 +02:00
Sébastien Villemot 54c5d256c0 Preprocessor: tentative fix for testsuite crash in block/bytecode 2011-04-28 10:41:43 +02:00
Sébastien Villemot fc15cd2583 Preprocessor: cosmetic change 2011-04-28 10:39:59 +02:00
Houtan Bastani be4c5c92ef ramsey_policy: allow discount factor to be an expression 2011-03-29 18:18:32 +02:00
Houtan Bastani be236c6402 code cleanup 2011-03-28 11:34:42 +02:00
Houtan Bastani d2a6f0f42c Implement explicit writing of first order conditions of Ramsey problem (ticket #5) 2011-03-24 17:17:15 +01:00
Houtan Bastani de28e06bc4 bug fix: change order of the way we handle expectation operators and trend vars in transformpass 2011-03-23 15:46:04 +01:00
Ferhat Mihoubi d7ef08adf9 Check for varexo_det declaration and simul command incompatibility in the same mode-file 2011-03-18 12:47:06 +01:00
Michel Juillard 571aba6d97 adding syntax checks for discretionary_policy in the preprocessor 2011-03-17 20:13:09 +01:00
Houtan Bastani f8a717b496 bug fix: check that osr, osr_params and optim_weights appear together 2011-03-03 16:31:36 +01:00
Houtan Bastani d430ea8e43 bug fix: check that planner_objective and ramsey_policy statements appear together 2011-03-03 16:31:33 +01:00
Houtan Bastani edc3fa998d fixed error message 2011-03-03 15:24:59 +01:00
Sébastien Villemot 60b70df4c1 Updated copyright notices 2011-02-04 17:27:33 +01:00
Sébastien Villemot d264b7b2e3 Reindentation of the preprocessor 2011-02-04 16:25:38 +01:00
Ferhat Mihoubi 89eecb3253 Allows for block decomposition if "simul" command is not present in the mod file. 2011-01-31 09:58:13 +01:00
Houtan Bastani 94f82b312b k-order: added support for m-files, added tests and modified manual 2010-12-22 09:48:05 +01:00
Ferhat Mihoubi 751c0da2a1 - external functions are compatible with block decomposition and/or bytecode 2010-12-10 12:06:50 +01:00
Sébastien Villemot 818f7df793 Preprocessor: delete remaining dynamic.m file when using USE_DLL 2010-12-08 11:32:13 +01:00
Sébastien Villemot 33d340dd04 Preprocessor: also perform numeric initializations in stochastic context 2010-11-25 16:07:55 +01:00
Sébastien Villemot eaad0b1263 Preprocessor: various cleanups related to the signed vs non-negative numerical constants issues 2010-11-25 13:45:35 +01:00
Sébastien Villemot acce150795 New "console" option (closes #130) 2010-10-28 11:29:39 +02:00
Houtan Bastani ad73ab0a83 Dynare parallel: preprocessor implementation 2010-10-28 10:54:43 +02:00
Houtan Bastani a7fc3361ac trend_var, growth_factor, deflator: stationarize a nonstationary model and test 2010-10-18 16:07:42 +02:00
Houtan Bastani 5327f161d4 external_function: add support for use_dll 2010-10-07 18:05:07 +02:00
Ferhat Mihoubi 3e1a2ad450 - 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 ffd2cb24aa Preprocessor: make option "no_static" work even when "bytecode" is not present 2010-09-17 12:17:05 +02:00
Ferhat Mihoubi f68e4fd455 - 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
Michel Juillard 6c0a0969f6 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
Houtan Bastani fe133054cf DSGE-Var: bug fix. Add init param statement at the before the estimation statement 2010-06-24 15:08:23 +02:00
Houtan Bastani ee9b19fadc DSGE-VAR: support deprecated way of declaring dsge_prior_weight 2010-06-22 10:38:54 +02:00
Houtan Bastani 5a9f972cc1 DSGE-VAR: introduce dsge_var and dsge_varlag options to estimation statement 2010-06-22 10:38:43 +02:00
Sébastien Villemot 211056f552 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
Sébastien Villemot 5546658b4d 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 d68e984fd6 Preprocessor: added new 'steady_state_model' keyword for automatically creating steady state file 2010-04-23 18:39:07 +02:00
Sébastien Villemot 71d577bcb8 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 656a515832 Preprocessor: removed spurious warnings 2010-03-29 12:52:29 +02:00
Sébastien Villemot c33d6fb110 Preprocessor: fixed bug with warnings (they were all disabled) 2010-03-29 12:44:20 +02:00
Houtan Bastani a70b60604c Modified external functions to enforce consistent number of function arguments within model_block 2010-03-03 11:40:13 +01:00
Houtan Bastani 9abc7563c1 Add support for external functions 2010-02-23 18:15:18 +01:00
Sébastien Villemot b652c563ba 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 c471a41fef preprocessor: under Octave/Windows, with USE_DLL, do not require "cygwin" or "msvc" option (closes #76) 2010-02-17 18:40:52 +01:00
ferhat f13b95cb87 "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
stepan 0dcff27478 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 0808ba42b7 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 80e8c10327 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 3aa8876538 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 160ec5d7ca 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 07d536d020 * 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 11dc0707c3 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 628f0aa8af 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 270f8d7b1d 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
george aa9f25129f 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
michel e9ae994ea2 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 981d8cba60 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 131c90ceba 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 fc719ad8c7 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
sebastien 9780bc1727 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
sebastien 8a87993000 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
sebastien 4419f4aa51 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 05071c6295 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 5568e622b8 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 6bd2cb04de 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 07ba8ebdee 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 bd43182acc * 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 2e585124e9 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
sebastien 760085d6fe 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
sebastien 2761b4c016 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 7bfeef5d7f 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 021e0ebb2e 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
sebastien b7fe92c012 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
sebastien 04cec8a438 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 2f1382fab5 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
sebastien bf99443ecf 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
ferhat b17886ee12 - 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 00d887f984 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 0b986771a4 - 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
ferhat 0a816a4e74 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
ferhat 4897b602c6 - 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 77590c8577 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 aedc60cbc1 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
ferhat 3737c1aa2e - 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 5437ff057a 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 f19f36d9ac 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 9179ebe4cf 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
michel 02d388d6b9 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 34ee60fbe7 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 a0af8f7ea0 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 7fa0d9722d 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
sebastien a0fbd7d198 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 1740884d1d 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 095ff8a75a 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
ferhat bfd8cf6aea - 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 892d65248b - 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 644d8c8a98 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 25d7c93ac4 - 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 ff0ae482ce - 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 72ef44fc09 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 39afe5b0b2 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
sebastien c822ce1ef0 trunk: only execute the 'rmpath basename' in Sparse mode
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2294 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-05 11:27:28 +00:00
sebastien 8159e78633 trunk preprocessor: save M_ in the _results.mat file
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2292 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-05 11:24:57 +00:00
ferhat c93cc6bf5c - factorization of simulation methods for static m-file
- correction of bugs in resid.m

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2280 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-02 21:29:43 +00:00
sebastien f6a330b2dc trunk preprocessor: removed obsolete global variables
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2272 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-11-25 14:40:51 +00:00
ferhat 5cd35e1d9e - factorization of simulation methods in dynamic m-file
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2266 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-11-21 17:40:52 +00:00
ferhat a67a20bf66 - new Incidence_Matrix class
- lead and lag on exogenous variables
- corrections in dr1_sparse and dr11_sparse
- minor corrections in simulate

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2255 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-11-14 16:07:47 +00:00
sebastien 813e46ed73 trunk preprocessor: for better compliance with C standard:
* replaced all occurrences of "exit(-1)" by "exit(EXIT_FAILURE)"
* return EXIT_SUCCESS at the end of main()


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2229 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-29 15:33:16 +00:00
sebastien fad44096a0 trunk preprocessor: added option "notmpterms" to dynare command, for disabling temporary terms in static and dynamic files
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2226 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-29 15:10:51 +00:00
sebastien 113d7e1140 trunk preprocessor: allow zero equation if standalone BVAR estimation
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2170 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-17 12:52:08 +00:00
sebastien dd57481c78 trunk preprocessor:
* fail if no. of equations is different from no. of endogenous (unless ramsey_policy is used)
* more fields in the ModFileStructure class
* cosmetic changes


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2121 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-09-29 10:16:13 +00:00
sebastien 622b8c14be trunk: renamed sec2hms.m to dynsec2hms.m (name collision with Matlab package)
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2116 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-09-26 16:26:21 +00:00
ferhat 0e9ab2ebf4 - Bugs corrections in deterministic simulation with sparse option
- Check allowed with sparse option
- New command "MODEL_INFO" providing informations about the block structure of the model
- Memory leak corrections

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1993 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-08-25 15:06:36 +00:00
sebastien ead500e4b0 v4 preprocessor: removed unnecessary round() before call to sec2hms()
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1989 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-08-24 10:41:46 +00:00