Sébastien Villemot
9b9c5beb5c
Ensure that unary ops aux vars are never created when there is a lead
...
The transformation would be incorrect because of the expectation operator.
There was already a safety check, but it was not entirely correct. For example,
if “exp(y)” was appearing before “exp(y(+1))”, the check would not catch the
problem, because it happened after the substitution table had been filled. So
we now do the check before filling that table.
2019-08-19 18:27:57 +02:00
Sébastien Villemot
3941278832
Add more comments in routines for aux vars for unary ops / diff operators
...
By the way, do some small code simplifications.
2019-08-19 18:27:57 +02:00
Houtan Bastani
2c8d0471a4
normalizeEquation not implemented for PacExpectationNodes
2019-07-15 16:34:54 -04:00
Houtan Bastani
ae0a91256a
add cubic root to dynare language
2019-07-15 12:18:26 -04:00
Sébastien Villemot
17c4104275
ExprNode::removeTrendLeadLag(): pass map argument by const-reference rather than by value
2019-07-05 18:22:24 +02:00
Sébastien Villemot
69f2f1ca88
UnaryOpCode::eval(): add missing error cases
2019-06-19 17:31:33 +02:00
Houtan Bastani
7fb591645f
fix bug in pac equation: match terms of param*linear_expression
2019-05-03 11:54:45 +02:00
Sébastien Villemot
82cd95a653
Remove some unnecessary headers
2019-05-02 15:30:33 +02:00
Sébastien Villemot
1907249fac
Ask GCC to warn about C-style casts (-Wold-style-cast)
...
Adapt the code accordingly.
2019-04-23 12:54:11 +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
39926133b8
More automatic modernizations with clang-tidy
2019-04-03 16:46:20 +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
8dad93964d
Allow linear combination of targets in error correction term of trend component models
2019-03-29 17:06:24 +01:00
Sébastien Villemot
9bc6c57a5c
Factorization: create new utility SymbolTable::getUltimateOrigSymbID()
2019-03-29 17:06:24 +01:00
Sébastien Villemot
9b98da424a
Simplification in BinaryOpNode::getPacAREC()
2019-03-29 17:06:24 +01:00
Sébastien Villemot
4114b8a9e1
Simplification in BinaryOpNode::fillAutoregressiveRow
...
By the way, fix bug in detection of duplicate elements.
2019-03-29 17:06:23 +01:00
Houtan Bastani
92af6ffbe7
pass flag because regex’s on matlab side depend on it
2019-03-15 16:12:54 +01:00
Houtan Bastani
da9f5dcffb
Revert "make pac expectation JSON output like that of var expectation"
...
This reverts commit 21d42e6010
.
2019-03-15 16:11:55 +01:00
Houtan Bastani
21d42e6010
make pac expectation JSON output like that of var expectation
2019-03-15 15:47:50 +01:00
Houtan Bastani
50c26f4945
further simplifications related to AR matrices
2019-03-15 14:35:57 +01:00
Houtan Bastani
f1d1c1e1c1
trend_component_model: simplify AR
2019-03-15 12:27:32 +01:00
Houtan Bastani
a3c08f932e
simplify code to find autoregressive matrix for VARs
2019-03-15 12:26:59 +01:00
Houtan Bastani
0544141545
pac: fix bug when checking for symb_ids
2019-03-15 12:06:10 +01:00
Houtan Bastani
1e21904496
use emplace_back instead of push_back
2019-03-11 15:51:41 +01:00
Houtan Bastani
583c8373d7
pac: add residual to additive part
2019-03-07 12:23:19 +01:00
Houtan Bastani
9b1b4113d9
pac: keep order of variables in ec part of pac equation and add scaling factor to output
2019-03-07 11:31:45 +01:00
Houtan Bastani
14e7c92f14
pac: fix bug in setting of target variable
2019-03-07 11:31:45 +01:00
Sébastien Villemot
abfe1a70e7
Fix typo
2019-03-05 18:59:40 +01:00
Houtan Bastani
68850536e6
stop processing if we substitute a unary op with a lead. closes #20
2019-03-05 15:20:32 +01:00
Houtan Bastani
a1c79e6a4c
remove code that should have been removed in 9963686e72
2019-03-05 12:33:21 +01:00
Houtan Bastani
9963686e72
handle additive terms when PAC equation does NOT have non/optimizing agents
2019-03-05 12:20:45 +01:00
Houtan Bastani
5f013756f2
find additive parts to pac equation
2019-02-27 23:12:05 +01:00
Houtan Bastani
effa40543e
pac: find correct target variable when pac equation accounts for share of optimizing agents
2019-02-25 18:46:44 +01:00
Sébastien Villemot
8ae7f81fd9
Fix bug with var_expectation nodes introduced in 38152c34a4
...
We must provide a return value for
VarExpectationNode::maxLagWithDiffsExpanded().
Return zero, which will lead to the right overall result even if it is not
strictly the right choice (see the comment in the code).
2019-02-22 17:30:09 +01:00
Houtan Bastani
469a328cfc
replace make_pair and make_tuple
2019-02-21 10:42:10 +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
760eaf6712
fix compilation warning
2019-02-19 18:32:42 +01:00
Houtan Bastani
fc6d04b015
create A0 and A0star matrices for trend component models
2019-02-19 12:26:30 +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
b3fbb86214
relieve constraint that max lag on EC matrix is 1
2019-02-15 11:12:07 +01:00
Houtan Bastani
f4837e6c94
fix AR and EC matrices when `equation = C` results in a simplified equation
2019-02-14 17:09:57 +01:00
Houtan Bastani
6e680c0159
simplify in accordance with 02ae0af3e5
2019-01-29 17:52:19 +01:00
Houtan Bastani
302fec4dec
remove comparisons to nullptr
2019-01-29 17:46:09 +01:00
Houtan Bastani
02ae0af3e5
change map type for readability
2019-01-29 17:43:17 +01:00
Houtan Bastani
90c45b2cd6
remove unused function added in d922ae8ffc
2019-01-28 15:34:38 +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
Sébastien Villemot
e7c9c26d2d
More modernizations with clang-tidy
2019-01-15 11:08:47 +01:00
Houtan Bastani
bb624ec6a7
epilogue: allow for simulations in epilogue block
2018-12-19 16:09:30 +01:00