Commit Graph

402 Commits (3db736f31d747badfa8720a0d4c01c21571ab4d5)

Author SHA1 Message Date
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