Houtan Bastani
28ffa9c56f
Merge branch 'rmExtraExo'
2015-05-28 12:33:56 +02:00
Houtan Bastani
025e7a13c3
preprocessor: add new field orig_expr for expectation aux vars, closes #773
2015-05-26 15:47:56 +02:00
Houtan Bastani
e389ab90bf
Merge branch 'master' into rmExtraExo
2015-05-18 17:16:55 +02:00
Houtan Bastani
2ab8e2a122
preprocessor: external functions bug fix: fixes the case where an external function is contained in a local variable that’s used in an equation with leads/lags that require auxiliary equations. Closes #916
2015-05-12 16:39:10 +02:00
Houtan Bastani
662c4e64ee
preprocessor: organize external function code
2015-05-11 17:09:29 +02:00
Houtan Bastani
6c937b1554
preprocessor: remove extraneous varexo, update model and statements, #841
2015-03-06 16:44:17 +01:00
Houtan Bastani
dcabcb6b01
preprocessor: new command write_latex_original_model. closes #657
2015-02-16 08:31:30 +01:00
Houtan Bastani
707702a447
Revert "preprocessor: replace oo_.exo_steady_state with steady_state_x, #825"
...
This reverts commit 2bb97a90d6
.
2015-01-14 15:14:57 +01:00
Houtan Bastani
2bb97a90d6
preprocessor: replace oo_.exo_steady_state with steady_state_x, #825
2015-01-14 15:13:48 +01:00
Sébastien Villemot
bdfe4f4249
Fix STEADY_STATE operator for model local variables.
...
Thanks to Tom Holden for spotting the bug.
2014-08-12 18:53:55 +02:00
Sébastien Villemot
2495359919
Fix crash when the model contains 1st or 2nd ext fcn deriv nodes.
...
In the case where the external function computes itself its derivatives, the
TEF terms were not always created before being used, hence leading to a
preprocessor crash. This problem could only happen with ramsey_policy, because
otherwise the model does not contain derivatives of external functions.
2014-03-13 12:27:13 +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
Sébastien Villemot
da615507f4
Cosmetic renaming for consistency between DataTree method names.
2014-03-11 18:56:48 +01:00
Sébastien Villemot
f55fda0938
Implement cloneDynamic() for {First,Second}DerivExternalFunction.
...
Since the method was not implement, the method of the parent class was used.
This was leading to wrong results in the context of Ramsey Policy (basically
derivative operators on external functions were dropped from FOCs).
2014-03-11 18:56:48 +01:00
Sébastien Villemot
1f6fd55594
Remove spurious test.
2014-03-11 18:56:48 +01:00
Sébastien Villemot
1faae7bf4c
Fix output of external functions (and their derivatives) in LaTeX.
2014-03-11 15:31:08 +01:00
Sébastien Villemot
0dfd7629b1
Fix bug in external functions introduced in 711a4f62
.
2014-02-25 16:45:55 +01:00
Sébastien Villemot
711a4f62a2
Small improvements to external functions code.
2014-02-24 17:27:34 +01:00
Michel Juillard
49b34d4c94
write C++ version of model functions without temporary terms
2014-02-24 13:33:48 +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
Sébastien Villemot
e4526944a9
Remove select1st (GNU extension), replace it by a call to boost::bind
2013-11-05 18:13:29 +01: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
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
6737077770
Improve error message for 3rd derivatives of external functions
2013-01-15 11:39:04 +01:00
Michel Juillard
32b68b713b
fixed bug in computation of derivative of erf() function
2012-12-07 21:46:50 +01:00
Sébastien Villemot
1f9cea669a
Update copyright notices
2012-06-08 18:22:34 +02:00
Michel Juillard
539bf0ca69
finishing implementation of optional transformation of log and non
...
integer power arguments to insure that they are positive
2012-05-26 20:53:48 +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
Sébastien Villemot
f36f76760a
Fix bug where the nth derivative of 0^n evaluated to 0 instead of n!
...
(complement to commit cd0bc28e
)
2012-05-21 18:34:10 +02:00
Houtan Bastani
c1e4155001
preprocessor: add subsamples statement
2011-12-21 12:21:30 +01:00
Houtan Bastani
ce9fe30a7a
Remove unused expectation syntax
2011-10-26 14:30:47 +02:00
Michel Juillard
ee7078e56c
factoring out steady-state computations; steady_state_model now
...
generates <fname>_steadystate2.m returning parameters as well in case
they have been modified by the user. Added several test cases.
2011-10-12 21:51:14 +02:00
Ferhat Mihoubi
b932615ff4
updates normalizeEquation() to deal with abs, sign (Ticket #200 ) and trigonometric functions.
2011-10-12 15:03:05 +02:00
Houtan Bastani
5f3290f7a4
bugfix: sign operator for compiled static file
2011-08-30 16:12:00 +02:00
Houtan Bastani
7357a23114
output mex file for static model ( closes #183 )
2011-08-19 16:57:27 +02:00
Houtan Bastani
0da1aab3a8
preprocessor: add absolute value and signum
2011-08-16 14:52:35 +02:00
Houtan Bastani
64ba641add
bug fix: add parenthesis around STEADY_STATE output in case it contains an expression
2011-08-08 18:49:18 +02:00
Ferhat Mihoubi
e38618127b
- correction of the bug in normalization process for expressions of the form a^x (Ticket #186 )
...
- If a case is not handled, the equation is supposed to be impossible to normalize.
- comments added to describe the normalization process
2011-06-10 12:41:21 +02:00
Houtan Bastani
69f3895938
cosmetic change
2011-05-11 11:58:33 +02:00
Houtan Bastani
26d5534320
fixed typo
2011-04-12 16:42:55 +02:00
Houtan Bastani
a966eeb99f
bug fix: writeOutput calls from within writeOutput were losing tef_terms info
2011-04-12 16:42:55 +02:00
Houtan Bastani
161647922c
Implement explicit writing of first order conditions of Ramsey problem (ticket #5 )
2011-03-24 17:17:15 +01:00
Houtan Bastani
c4dfb41f5c
bug fix: in cloning binary op node, were losing the order of the power deriv
2011-03-23 11:36:46 +01:00
Michel Juillard
55bb27c5f6
new correction for steady_state operator bug. Steady_state vector is passed as argument to *_dynamic model function. As a result, bytecode is currently broken.
2011-03-13 17:06:57 +01:00