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()
- fail when user tries to initialize a variable at a period which is not in the model, and make the error message explicit
- correctly handle exogenous variables in stochastic mode, which are also substituted with an aux var
- added test files
* in DataTree, new functions for testing if some opcode (unary, binary or trinary) is used somewhere in the tree
* removed DataTree::containsSteadyState(), rather use a call to the new utility function
* fixed a bug with EXPECTATION operator: now handle model local variables
* substitute EXPECTATION operator even in deterministic models (for avoiding crashes, even if use of this operator doesn't make sense there)
* forbid the use of EXPECTATION and STEADY_STEATE outside model block
* minor implementation changes in EXPECTATION and STEADY_STATE operators
reference manual:
* documented EXPECTATION and STEADY_STATE operators
* added a note in write_latex_{static,dynamic}_model commands documentation about auxiliary variables and other model transformations
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3145 ac1d8469-bf42-47a9-8791-bf33cf982152
* In stochastic mode, now transforms the model by removing leads and lags greater or equal to 2 (creating auxiliary variables and equations in the process)
* Information about these variables is in structure M_.aux_vars
* Automatically add the necessary initialization for auxiliary vars after the initval block or load_params_and_steady_state
git-svn-id: https://www.dynare.org/svn/dynare/trunk@3002 ac1d8469-bf42-47a9-8791-bf33cf982152