Commit Graph

3535 Commits (master)

Author SHA1 Message Date
michel a693b8310d 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 081cf9accf - 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 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 91a7432d56 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 f651142e7a 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 d6ea19b487 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 b30a00d190 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 56bb43ce4e - 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 4b48b5efc0 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 165ede20b4 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 daae864666 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 97f73257f6 - 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 8421712f80 - 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 81b6823bb3 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 8a6d750c51 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 84f3993088 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 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 9595358690 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 a8c2baa936 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 8a09ce6769 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 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
sebastien 762c5140fe 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 0e665123e7 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 3041db17c6 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 e749a3f979 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 421b8d4f65 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 b9d42ca614 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 65d7779d21 trunk doc: updated macroprocessor slides
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2783 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-06-24 12:51:58 +00:00
sebastien a8dec6adf9 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 2cc32c1883 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 60636e84fc 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 5886d3f010 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 ade56acc5e 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 ce9e38b781 - 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 4a54f3f538 - 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 983d7e030a 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 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 518c5fba93 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 7bcc55c266 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 df8bd94394 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 78eb785d55 - 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 71f3364e05 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 916e950df9 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 f01306a29b 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 37f1057c4e 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 811601334e 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 a34aeeca5b 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 181bda4853 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 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 3a9b262af7 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