Commit Graph

461 Commits (1dd5493c1a4f36c6d38cece54f1514b7cc426a6c)

Author SHA1 Message Date
Houtan Bastani 1dd5493c1a parallel: removed warning and clarified error message 2010-12-17 12:16:27 +01:00
Houtan Bastani c7e5b44801 parallel: SingleCompThread bug fix 2010-12-17 12:03:37 +01:00
Houtan Bastani 7a26fe2ebd extend domain of derivative of x^p to x=0 under certain conditions (see ticket 78) 2010-12-13 17:03:57 +01:00
Sébastien Villemot 8af9e0dd95 Preprocessor: no longer use boost::graph::GraphvizDigraph class, removed in Boost 1.44 (closes #155) 2010-12-13 14:23:04 +01:00
Ferhat Mihoubi 7dc09890fb - Bug correction during the block decomposition: the models' graph was ill oriented before the search of strong components 2010-12-10 15:11:12 +01:00
Ferhat Mihoubi 751c0da2a1 - external functions are compatible with block decomposition and/or bytecode 2010-12-10 12:06:50 +01:00
Michel Juillard d0b7e9e59f added choice of parameter set to shock_decomposition. This corrects a bug when shock_decomposition is requested after Metropolis iterations. 2010-12-08 13:02:59 +01:00
Houtan Bastani d206217fef fixed bug that would force node sharing when two or more expectation operators had the same expression but different information sets 2010-12-08 12:29:47 +01:00
Sébastien Villemot 405ca1365c Preprocessor: fix bug with varexo_det in conjunction with USE_DLL 2010-12-08 11:33:20 +01:00
Sébastien Villemot 818f7df793 Preprocessor: delete remaining dynamic.m file when using USE_DLL 2010-12-08 11:32:13 +01:00
Sébastien Villemot 98168dabd8 MOD files ending with @#endif/@#endfor but no newline now work (closes #73) 2010-12-06 17:59:30 +01:00
Sébastien Villemot 2984f61fe0 Bugfix at order 3 (hopefully was not affecting final results, thanks to Pablo Winant for spotting this):
- in the 3rd derivatives matrix, among symmetric elements, the first one had
the right values but the following ones were set to zero
- moreover, the k-order DLL was trying to add all the symmetric elements in the
folded tensor, instead of only keeping one value among all the symmetric ones
- hopefully, Ondra's tensor library was (silently) refusing to add symmetric
elements after the first (and right) value had been added
- so the final result was correct
2010-12-06 17:00:46 +01:00
Ferhat Mihoubi cf3967d19d - Correction of a bug in the Jacobian Matrix computation for a non block-decomposed model using bytecode 2010-11-25 16:11:22 +01:00
Ferhat Mihoubi 3f6ddd1c3f - Adds the derivatives with respect to deterministic exogenous variables
and corrects the computation of the number of column in the jacobian matrices in a block decomposed model without bytecode
- Identical corrections for models using bytecode without block decomposition
2010-11-25 16:11:12 +01:00
Ferhat Mihoubi 5702815f97 Correction of bugs in check command with block decomposition and
Add the missing dr_block m-file
2010-11-25 16:10:46 +01:00
Sébastien Villemot 33d340dd04 Preprocessor: also perform numeric initializations in stochastic context 2010-11-25 16:07:55 +01:00
Sébastien Villemot eaad0b1263 Preprocessor: various cleanups related to the signed vs non-negative numerical constants issues 2010-11-25 13:45:35 +01:00
Sébastien Villemot 973c795db8 Change the syntax for values of deterministic shocks:
Arbirtrary expressions after the "values" keywords must now be enclosed
within parentheses; consider the following example:
<code>
periods 1:2;
values -1 -2;
</code>

In the previous syntax, this was interpreted by the preprocessor as a shock of
value -1-2 = -3 for periods 1 and 2, which is clearly not the intent of the
user; with the new syntax, this will be rejected (too many values compared to
the number of ranges).

Also note that now commas are no longer required between arbitrary expressions,
since the parentheses are sufficient for separating them.
2010-11-24 18:26:43 +01:00
Sébastien Villemot 0269c5766c Preprocessor: max lead/lags in the model are no longer affected by lead/lags on parameters (closes #153) 2010-11-18 11:21:20 +01:00
Sébastien Villemot acce150795 New "console" option (closes #130) 2010-10-28 11:29:39 +02:00
Houtan Bastani ad73ab0a83 Dynare parallel: preprocessor implementation 2010-10-28 10:54:43 +02:00
Ferhat Mihoubi b781c44e5a Check command is now compatible with block and bytecode options 2010-10-27 15:34:48 +02:00
Ferhat Mihoubi ab311cc0fd - Store the incidence matrix containing reordered equations and variable in block_structure 2010-10-27 15:30:01 +02:00
Ferhat Mihoubi c89682670d - The Jacobian matrix in the block decomposed model without bytecode option is now sparse 2010-10-22 16:20:28 +02:00
Ferhat Mihoubi f7f83d6973 - Correction of several bugs with Octave
- Add wrapper needed to compute the steady-state using bytecode and solve_algo = 0, ..., 4
2010-10-22 10:09:07 +02:00
Sébastien Villemot e9474ae9cc Histval: fixed bug for exogenous introduced in previous commit 2010-10-20 14:56:35 +02:00
Sébastien Villemot 615f2ae322 Histval block:
- 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
2010-10-20 14:47:03 +02:00
Sébastien Villemot 855fdf8c16 Preprocessor: fix possible bug in histval (need to limit search of aux vars to aux vars for lagged vars, otherwise we could have a wrong match with some other kind) 2010-10-20 11:39:09 +02:00
Houtan Bastani a7fc3361ac trend_var, growth_factor, deflator: stationarize a nonstationary model and test 2010-10-18 16:07:42 +02:00
Houtan Bastani 0782dd57e3 add preprocessor simplification rule 2010-10-18 15:51:07 +02:00
Ferhat Mihoubi 810416ebe6 - Extends the algorithms compatible with bytecode to compute the steady-state (ticket #11). The new values for solve_algo are:
* 0: fsolve
   * 1: solve1
   * 2, 4: solve1 + block decomposition
   * 3: csolve
   * 5: LU decomposition with UMFPack (method handling sparse matrix in Matlab)
   * 6: GMRES
   * 7: BiCGStab
   * 8: bytecode own solver (use Gaussian elimination + sparse matrix)

- Bytecode can now evaluate a specific block instead of the overall blocks (new bytecode's option 'Block = block_number')
2010-10-11 19:21:32 +02:00
Sébastien Villemot d973c2ead7 Preprocessor: give more explicit error message when lead or lag is used inside 'planner_objective' 2010-10-11 14:49:23 +02:00
Sébastien Villemot 3218d3c72f Preprocessor: don't create auxiliary variables for expressions appearing only
in unused model local variables
2010-10-11 12:58:38 +02:00
Houtan Bastani 5327f161d4 external_function: add support for use_dll 2010-10-07 18:05:07 +02:00
Houtan Bastani 85564b287c external_function: modified to pass functions as string names as opposed to function handles to reduce number of calls to mexCallMatlab when use_dll option is invoked 2010-10-07 16:49:36 +02:00
Houtan Bastani a57aa4359a replace deprecated Matlab function strvcat with char 2010-09-27 16:11:14 +02:00
Ferhat Mihoubi 83648a6d53 - Correct the simul call without input argument 2010-09-24 11:07:43 +02:00
Sébastien Villemot 376e25ca67 Preprocessor: no longer crashes when some dynamic variables appear only in
unused model local variables (closes #101)
2010-09-23 12:13:30 +02:00
Sébastien Villemot 0e73523f3b Removed all MSVC workarounds, since we can now definitely drop this compiler on
Windows/64-bit platform
2010-09-21 15:06:14 +02:00
Sébastien Villemot 63d0fb3f04 Preprocessor: implement STEADY_STATE operator with "use_dll" and "block"
options (closes #98)
2010-09-20 17:04:38 +02:00
Ferhat Mihoubi 5490f1bb09 RESID command is compatible now with block option and without bytecode option (closes ticket #45) 2010-09-17 16:54:43 +02:00
Ferhat Mihoubi f026137fa9 - Adding the relaxation method for block and/or bytecode options
- Changing the the stack_solve_algo option :
Previous version             New version
1 : Sparse LU                0 : Sparse LU
2 : GMRES                    1 : Relaxation
3 : BiCGStab                 2 : GMRES
4 : Sparse LU & Optimal Path 3 : BiCGStab
5 : bytecode own solver      4 : Sparse LU & Optimal Path
                             5 : bytecode own solver
2010-09-17 12:18:25 +02:00
Ferhat Mihoubi 3e1a2ad450 - Substitutes lead for exogenous and endogenous variables in the deterministic case: direct substitution of the variables even in non-linear expressions 2010-09-17 12:17:09 +02:00
Sébastien Villemot ffd2cb24aa Preprocessor: make option "no_static" work even when "bytecode" is not present 2010-09-17 12:17:05 +02:00
Ferhat Mihoubi 2da9d5adda Bug correction in the deterministic simulation: to solve a purely backward or forward looking block requires contemporaneous derivatives only. 2010-09-17 12:17:00 +02:00
Ferhat Mihoubi f68e4fd455 - compute the jacobian matrix for exogenous, det_exogenous and previous blocks endogenous
- preprocessor provides informations about the dynamic structure of each block
- extends the algorithms available with bytecode: stack_solve_algo = 1, 2, 3 and 4 is compatible the bytecode. Speed and memory requirement are improved with stack_solve_algo = 1 or 4 for large scale models.
- bytecode can be used to evaluate a model
2010-09-17 12:16:47 +02:00
Sébastien Villemot 2c10d03368 Preprocessor: rename "NodeID" in "expr_t" 2010-09-17 12:13:26 +02:00
Sébastien Villemot c8fdd5d9d1 Preprocessor: uniformize typedef names (with a "_t" suffix) 2010-09-16 19:00:48 +02:00
Sébastien Villemot c3c8fa5cca Preprocessor: clean prototypes of ModelTree methods (removed arguments
redundant with data members, added const keywords, use passing-by-reference)
2010-09-16 17:51:50 +02:00
Sébastien Villemot ae3e741cb8 Preprocessor:
- remove useless output type oMatlabDynamicModelSparseLocalTemporaryTerms
(indistinguishable from oMatlabDynamicModelSparseLocal)
- fix bug in output type of sparse static model
2010-09-16 16:57:35 +02:00