Commit Graph

34 Commits (8ac397daa2976c81cc2f81de2c3ab58cdef5ea36)

Author SHA1 Message Date
sebastien 059bb76e7c v4 parser:
* refactored SymbolTable class
* added a uniform interface for emitting warnings


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1494 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-12-19 15:16:43 +00:00
sebastien 10bdf16a2a v4 parser:
* fixed operators precedence (in particular for relational operators)
* various minor cleanups


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1483 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-12-07 16:02:55 +00:00
michel f60bb42588 v4 parser: corrected bug for normcdf in DynareBison.yy
begin implementation of homotopy (not finished)


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1461 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-11-26 16:31:48 +00:00
ferhat d884d8a397 New features:
- Implementation of the simulation of the block decomposed model using sparse matrix using MATLAB code: 
  New option in model : sparse
  Example:
  Model(SPARSE);
  ….
  End;
- Implementation of the simulation of the block decomposed model using sparse matrix for static model. 
- Krylov methods are implemented to solve the linear model J.y=b, with J the Jacobian matrix at each step of  the Newton Method. Two Krylov's solvers are considered : 
   + Generalized Minimum Residual Method (GMRES) 
   + BiConjugate Gradients Stabilized (BICGSTAB)
  To call them the SIMULATE command has to be completed with a new option : METHOD which could have three   different values : 
   + LU : (default value)  Sparse LU resolution
   + GMRES 
   + BICGSTAB
	 	Example:
 			simul(periods=100, method=lu);
                        or        simul(method=Gmres);
- Correction of various bugs in “simulate.dll”.
- Correction of simk.m
- Correction allowing a list of VALUES or PERIODS not necessarily separated by a comma. 

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1447 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-11-20 23:24:01 +00:00
michel 2a79c2cecc v4 parser.src: added function normal cumulative density normcdf(x,mean,std dev) and its derivative
added tests/parser/t_normcdf.mod
               added Trinary Operators
               increased precision of constants written to *.m or *.c files


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1440 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-11-11 15:24:50 +00:00
sebastien b4dfd32e59 v4 parser: add unknown function names to the symbol table
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1430 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-10-17 09:36:56 +00:00
ferhat a5323768aa Gets rid of dummy function (replaced by logical operators) and corrects logical operators.
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1427 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-10-15 09:04:08 +00:00
ferhat d53caec4af New logical operators:
"==", "!=", "<", ">", "<=", ">="

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1421 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-10-08 22:52:57 +00:00
adjemian 163c5b4146 Add min(,) max(,) and dummy() functions to dynare... Buggy until tomorrow ;-)
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1417 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-10-05 19:47:27 +00:00
sebastien 5e1d6683ff v4 parser: various minor things
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1410 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-10-04 09:16:52 +00:00
michel ad3273d726 v4 preprocessor: added code for GSA (Marco) not finishde
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1405 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-10-02 14:05:16 +00:00
sebastien 50950ea63f v4 parser: removed deprecated "olr" command
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1342 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-07-06 14:39:38 +00:00
sebastien 86360d9eb4 v4: added BVAR code for computing marginal density and forecasting
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1331 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-06-25 22:42:30 +00:00
ferhat 77d6a24cf7 Adding Markowitz criteria in the linear solver (new option in simul: "Markowitz=val" - with val a strictly positive real)
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1298 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-06-03 22:35:30 +00:00
ferhat 9af2e461c3 New release of deterministic simulation.
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1292 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-06-01 11:43:49 +00:00
sebastien 9f33835d6a v4 parser:
* implemented handling of mod file local variables (eModFileLocalVariable)
* renamed "local parameters" to model local variables (eModelLocalVariables)


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1253 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-04-30 12:09:05 +00:00
sebastien 573227a044 v4 parser:
* removed Expression class; the "ExprNode" class is therefore now used everywhere
* removed interprete class, and replaced it by a method in ExprNode and an global evaluation context in ModFile
* fixed breakage of SparseDLL / Block decomposition code introduced in previous revision


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1204 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-03-09 17:27:46 +00:00
sebastien 30c70a35e3 v4 parser:
* reorganised code in ModelTree so that block decomposition and SparseDLL code is clearly separated
* replaced DataTree::offset by ModelTree::mode, using an enumeration of the three modes which is more explicit
* reorganised ExprNode::writeOutput method by using a sixfold enumeration type (ExprNodeOutputType) corresponding to the 6 different contexts in which an expression can be written


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1203 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-03-06 17:14:35 +00:00
sebastien feec20209d v4 parser: merged Fehrat's changes
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1190 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-02-21 23:28:16 +00:00
sebastien c3d114a7a1 v4 parser:
* declared ExprNode::cost as const
* Makefile: removed DynareBison.{cc,hh} from "clean" rule. Added a "distclean" rule for that purpose
* various minor changes


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1179 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-02-05 09:55:41 +00:00
sebastien 0c16f52806 v4 parser:
* reshaped DataTree/ModelTree using a more object-oriented approach
* improved expression sharing algorithm (temporary terms in output files), resulting in smaller output files for big models
* optimized performance (both in computing time and memory consumption)
* bugfix: the expressions stored in local parameters of models (pound expressions) are now derived
* bugfix: cosh(0) = 1
* removed some useless parentheses in output


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1148 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-01-09 19:00:05 +00:00
michel 77cdcce658 v4: adding Ramsey policy to parser;
changes to Ramsey policy Matlab code

git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1133 ac1d8469-bf42-47a9-8791-bf33cf982152
2007-01-04 14:42:27 +00:00
sebastien 022ddd81ba v4 parser ParsingDriver: reintroduce check for existence of symbol in expressions
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1127 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-12-18 23:50:18 +00:00
sebastien 5bbd779bab v4 parser:
* added planner_objective statement, which triggers the creation of filename_objective_static.m
* added computing pass
* added the possibility of writing the hessian in static output file



git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1126 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-12-18 23:28:52 +00:00
sebastien 0f9ed33f7d v4 parser: removed ModelParameters class, and moved its components to the relevant places
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1125 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-12-18 11:29:10 +00:00
michel d035175627 v4 parser: 'check' is also a computing task
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1123 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-12-17 14:59:39 +00:00
sebastien 73d3e17540 v4 parser:
* added an embryonic checking pass after parsing
* modified the decision of which derivatives to compute:
  - if a simul statement is present, compute the jacobian vs endogenous variables only, and no hessian
  - if a stoch_simul/estimation/olr/osr statement is present, compute the jacobian vs all variables, plus the hessian
  - if the two previous conditions are simultaneously fulfilled, abort with an error
  - if none of these two conditions are fulfilled, abort with an error (nothing to compute)
* fixed a minor bug with the size of the jacobian matrix when computing it only vs endogenous variables


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1120 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-12-15 11:44:58 +00:00
sebastien be18e12a43 v4 parser VariableTable:
* cleaned and simplified the code
* incorporated VariableTable as a private member of DataTree/ModelTree


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1118 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-12-14 22:19:39 +00:00
sebastien 4f9e8a6e27 v4 parser:
* clearly separated the parsing process from the output writing, using an abstract intermediary representation of the mod file
* created the Statement class, and its derivatives, for that purpose
* fixed bug with "corr" statements in "shocks" blocks (variables indexes given to matlab were incorrect)
* fixed bug with "optim" option of "estimation" (this option was not passed to matlab)
* fixed bug with "dynatype" and "dynasave" (variable list was not passed correctly to matlab)
* fixed bug with "calib" and "calib_var" (they were unusable because of flex misspecification)
* fixed segmentation fault with "estimated_params_bound" and "estimation_params_init"


git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1117 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-12-12 11:54:30 +00:00
sebastien f84feddb02 v4 parser: added missing tokens in DynareFlex.ll; added error message for unrecognized characters; fixed minor bugs in DynareBison.yy
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1112 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-11-28 14:26:06 +00:00
sebastien d5ac5b1fbd v4 parser: created ModFile class, which is the abstract representation of a mod file; removed all static variables
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1110 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-11-28 11:56:02 +00:00
michel f2b1f68e75 v4: prior_analysis, again
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1098 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-11-25 17:55:02 +00:00
sebastien 56f54de49a v4 parser: removed Objects class; fixed memory leaks associated to parsing
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1093 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-11-22 19:01:40 +00:00
sebastien 6d18a704b0 v4 parser: removed ylmm, replaced by Bison C++ support
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1084 ac1d8469-bf42-47a9-8791-bf33cf982152
2006-11-17 17:48:11 +00:00