Commit Graph

184 Commits (46a0edb9b30a17396d29dde69cb9fa68759648e8)

Author SHA1 Message Date
Johannes Pfeifer 54d353e255 Fix typo in header of DynamicModel.cc 2014-06-02 13:58:29 +02:00
Michel Juillard 15b44eda25 Merge branch 'master' into ep 2014-05-09 10:02:05 +02:00
Michel Juillard 75291659ec putting functions related to extended preprocessor in ExternalFiles.cc 2014-04-24 20:54:38 +02:00
Michel Juillard ad42818606 fixing extended-preprocessor C++ API and test case 2014-04-24 14:33:04 +02:00
Sébastien Villemot 184b810b65 Fix compilation error introduced in 0983ca78. 2014-04-07 14:21:28 +02:00
Michel Juillard 0983ca78f7 extended-preprocessor: starting a C interface (not finished) 2014-04-05 15:46:35 +02:00
Sébastien Villemot 9c556f709b Merge pull request #636 from JohannesPfeifer/preprocessor
Fix comments in header of dynamic and static files
2014-03-17 15:10:31 +01:00
Michel Juillard fd323a8217 extended-preprocessor: starting a C interface (not finished) 2014-03-16 18:49:54 +01:00
Johannes Pfeifer 370df16cfc Fix comments in header of dynamic and static files
Columns and rows were confused
2014-03-14 10:21:42 +01:00
Sébastien Villemot b4c3d004ad Introduce a new abstract class for external function nodes.
This fixes the following bugs:

- 1st and 2nd ext fcn deriv nodes were incorrectly added to
  DataTree::external_function_node_map, because of the chaining of
  constructors.

- the following methods of FirstDerivExternalFunctionNode were not overloaded:
  toStatic(), buildSimilarExternalFunctionNode()

- the following methods of SecondDerivExternalFunctionNode were not overloaded:
  toStatic(), buildSimilarExternalFunctionNode(), compile(),
  compileExternalFunctionOutput()
2014-03-13 12:12:17 +01:00
Michel Juillard 96ac2c0fd6 extended-preprocessor: update test example1 2014-02-24 13:33:48 +01:00
Michel Juillard f20f2f610a extended-preprocessor: adding back writing of model local variables (#) 2014-02-24 13:33:48 +01:00
Michel Juillard c4846430d9 returning sparse matrix in compressed format 2014-02-24 13:33:48 +01:00
Michel Juillard 49b34d4c94 write C++ version of model functions without temporary terms 2014-02-24 13:33:48 +01:00
Houtan Bastani 0750bc707b ms-dsge: change types of output for better packaging 2014-02-24 12:41:02 +01:00
Houtan Bastani b426f7236c 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
Sébastien Villemot 37742463bc Add line numbers of equations in preprocessor error messages.
Closes #584
2014-01-27 16:41:43 +01:00
Sébastien Villemot 839ae22b1f Add a warning when some exogenous are not used in the model 2013-11-29 16:03:45 +01:00
Sébastien Villemot ed2f6d62c1 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
Houtan Bastani f1a122a654 fix bug introduced by ee812f3881 2013-11-19 13:05:08 +01:00
Houtan Bastani 7abcd5bcb1 preprocessor: bug fix: return oo 2013-11-19 11:56:39 +01:00
Houtan Bastani aa0af5e556 proprocessor: block code bug fix: M and oo not being passed to solve_two_boundaries 2013-11-19 11:54:00 +01:00
Houtan Bastani ee812f3881 clang compilation: replace ostringstream array with vector of strings 2013-11-18 12:16:37 +01:00
Houtan Bastani 5dec309bbd preprocessor: simplify if statement 2013-11-18 12:16:37 +01:00
Houtan Bastani 13bc928b0c revert change that breaks gcc build 2013-11-05 18:21:12 +01:00
Houtan Bastani 5352fb4d16 preprocessor and matlab mex fixes for clang compilation 2013-11-05 18:04:57 +01:00
Sébastien Villemot 27f525e1e4 Always initialize M_.maximum_{endo,exo}_{lead,lag} and M_.params
Closes #515
2013-11-04 16:02:28 +01:00
Houtan Bastani 2d4a42c01f missing semicolon 2013-10-29 12:38:28 +01:00
Sébastien Villemot f889760f61 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
Stéphane Adjemian (Charybdis) cc0d9b42f0 Changed name of options_.maxit as options_.simul.maxit. 2013-10-09 13:06:06 +02:00
Houtan Bastani 20dba7e623 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
Johannes Pfeifer a7eedef031 Add full function header to static and dynamic model files 2013-07-28 11:32:14 +02:00
Sébastien Villemot 61485ab809 Fix copyright notices 2013-06-12 17:04:46 +02:00
Sébastien Villemot 7bbe121769 Possibility of restricting differentiate_forward_vars to some variables
Closes #351
2013-05-17 16:53:15 +02:00
Sébastien Villemot 75b5f1d18a Add new model option 'differentiate_forward_vars' (ref. #351) 2013-04-25 18:09:31 +02:00
Sébastien Villemot 38824dc1e5 Implement tags [static] and [dynamic] for equations
Closes #307
2013-04-11 17:11:35 +02:00
Michel Juillard 39cc313964 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 a0b7178962 Automatic detrending engine can now handle models written in logs (ref. #309)
- new command `log_trend_var'
 - new option `log_deflator' to `var' command
2013-03-26 16:51:17 +01:00
Sébastien Villemot c681b5e4ed Revert spurious preprocessor changes introduced in dfa744f 2013-03-26 16:51:10 +01:00
Ferhat Mihoubi dfa744fcb3 - adds new files: Evaluate.cc and Evaluate.hh to bytecode 2013-03-22 16:34:50 +01:00
Sébastien Villemot 8c83135c0f 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 c121aa14b1 Remove oo_.dr.{nstatic,npred,nboth,nfwrd,nspred,nsfwrd}
Replace them by equivalents in M_ (and an extra one: M_.dynamic).

IMPORTANT POINT: oo_.dr.npred used to count both purely backward and mixed/both
variables. This was the cause of lots of confusion. The new M_.npred only
counts purely backward variables.

We now have the following indentities:

M_.npred + M_.nboth + M_.nfwrd + M_.nstatic = M_.endo_nbr
M_.nspred = M_.npred + M_.nboth
M_.nsfwrd = M_.nfwrd + M_.nboth
M_.ndynamic = M_.npred + M_.nboth + M_.nfwrd
2012-11-16 20:05:13 +01:00
Sébastien Villemot dd0190bba9 Isolate block decomposition code
This should fix some random crashes of the preprocessor
2012-09-28 18:41:18 +02:00
Sébastien Villemot 1f9cea669a Update copyright notices 2012-06-08 18:22:34 +02:00
Houtan Bastani 72b25638e0 preprocessor: handle compilation warnings 2012-06-06 16:30:36 +02:00
Sébastien Villemot 008d95935c Fix bug introduced in 4b86df05 2012-06-05 09:48:03 +02:00
Sébastien Villemot 4b86df0581 Preprocessor: remove MATLAB short-circuit operators
They emit a warning under Octave
2012-06-04 17:18:13 +02:00
Michel Juillard c6495dfc9d 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 629673199e 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
Ferhat 28a1cf52cd Corrects the number of lead and lags of a block 2012-02-17 10:48:28 +01:00