Commit Graph

39 Commits (06e7755cd809267b3c7ff0858830ca35b97375c8)

Author SHA1 Message Date
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 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
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
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 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 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 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 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 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 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 a5a4c36ac0 Minor corrections on multiprocessing in simulate
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2464 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-13 17:59:45 +00:00
ferhat b6636fc799 modifications in sparse options to support the new variable indexation
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2458 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-03-13 13:33:09 +00:00
sebastien 4005d25f25 trunk preprocessor:
* reorganized symbol table so that internally symbols have a unique integer ID (as a result, sparse code is temporarily in a broken state)
* rewritten from scratch ModFile::evalAllExpressions()
* {load,save}_params_and_steady_state moved to NumericalInitialization.{cc,hh}
* fixed bug related to endval block


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2441 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-02-27 12:19:25 +00:00
ferhat 56c0af0b7e Find the temporary terms even in local model variables
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2373 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-23 14:09:24 +00:00
sebastien 723b260f9f trunk preprocessor: automatic reindentation of all code with emacs
git-svn-id: https://www.dynare.org/svn/dynare/trunk@2372 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-23 10:59:37 +00:00
sebastien 2495aca72a trunk:
* updated copyright headers of all files modified since January 1st: the copyright notice now encompasses 2009
* fixed various other copyright header issues


git-svn-id: https://www.dynare.org/svn/dynare/trunk@2364 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-21 14:39:24 +00:00
ferhat 4fe7e3e155 - SymbolGaussElim.cc is discarded from the preprocessor (all simulations are now implemented in simulate)
- Correction in model_info.m

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

git-svn-id: https://www.dynare.org/svn/dynare/trunk@2351 ac1d8469-bf42-47a9-8791-bf33cf982152
2009-01-02 13:00:43 +00:00
ferhat 487afce68d - corrections of few bugs in local model variable with sparse option
- simplifications of model blocks management in Modeltree
- corrections of the temporary variables management with sparse option

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


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2329 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-12-19 10:24:31 +00:00
ferhat f904a1a19d - 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 8bbc105fba 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 59fad3df56 trunk preprocessor: removed unused recursive variable type
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2167 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-17 11:54:35 +00:00
sebastien cc64a40ac7 trunk preprocessor: renamed "Type" to "SymbolType" for the sake of clarity
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2166 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-17 10:20:19 +00:00
sebastien 61e307d737 trunk preprocessor:
* forbid lead/lag on model local variables (constructed with pound sign)
* forbid unknown function names in model block
* code simplication


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2147 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-10-13 16:44:20 +00:00
michel 5d9f0670c2 changed name of function called for normcdf
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@2091 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-09-22 18:58:04 +00:00
sebastien ba45419c70 v4 preprocessor:
* fixed bug related to column numbering of exogenous variables in dynamic jacobian
* gave more explicit names to some methods in VariableTable, and other cosmetic changes


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1990 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-08-24 10:54:20 +00:00
sebastien 1e6b15f042 v4 preprocessor: rewrote ExprNode::collectEndogenous()
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1778 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-04-03 14:47:39 +00:00
sebastien 694496ee14 v4 preprocessor: removed irrelevant error messages in ExprNode evaluation
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1775 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-04-02 15:08:44 +00:00
sebastien dba0205e1c v4 preprocessor mex/sources/simulate: replaced C headers by their C++ counterpart
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1712 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-02-19 14:35:59 +00:00
michel ba0b58dfab v4: changing name of preprocessor directory
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1686 ac1d8469-bf42-47a9-8791-bf33cf982152
2008-02-03 10:28:36 +00:00