Commit Graph

1853 Commits (38ed0f2ffcc675c1672e001dc4737305c8da8662)

Author SHA1 Message Date
Sébastien Villemot 38ed0f2ffc Remove unused writeChainRuleDerivative methods 2018-05-25 17:10:16 +02:00
Sébastien Villemot c7c26190d6 Reactivate use_dll mode 2018-05-25 15:48:55 +02:00
Sébastien Villemot 968e411c31 Make indexing in temporary terms array ready for a (hypothetical future) implementation in C 2018-05-25 15:19:50 +02:00
Sébastien Villemot f4b633b199 Factorize code for writing temporary terms identifiers (Tnnn)
Incidentally fix bug when a trinary operator becomes a temporary term with
block decomposition (without bytecode).

Also add a safety check to ensure that, if a temporary term is detected, its
index is indeed present in temporary_terms_idxs.
2018-05-25 14:53:48 +02:00
Sébastien Villemot 467604d428 Simplify ExprNode::writeOutput methods
The version with no temporary_terms_idxs argument needs not be virtual, since
it is the same implementation in all derived classes. Rather move it at the
level of the base ExprNode class.
2018-05-25 12:20:25 +02:00
Sébastien Villemot 64323ef730 Add compatibility layer for Matlab/Octave code not using the new temporary terms array interface 2018-05-24 19:35:35 +02:00
Sébastien Villemot 143e0888b6 Clean generated files for temporary terms array interface 2018-05-24 19:35:35 +02:00
Sébastien Villemot bb4b5993b0 Simplify code for model local variables 2018-05-24 19:35:35 +02:00
Sébastien Villemot 164a6f303b Fix bug in temporary terms array in the presence of model local variables
In the presence of MLVs, the temporary terms indexing was corrupted. The code
was using the implicit assumption that the ExprNodeLess ordering was giving the
same ordering as the temporary terms indexes ordering. But MLVs can be higher
in ExprNodeLess ordering than some other temporary terms, while they have the
lowest temporary terms index, hence the bug.

Fix this by no longer relying on the ExprNodeLess ordering, and rather use a
full map<ExprNode *, int> for ModelTree::temporary_terms_idxs. By the way,
simplify the code by removing a few useless data structures (e.g.
ModelTree::temporary_terms_idxs_*).
2018-05-24 19:35:21 +02:00
Sébastien Villemot a9bfd1223b Fix assertions that check the length of temporary terms vectors
Model local variables had been omitted in the length computations.
2018-05-24 17:04:16 +02:00
Sébastien Villemot 41d7496b46 Fix bug in wrapper functions (*_{dynamic,static}_resid_g1{,_g2,_g2_g3}.m)
The last argument (T_flag) was missing in the function definitions (but it was
used in some function calls).
2018-05-23 17:34:00 +02:00
Sébastien Villemot 3fa14031a2 Fix bug in *_{dynamic,static}_resid_g1_g2_g3.m functions 2018-05-22 12:02:48 +02:00
Houtan Bastani 732a317030 Merge branch 'master' into temporary_terms_array 2018-05-18 16:40:12 +02:00
Houtan Bastani dd8b05e2f0 add undiff info to pac output 2018-05-17 16:53:27 +02:00
Stéphane Adjemian(Charybdis) 1ba023e37d Added option for tuning mh_jscale. 2018-05-16 15:48:39 +02:00
Houtan Bastani 3d946ec8b7 var: check for leaded/contemporaneous variables 2018-05-16 12:17:06 +02:00
Sébastien Villemot 7798d45eb9 Update my email 2018-05-16 10:23:09 +02:00
Houtan Bastani 32041cf81a Revert "Enforce C++ 2003 standard (with GNU extensions), to silence deprecation warnings"
This reverts commit 4fce93eea9.
2018-05-15 16:09:07 +02:00
Houtan Bastani 3a71215ae1 pac: change auxiliary variable creation, fix VAR max lag 2018-05-15 14:42:36 +02:00
Sébastien Villemot 4fce93eea9 Enforce C++ 2003 standard (with GNU extensions), to silence deprecation warnings 2018-05-09 17:31:30 +02:00
Houtan Bastani 912261e5fc pac: separate params into EC and AR 2018-05-04 15:26:21 +02:00
Houtan Bastani 1310ec3caa update pac output 2018-04-18 15:50:35 +02:00
Houtan Bastani d686275da1 fix bug with predetermined variables used in model local variables 2018-04-18 14:29:40 +02:00
Houtan Bastani 7ac33099f8 support undiff in pac model 2018-04-17 16:56:27 +02:00
Houtan Bastani bb1cc0bebf simplify var_model statement calls 2018-04-17 16:56:02 +02:00
Houtan Bastani 09e73f3bb4 var_model: fix lag info when diff present 2018-04-17 16:55:55 +02:00
Stéphane Adjemian(Charybdis) 38fc19f9d3 Fixed type issue. NaN cannot be used if Int is expected. 2018-04-11 09:17:43 +00:00
Stéphane Adjemian(Charybdis) 70ec52a6cc Added a routine returning only the static jacobian.
Also added flags to decide which temporaries have to be (re)computed.
2018-04-10 09:45:40 +02:00
Houtan Bastani fb8d9258d0 add pac_model statement 2018-04-04 11:48:59 +02:00
Stéphane Adjemian(Charybdis) dfccecfb11 Fixed bug (x, exogenous variables steady state, is not a Matrix). 2018-03-29 22:23:38 +02:00
Stéphane Adjemian(Charybdis) 46a2272ef9 Added new member in model_ (julia output).
temporaries.static and temporaries.dynamic are 4*1 vectors of
integers, each element is the number of temporary variables used for
to evaluate the residuals, the jacobian matrix, the hessian matrix and
the matrix of third order derivatives.
2018-03-29 14:10:34 +02:00
Stéphane Adjemian(Charybdis) b52ded0eb4 Fixed doc headers for static and dynamic julia modules. 2018-03-29 09:31:25 +00:00
Stéphane Adjemian(Charybdis) 849936d81b Same as bce9b66312 for matlab output. 2018-03-28 19:14:43 +02:00
Stéphane Adjemian(Charybdis) bce9b66312 Added arrays providing the number of temp terms in Julia modules...
... For static and dynamic models.
2018-03-28 17:50:58 +02:00
Houtan Bastani ec215e2a44 separate temporary terms: WIP 2018-03-28 16:41:48 +02:00
Houtan Bastani 7cbd7b6e1e Revert "Added new routine for the dynamic model (only computes the jacobian)."
This reverts commit 84c6bf5daf.
2018-03-28 16:14:15 +02:00
Houtan Bastani 13d408b058 Revert "Added new routine for the static model (only computes the jacobian)."
This reverts commit 7c9c83fba1.
2018-03-28 16:14:15 +02:00
Stéphane Adjemian(Charybdis) c4ae840b20 Added {endo,exo,exo_det,param}_nbr in Julia output (in model_). 2018-03-27 14:47:51 +02:00
Houtan Bastani 493f98fa3a fix typo 2018-03-27 11:01:29 +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 246637e4a9 Revert "Updated .gitignore file."
This reverts commit 5727083865.
2018-03-19 17:02:49 +01:00
Stéphane Adjemian(Charybdis) 5727083865 Updated .gitignore file. 2018-03-13 09:23:35 +01:00
Stéphane Adjemian(Charybdis) deb77be8f1 Fixed bug.
Preprocessor was not returning an error when some of the exogenous
variables were not used in the model.
2018-03-13 09:20:14 +01:00
Stéphane Adjemian(Charybdis) 84c6bf5daf Added new routine for the dynamic model (only computes the jacobian). 2018-03-10 10:20:50 +01:00
Stéphane Adjemian(Charybdis) 7c9c83fba1 Added new routine for the static model (only computes the jacobian). 2018-03-10 10:20:50 +01:00
Houtan Bastani 5d339b69de simplify pac_expectation code 2018-03-07 15:04:07 +01:00
Houtan Bastani 7a4312c48b create build-aux dir 2018-03-07 13:15:17 +01:00
Houtan Bastani 2a2f2799dd fix compilation warnings 2018-03-07 12:58:51 +01:00
Houtan Bastani 1102f0eb1c update version number 2018-03-07 12:37:55 +01:00