Sébastien Villemot
215283005e
No longer store symbol type in VariableNode
...
This facilitates switching variable types on the fly. In particular, this
allows removing the hack in DynamicModel::updateAfterVariableChange() that way
basically recreating all the nodes after the type change.
2018-10-10 12:34:05 +02:00
Sébastien Villemot
48940ff899
Convert SvarRestrictionType into a class enum
2018-10-02 18:15:31 +02:00
Sébastien Villemot
3f26933f44
Replace ExternalFunctionSetOrNot enum by integer constants
...
This was not conceptually an enum, but rather a collection of unrelated
constants:
- two constants for use as placeholder for symbol IDs at different places
- one constant for the default number of arguments
2018-10-02 18:10:12 +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
eb74d48393
trend_component_model: replace `trends` option with `targets`
2018-09-13 12:21:23 +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
Stéphane Adjemia (Scylla)
a406c18598
Allow trend_component_model in var_expectations.
2018-08-22 16:50:01 +02:00
Houtan Bastani
539fddc9f6
introduce var model table
2018-08-22 12:15:02 +02:00
Houtan Bastani
6015b0e57b
fixes to trend component model
2018-08-22 12:15:02 +02:00
Houtan Bastani
afe0e475b1
trend_component_model statement
2018-08-17 16:52:48 +02:00
Sébastien Villemot
f3c2a1bf87
New var_expectation_model statement and re-design of var_expectation operator
...
Given a previously declared var_model, the var_expectation_model statement is
used to declare a way of forming expectations with this VAR (possibly using a
finite or infinite discounted sum). The var_expectation operator now takes a
single argument, the name of the var_expectation_model.
For the moment, this only works when the var_model is using equations
explicitly declared in the model block.
2018-08-02 08:39:09 +02:00
Sébastien Villemot
8a03532c78
ParsingDriver: factorize code to check symbol types
2018-08-01 10:47:56 +02:00
Sébastien Villemot
122e154764
PlannerObjectiveStatement now owns its model_tree
...
By the way, error out if the planner_objective statement is used two times.
2018-07-31 13:00:41 +02:00
Sébastien Villemot
0a063eecc1
More smart pointers
2018-07-31 13:00:39 +02:00
Sébastien Villemot
7280c92642
Use variant semantic values in the Bison parser
...
We can therefore manipulate objects by value rather than by pointers, which
saves a lot of memory manipulations (and avoid potential segfaults and memory
leaks).
Note that there is no default action ("$$ = $1") when using the variant type,
so we add them explicitly.
2018-07-31 11:48:08 +02:00
Stéphane Adjemian(Charybdis)
49e1c43aed
Partially reverted 19048bdca
.
...
There is no reason to associate an exogenous variable or parameter to a
specific equation. For these types the user can use the pipe
notation (|x, |p) in any equations or the usual parameters and varexo statements.
2018-07-19 23:29:27 +02:00
Sébastien Villemot
14948401e4
C++11: convert PriorDistributions to a class enum
2018-07-18 16:52:12 +02:00
Sébastien Villemot
4ad0e500d4
C++11: convert {Unary,Binary,Trinary}Opcode to class enums
2018-07-18 16:18:26 +02:00
Sébastien Villemot
d6055c1407
C++11: convert SymbolType to a class enum
2018-07-17 18:55:26 +02:00
Houtan Bastani
e0bf2b60b6
Modify 19048bdcae
to store equation tags for variables declared in equation tags
2018-07-09 14:49:12 +02:00
Houtan Bastani
19048bdcae
Allow for the declaration of endogenous, exogenous, parameters on-the-fly in equation tags
2018-07-09 14:39:13 +02:00
Sébastien Villemot
30c205f418
C++11: replace calls to std::atof() by std::stod()
2018-07-04 14:53:13 +02:00
Sébastien Villemot
5e1d722013
C++11: replace most calls to std::atoi() by std::stoi()
...
The latter accepts a std::string as argument.
2018-07-04 14:53:08 +02:00
Sébastien Villemot
272d36a37c
Remove useless casts of nullptr
2018-06-04 16:39:01 +02:00
Sébastien Villemot
608c43450c
Replace most calls to make_pair by braced-initializer lists or emplace()/emplace_back()
2018-06-04 16:36:46 +02:00
Sébastien Villemot
182c53273e
Remove useless spaces in type qualifiers
...
In C++11, it is no longer necessary to put a space between two consecutive ">".
2018-06-04 15:03:31 +02:00
Sébastien Villemot
1e56c73377
Port to C++11 nullptr keyword
...
Performed using modernize-use-nullptr from clang-tidy.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2018-06-04 15:03:31 +02:00
Sébastien Villemot
33b1359905
Port to C++11 emplace_back() method on containers
...
Performed using modernize-use-emplace from clang-tidy.
Manual intervention was needed to transform a NULL into nullptr in SymbolTable.cc.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-emplace.html
2018-06-04 15:03:31 +02:00
Sébastien Villemot
c0ed97d247
Port to C++11 auto keyword
...
Performed using modernize-use-auto from clang-tidy.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-auto.html
2018-06-04 15:03:26 +02:00
Sébastien Villemot
6cf4e6dc0c
Port to C++11 range-based for loops
...
Performed using modernize-loop-convert from clang-tidy.
Manual intervention was needed in MacroValue.cc because of a variable name
capture issue.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-loop-convert.html
2018-06-04 12:26:16 +02:00
Houtan Bastani
fb8d9258d0
add pac_model statement
2018-04-04 11:48:59 +02:00
Houtan Bastani
db1f6c2998
Modify changes from on-the-fly branch
2018-03-20 11:03:46 +01:00
Houtan Bastani
80060fb9ef
Merge remote-tracking branch 'origin/declare_vars_in_model_block'
2018-03-19 17:05:03 +01:00
Houtan Bastani
4897ab7d69
clean up adl code
2018-02-28 11:31:08 +01:00
Houtan Bastani
a1437ac982
Merge remote-tracking branch 'dynare-preprocessor-github/master' into other-master
2018-02-26 12:09:58 +01:00
Houtan Bastani
b504f160ca
move files to src directory
2018-02-15 11:48:04 +01:00