Normann Rion
3d27672c58
kth-order approximation of conditional welfare
...
Partially addresses issue #1680 :
- unconditional welfare resorts to dynare++ simulation tools, which shall be updated very soon
TO DO:
- implement a function computing kth-order approximation of simulated moments of y
2021-06-15 15:04:31 +02:00
Sébastien Villemot
766fff88f6
Use secure URL for link to GNU licenses
2021-06-09 17:35:05 +02:00
Sébastien Villemot
233b242a29
Dynare++: (really) avoid locale-specific strings in the journal under Windows
...
Closes : #1751
2020-11-20 15:36:07 +01:00
Sébastien Villemot
3dc9087f55
Dynare++: update copyright years
2020-11-18 17:31:17 +01:00
Sébastien Villemot
b1b8dc90a3
Dynare++: avoid locale-specific strings when printing date/time in the journal
...
Closes : #1751
2020-11-18 17:30:38 +01:00
Sébastien Villemot
ce5aa33a33
k-order DLL: no longer write journal file on-disk, unless options_.debug = true
...
Closes : #1735
2020-10-15 17:19:30 +02:00
Sébastien Villemot
22ab507c6c
Global reindentation of Dynare++
2019-12-20 15:43:17 +01:00
Sébastien Villemot
996bdd6c64
New local_state_space_iteration_k MEX, for nonlinear filters at k-order
...
It applies the approximated policy function to a set of particles, using
Dynare++ routines.
There is support for parallelization, using Dynare++ multithreading
model (itself based on C++11 threads; we don’t use OpenMP because it is
incompatible with MKL). For the time being, default to a single thread. This
should be later refined through empirical testing.
2019-12-20 11:31:56 +01:00
Sébastien Villemot
9d99dafdd7
Dynare++: ensure that exception gives meaningful message if BK conditions not satisfied
...
Previously, if Blanchard-Kahn conditions were not satisfied, there was the
possibility an exception about NaN/Inf values in gy/gu was raised *before* the
exception about BK itself, leading to a confusing message. This commits moves
the test for BK before the test for NaN/Inf in gy/gu.
Closes : #674
2019-11-19 15:19:34 +01:00
Sébastien Villemot
6ff7d4c56c
C++17: use structured bindings instead of std::tie
2019-09-11 16:06:35 +02:00
Sébastien Villemot
7cc4aad8b6
Dynare++: update copyright information
...
— Ondra Kamenik has agreed to the relicensing of utils and parser modules to
GPL
— add DynareTeam’s copyright, since we have made a lot of modifications
— add proper copyright notices in all files
2019-06-19 15:02:41 +02:00
Sébastien Villemot
09b8397f44
Dynare++: improvements to comments (last batch!)
...
[skip ci]
2019-06-11 16:58:32 +02:00
Sébastien Villemot
7599bc1069
Dynare++: improve comments
...
[skip ci]
2019-06-05 18:17:43 +02:00
Sébastien Villemot
72ad793d85
Dynare++: improvements to comments
...
[skip ci]
2019-05-22 17:25:58 +02:00
Sébastien Villemot
c7cd325e4e
Dynare++: improvements to comments
2019-05-10 18:41:38 +02:00
Sébastien Villemot
b9f92b69be
Dynare++: replace some uses of std::vector by a lighter std::unique_ptr
2019-04-30 12:58:21 +02:00
Sébastien Villemot
26778ea666
Dynare++: drop unmaintained R stuff
2019-04-26 14:44:36 +02:00
Sébastien Villemot
0b9b69f638
Dynare++: various simplifications
2019-04-24 17:47:15 +02:00
Sébastien Villemot
9a869560e6
Dynare++ main: various modernizations
2019-04-23 19:14:51 +02:00
Sébastien Villemot
f5e2bfc30a
Ask GCC to warn about C-style casts (-Wold-style-cast)
...
Adapt the code accordingly.
2019-04-23 13:03:20 +02:00
Sébastien Villemot
c9bdc2c885
Dynare++: simplify methods for getting number of columns and rows of a matrix
...
Previously there were GeneralMatrix::numRows() and TwoDMatrix::nrows() for doing
the same thing (and same for columns and Const versions).
Merge these two into GeneralMatrix::nrows().
2019-04-16 12:44:02 +02:00
Sébastien Villemot
57848930c6
Use Unicode copyright symbol (in UTF-8 encoding)
...
Do not use it in MATLAB source files, since unfortunately the MATLAB editor
does not support UTF-8.
2019-04-16 11:42:16 +02:00
Sébastien Villemot
fe9a691969
Dynare++: simplification of platform-specific routines for available memory
2019-04-01 18:42:35 +02:00
Sébastien Villemot
a6ff8495cd
Dynare++: use portable C++11 primitive for detecting the number of logical processors
2019-04-01 18:42:35 +02:00
Houtan Bastani
51d7508c7f
dynare++: _SC_AVPHYS_PAGES is not defined on macOS
2019-04-01 15:47:35 +02:00
Sébastien Villemot
418cfa558b
Dynare++: fix compilation failure under macOS
...
We still need to properly define available memory.
[skip ci]
2019-04-01 11:22:04 +02:00
Sébastien Villemot
149fde1e74
Dynare++: detect Windows by testing for _WIN32 rather than __MINGW32__
2019-04-01 11:16:04 +02:00
Sébastien Villemot
44b40bbf09
Dynare++: improvements to comments
...
[skip ci]
2019-03-28 18:59:34 +01:00
Sébastien Villemot
5958848145
Dynare++: improve comments using Unicode (first batch)
...
[skip ci]
2019-03-27 19:22:51 +01:00
Sébastien Villemot
4c11e9e9ec
Dynare++ kord and MEX: various modernizations and improvements
2019-03-07 19:46:15 +01:00
Sébastien Villemot
598f0193d5
Dynare++ kord library: make test failures fatal
...
Required an increase for the error tolerance of SW-like models tests.
By the way, decrease the tolerance for the small model.
2019-03-07 11:34:30 +01:00
Sébastien Villemot
a7de121b01
Dynare++ kord library: some equations were incorrectly omitted from residual error checking
2019-03-07 10:39:33 +01:00
Sébastien Villemot
14f85cf448
Dynare++ kord library: various modernizations and improvements
...
Note that I removed several #define whose purpose was to avoid typing "typename
ctraits<t>::…". Even though this tends to complicates the code, this is
probably safer, especially since the #define was capturing a free variable (t).
2019-03-06 18:43:04 +01:00
Sébastien Villemot
6d99b6d120
Dynare++ kord library: various modernizations and simplifications
2019-03-05 18:35:35 +01:00
Sébastien Villemot
7fd95a6b72
Dynare++ kord library: use modern pseudo-random number generators
2019-03-05 12:29:17 +01:00
Sébastien Villemot
81d9b08050
Dynare++ tensor library: various modernizations/improvements
2019-02-27 19:07:01 +01:00
Sébastien Villemot
07ef21fdc7
Dynare++: more explicit interface for unfolding an IntSequence wrt a Symmetry
2019-02-27 15:29:06 +01:00
Sébastien Villemot
a062ea2b69
Dynare++ tensor library: various modernizations
2019-02-26 18:59:45 +01:00
Sébastien Villemot
1639f75a3c
Dynare++: improve interface to not-in-place matrix multiplications
2019-02-26 18:59:45 +01:00
Sébastien Villemot
e3967bda9a
Dynare++: improve interface to matrix transpose
2019-02-26 18:59:45 +01:00
Sébastien Villemot
58bdee12c3
Dynare++ tensor library: refactor static stuff
...
- encapsulate it more clearly
- make it thread safe
- put back the Pascal triangle initialization stuff removed in 9512a32ad0
2019-02-21 19:00:50 +01:00
Sébastien Villemot
b72857d4ce
Dynare++: the get() method of tensor containers now return a reference
...
Previously it was returning a pointer, which is non-standard for containers,
and was leading to ugly dereferencing everywhere.
2019-02-20 18:06:58 +01:00
Sébastien Villemot
ff57451474
Dynare++: simplifications made possible by new init-list constructor of IntSequence
2019-02-20 17:04:37 +01:00
Sébastien Villemot
b5793ddd22
Dynare++: use std::unique_ptr for storage inside tensor containers
2019-02-20 17:04:34 +01:00
Sébastien Villemot
9512a32ad0
Dynare++: remove duplicate implementation of the Pascal triangle
...
As a consequence, the singleton implementation has to be made thread-safe.
Also implement the singleton pattern using a namespace, rather than a static
instance.
2019-02-19 16:46:04 +01:00
Sébastien Villemot
5fcf563c61
Dynare++: factorize and optimize code for integer exponentiation
...
There were two implementations of integer exponentiation. Merge them into a new
file under utils/cc/.
By the way, optimize it using exponentiation by squaring.
2019-02-19 15:50:07 +01:00
Sébastien Villemot
e91f48f2ce
Dynare++: modernize kord tests
2019-02-14 15:47:58 +01:00
Sébastien Villemot
db6df6c73c
Dynare++ kord test: use modern pseudo-random number generator
2019-02-14 11:45:15 +01:00
Sébastien Villemot
49f85ceaca
Dynare++: rollback the std::shared_ptr change in Vector and ConstVector
...
The performance cost is too high to warrant the change.
2019-02-14 11:29:18 +01:00
Sébastien Villemot
8dbc08e2c2
Dynare++: display real time elapsed in kord tests
...
Previously, only CPU time was displayed, which is misleading with
multithreading.
2019-02-13 18:31:03 +01:00