Sébastien Villemot
40ef954802
Add new dynamic_g1_nz.m generated file, for perfect_foresight_stacked_solver DLL
2019-05-03 19:25:23 +02:00
Houtan Bastani
21fe0f4bdc
avoid cast warnings when compiling boost headers
2019-04-23 14:57:03 +02:00
Sébastien Villemot
b73d554ad2
Use Unicode copyright symbol (in UTF-8 encoding)
2019-04-16 11:35:31 +02:00
Sébastien Villemot
bbab112d65
Support for output of arbitrary derivation order (in MATLAB and DLL modes)
...
Does not work for Julia mode, neither with block and bytecode.
Note: in DLL mode, the number of temporary terms in no longer given in the
‘ntt’ symbol; it must be computed using ‘M_.dynamic_tmp_nbr’.
Ref dynare#217
2019-04-12 18:13:50 +02:00
Sébastien Villemot
8a41a75c85
Apply modernize-raw-string-literal from clang-tidy
...
Use ReplaceShorterLiterals option to enforce replacement of all strings.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-raw-string-literal.html
2019-04-03 16:45:52 +02:00
Sébastien Villemot
78583135df
Use true/false instead of 1/0 for boolean options
...
This is more elegant, and makes it easier to distinguish them from integer
options.
2019-03-19 15:15:10 +01:00
Houtan Bastani
8502ebfc06
json output: print statements in original model output
2019-03-06 11:43:30 +01:00
Houtan Bastani
341b9c6667
pac_model: allow diff as argument to growth option
2019-02-28 19:22:34 +01:00
Houtan Bastani
64f55e4a5e
pac: declare endogenous variables needed by pac model consistent expectation before the creation of auxiliary variables
2019-02-25 15:29:46 +01:00
Houtan Bastani
84104a695e
don’t initialize string to empty
2019-02-21 10:53:11 +01:00
Houtan Bastani
f88682d683
pac: output model type in M_.pac.(model_name)
2019-02-20 16:43:24 +01:00
Houtan Bastani
240aba6709
move pac info out of pac expectation node
2019-02-20 15:35:13 +01:00
Houtan Bastani
34756833ae
pac: output info into substructures based on pac model name & equation tag
2019-02-19 18:32:42 +01:00
Houtan Bastani
c1cf5c8d18
fix comment
2019-02-19 12:51:05 +01:00
Houtan Bastani
0ea84fa9a4
pac: allow steady state growth and model consistent expectation substitution in pac equation
2019-02-18 15:11:45 +01:00
Houtan Bastani
1e071ca499
make simplifications in dynamic model before copying to original
2019-01-28 17:53:04 +01:00
Houtan Bastani
f5df7e7567
when an equation is of the form `X` = `constant`, replace all occurrences of `X` in other equations with `constant`
2019-01-28 15:32:12 +01:00
Houtan Bastani
d922ae8ffc
pac_model: permit lag on growth option
2019-01-25 14:52:26 +01:00
Houtan Bastani
4c71d143f3
substitute leads/lags appropriately when identification or sensitivity statements are present. Issue: https://git.dynare.org/Dynare/dynare/issues/1631
2019-01-09 14:48:25 +01:00
Houtan Bastani
280b764ca5
onlymodel: read estimated_params block as well
2018-12-27 19:07:51 +01:00
Houtan Bastani
7d37c35a3d
onlymodel: read initval and endval too
2018-12-27 12:06:39 +01:00
Sébastien Villemot
01385d1f80
Simplify implementation of nopreprocessoroutput option
...
Simply redirect cout to /dev/null, instead of propagating a boolean
everywhere.
2018-12-20 17:08:45 +01:00
Sébastien Villemot
38152c34a4
Make histval compatible with diff operator
...
The idea is to make use of the dynamic_set_auxiliary_dseries.m file to generate
the initial conditions for all auxiliary variables, including the diffs.
Also remove the check done by the preprocessor for the lags in histval, since
it does not work correctly with the diff operator.
2018-12-11 17:32:05 +01:00
Sébastien Villemot
67ac4bf8ea
Allow diff() and log() in "expression" option of var_expectation_model
2018-11-29 16:01:49 +01:00
Houtan Bastani
41af0841c3
extend nopreprocessoroutput option to substitution output
2018-11-28 11:53:50 +01:00
Sébastien Villemot
6fa115aedd
Derivation engine w.r.t. endogenous generalized to any order
2018-11-22 17:13:55 +01:00
Houtan Bastani
5f5fd569dd
add onlymodel command line option
2018-11-07 15:35:03 +01:00
Sébastien Villemot
4a974bb428
The preprocessor now compiles the MEX when use_dll is specified
...
New options "mexext" and "matlabroot" are introduced, so that the preprocessor
knows where to find MATLAB and which architecture to compile for.
Only recent gcc is now supported. A set of optimization flags is used so that
compilation goes reasonably fast on large models.
Consequently, options "msvc", "mingw" and "cygwin" have been removed.
2018-10-26 18:09:13 +02:00
Houtan Bastani
bef7c2a193
remove need to declare equations nonstationary
2018-10-24 16:04:51 +02:00
Houtan Bastani
55b625b016
undiff expansion of var_expectation
2018-10-12 15:21:03 +02:00
Sébastien Villemot
bcdfb43fd3
Replate DynamicModel::toStatic() by a converting constructor in StaticModel
...
It is therefore now possible to write:
static_model = static_cast<StaticModel>(dynamic_model);
2018-10-10 17:08:54 +02:00
Sébastien Villemot
f2cf86b734
Add copy constructors / assignment operators for the DataTree class hierarchy
...
In particular, it is necessary to turn back DataTree::AddVariable() into a
non-virtual method, because it is called from DataTree's constructor. Enforcing
the absence of leads/lags is now done using a new boolean DataTree::is_static.
Take advantage of the new copy constructor for handling
PlannerObjectiveStatement more elegantly.
Unfortunately it is not possible to implement *move* constructor / assigment
operators, because the reference ExprNode::datatree is not mutable.
2018-10-10 12:53:55 +02:00
Sébastien Villemot
7bb5382428
Always use brace-initializer in constructors
...
The syntax makes clearer the distinction between a function call and an
initialization. Also, it prevents bugs due to implicit type conversions.
2018-10-04 17:19:18 +02:00
Sébastien Villemot
38f13eb0ad
Remove nonsensical check on MS Visual C++ version
...
The check is done at the time the preprocessor is compiled, but it ought to be
done at the time when the C source file generated by the preprocessor is compiled…
Anyways, it is probably irrelevant now, since MSVC has supported
acosh/asinh/atanh for a long time now.
2018-10-02 18:23:39 +02:00
Sébastien Villemot
5e6b8f0a6b
No longer test for __MINGW32__ macro, testing for _WIN32 is enough
...
Closes : Dynare/dynare#1315
2018-10-02 16:50:07 +02:00
Sébastien Villemot
15d026e54e
C output: split generated function into several smaller subfunctions
...
This mimicks the structure of M-functions (though the logic for filling the
temporary terms vector is a bit different).
This change implied a modification in the way we compute the checksum in case
of block decomposition (the temporary terms for the C output are not correctly
computed in that case).
2018-10-01 16:04:01 +02:00
Ferhat Mihoubi
139e3efa82
Adds a new model option "linear_decomposition" that creates a block composed of the non-linear equations o the model
2018-09-28 14:54:52 +02:00
Houtan Bastani
85dbb649b7
move trend_component_table and var_model_table to DynamicModel as they are only used there
2018-09-14 17:04:06 +02:00
Houtan Bastani
dc9ecbb49a
fix bug in columns of EC matrix
2018-09-12 17:56:30 +02:00
Houtan Bastani
46709ada3f
output AR matrix in file for trend component models
2018-09-10 14:51:33 +02:00
Houtan Bastani
acc197f539
output AR matrix in file
2018-09-06 18:00:05 +02:00
Sébastien Villemot
e19a14869e
Convert ExprNodeOutputType into a class enum
...
Incidentally, replace the IS_* macros by inline functions.
2018-09-05 18:28:32 +02:00
Sébastien Villemot
5d2e1cf7b9
Use smart pointers for storage of Statement in ModFile class
2018-09-05 18:28:27 +02:00
Houtan Bastani
9f0c30740e
introduce epilogue block
2018-09-05 12:31:49 +02:00
Houtan Bastani
7a438a3ce7
ensure that trend_variable found is actually a trend variable as declared in the trend_component_model statement
2018-09-03 15:05:30 +02:00
Houtan Bastani
1ae729929b
fix bug when var_expectation_model uses trend_component_model as auxiliary model
2018-08-27 14:51:54 +02:00
Houtan Bastani
d5d6e8beb0
simplify updating of RHS variables for trend component and var models
2018-08-23 13:57:27 +02:00
Houtan Bastani
97af0ff711
fix bug in updating variables in var model table
2018-08-23 10:28:19 +02:00
Houtan Bastani
54df07d0e0
remove unnecessary comment
2018-08-22 17:01:03 +02:00
Houtan Bastani
7d9072a227
var_expectation: rename var_model_name to aux_model_name
2018-08-22 16:57:36 +02:00