Commit Graph

67 Commits (master)

Author SHA1 Message Date
Willi Mutschler 1b3c1c33ce
Update Dockerfile and instructions for new meson build systems
[skip ci]
This creates the Docker containers for 5.5 and 6.0
2024-02-14 16:34:37 +01:00
Sébastien Villemot b2f603091a
MATLAB Online package: update build script for meson
Also, use the local git checkout instead of downloading a source tarball from
the website.
2024-01-19 20:40:56 +01:00
Sébastien Villemot 368c93214e
Build system: make xvfb-run optional for running the Octave testsuite
xvfb-run is a Debian-specific program.

Closes: #1892
2023-12-21 13:46:34 +01:00
Sébastien Villemot 42e2f77e4a
Emacs mode: add IRF matching keywords 2023-12-21 11:20:27 +01:00
Sébastien Villemot bc69f6a102
Initial scripts for packaging Dynare for MATLAB Online
[skip ci]
2023-12-20 17:24:19 +01:00
Sébastien Villemot 66bc9fd9c2
Rename “dynare_sensitivity” command to “sensitivity”
The old name is still accepted, but will trigger a deprecation warning.
2023-12-14 18:38:23 +01:00
Sébastien Villemot cc15281b1f
Emacs mode: add missing keywords
– “bvar_irf” added to statements
– “target”, “auxname_target_nonstationary”, “component”, “growth”, “auxname”,
  “kind” added to statements-like
– “filter_initial_state” added to blocks
2023-12-12 10:54:03 +01:00
Sébastien Villemot a31c76403d
Windows and macOS packages: move meson native/cross files to OS-specific directory 2023-12-08 14:34:14 +01:00
Sébastien Villemot 1f5f668313
Move docker folder below the scripts folder
[skip ci]
2023-12-07 16:02:33 +01:00
Sébastien Villemot ec7a4ba84f
Testsuite: compatibility fix for MATLAB R2018b
MATLAB R2018b does not have a true batch mode, and will not exit if there is no
final quit statement in a script. Hence ensure there is one when testing a .m
file.

By the way, remove a batch argument for Windows that is obviously incorrect.
2023-11-22 16:53:25 +01:00
Sébastien Villemot 627bbb0a91
Add clang-format config file for formatting C++ code
As a consequence, drop old uncrustify config file.
2023-11-21 12:47:21 +01:00
Sébastien Villemot 4f74ceb937
Testsuite: fix issue with Octave in a Wayland desktop session
If under a Wayland desktop session, some graphics would be displayed on the
screen, despite Octave being run in the virtual X11 frame buffer (xvfb).
Moreover, some unexplained random crashes would occur.

This commit ensures that Wayland is never used when running the testsuite.

By the way, add a command to explain why xvfb-run is needed and the
--no-window-system option cannot be run (see commit
96346b77e5).
2023-10-13 14:39:55 -04:00
Willi Mutschler bb3aa0a206
macOS installer: cosmetical changes 2023-10-11 17:34:43 +02:00
Willi Mutschler 158abbd0fd
macOS installer: create both arm64 and x86_64 packages 2023-10-11 17:34:43 +02:00
Willi Mutschler 0a3f4220df
macOS: use ld_classic as workaround for linker issue with XCode 15
XCode 15 (on Ventura and Sonoma) has a linker issue, see https://github.com/mesonbuild/meson/issues/12282, workaround is to use ld_classic
2023-10-11 00:29:55 +02:00
Sébastien Villemot 64f47723bf
Testsuite: fix batch arguments for old MATLAB under Linux 2023-09-26 16:55:05 +02:00
Sébastien Villemot 7eb1959f66
Provisions for MATLAB R2023b 2023-09-22 10:49:27 +02:00
Sébastien Villemot e549bbba7a
Meson build system: testsuite now fully implemented
By the way, switch the CI to use the Meson testsuite, because some test files
have been modified and no longer work with the old build system.
2023-09-20 13:55:55 +02:00
Sébastien Villemot a252daee51
Windows package: use the Meson build system
By the way, simplify the dependency build system by removing unused SLICOT
builds.
2023-09-19 17:14:43 +02:00
Sébastien Villemot e335fed27b
macOS package: use the Meson build system
By the way, simplify the dependency build system by removing 32-bit
SLICOT (was only used for the Octave package), and the symlinks for MatIO and
GSL (no longer needed with Meson).
2023-09-18 16:57:32 +02:00
Sébastien Villemot db677f1bab
Meson build system: add documentation 2023-09-18 10:41:17 +02:00
Sébastien Villemot 8a79899189
Meson build system: implement most of the testsuite
The tests that are individually listed in {M,O}_TRS_FILES of tests/Makefile.am
are still missing.
2023-09-16 14:25:38 +02:00
Sébastien Villemot 16f921ed62
Add Meson build system
Mostly working. The testsuite remains to be done.

In particular, windows/deps/mkoctfile64 is modified to print its version number
on stdout instead of stderr. This is what the standard mkoctfile does, and it
allows easier capture of the output from Meson.
2023-09-04 18:04:00 +02:00
Sébastien Villemot b669d5c0dc
Emacs mode: also autoload the mode for files with .dyn extension
[skip ci]
2023-03-03 16:00:16 +01:00
Sébastien Villemot 8200c356a7
Emacs mode: fix indentation in blocks which are given options
E.g. indentation was incorrect following “model(block);”.

[skip ci]
2023-01-17 18:20:11 +01:00
Sébastien Villemot fcdd810eb4
Emacs mode: “periods” and “Sigma_e” commands removed 2023-01-17 16:17:49 +01:00
Sébastien Villemot 7d3afd3150
Update uncrustify.cfg for newer version
The configuration is still unsatisfactory for quite a few items.

[skip ci]
2022-07-13 18:55:29 +02:00
Sébastien Villemot a600336c92
New “add” and “multiply” keywords in “shocks(learnt_in=…)” block 2022-04-26 15:22:15 +02:00
Sébastien Villemot 10af04c6d8
Use Unicode copyright symbol (in UTF-8 encoding) in all source files
It is now supported by the MATLAB editor (as of R2022a).

The old ASCII notation is left in some files that we copy as-is from other
sources (e.g. in the contrib/ and m4/ subdirectories).

The particles submodule is not updated at this point, because it is in an
inconsistent state.

[skip ci]
2022-04-13 14:54:25 +02:00
Sébastien Villemot 7f44a28209
Emacs mode: add missing “resid” keyword 2022-03-01 11:59:17 +01:00
Stéphane Adjemian (Ryûk) b297353b06
PAC decomposition between stationary and non-stationary components.
The taget in PAC equation can be decomposed into an arbitrary number of components (variables
in the VAR auxiliary model).

TODO Iterative OLS estimation (which is not the preferred estimation routine).
TODO Decomposition in the routine evaluating the forecasts for each component.
2021-12-17 12:17:13 +01:00
Sébastien Villemot 21a8a5794a
Various new model editing features
– multiple “model” and “estimated_params” block are supported
– new “model_options” statement to set model options in a global fashion
– new “model_remove” command to remove equations
– new “model_replace” block to replace equations
– new “var_remove” command to remove variables (or parameters)
– new “estimated_params_remove” block to remove estimated parameters
2021-12-15 17:33:01 +01:00
Sébastien Villemot c181bae3fd
Emacs mode: add compilation_setup statement 2021-12-15 10:26:37 +01:00
Sébastien Villemot eb6af4aff3
Emacs mode: add complementary error function and hyperbolic functions
[skip ci]
2021-12-11 15:58:14 +01:00
Marco Ratto 02072dde39
Add Occbin routines
Syntax is not yet finalized (see preprocessor#68).
Documentation still to be done.

Ref. #569
2021-07-16 17:20:11 +02:00
Sébastien Villemot abd64c256e
New perfect_foresight_with_expectation_errors_{setup,solver} commands
These command solve the problem where agents think they know perfectly the
future (they behave as in perfect foresight), but make expectation errors.
Hence they can potentially be surprised in every period, and their expectations
about the future (incl. the final steady state) may change.

Currently the sequence of information sets needs to be passed through a CSV
file. Another interface may be added in the future.

The algorithm uses a sequence of (true) perfect foresight simulations (not
necessarily as many as there are periods, because if the information set does
not change between two periods, there is no need to do a new computation).

There are two possibilities for guess values:
— the default is to use the initial steady state for the simulation using the
  first-period information set; then use previously simulated values as guess
  values
— alternatively, with the terminal_steady_state_as_guess_value option, use the
  terminal steady state as guess value for all future periods (this is actually
  what the “true” perfect foresight solver does by default)
2021-07-09 18:16:46 +02:00
Sébastien Villemot 766fff88f6
Use secure URL for link to GNU licenses 2021-06-09 17:35:05 +02:00
Marcoo Ratto 1645f38269
Implement heteroskedastic filter and smoother 2021-05-26 18:45:16 +02:00
Sébastien Villemot 4097671218
Emacs mode: add font lock for new “deterministic_trends” block 2021-04-30 11:51:51 +02:00
Sébastien Villemot 1fce40ddeb
Preprocessor: remove the unfinished decomposition in linear and nonlinear blocks
Also remove the interface to det_cond_forecast.

Closes: !1626
2021-01-25 18:19:09 +01:00
Sébastien Villemot a6747827bf
Preprocessor update
— Ensure that all statements produce an output in JSON mode
— Remove obsolete “restrictions” block and “var_estimation” statement
2020-11-26 16:34:10 +01:00
Sébastien Villemot 470d8ef079
Emacs mode: update for method of moments routines
[skip ci]
2020-07-28 18:10:46 +02:00
Sébastien Villemot 31c19272fb
Emacs mode: add back final line for ELPA compatibility 2020-02-25 14:22:00 +01:00
Sébastien Villemot 3a0327d379
Emacs mode: fix byte compilation
The Emacs lisp source file was failing byte-compilation, because the
“dynare-blocks” variable was used within an “eval-when-compile” block, while
its definition was not in such a block.
2020-02-25 12:41:04 +01:00
Stéphane Adjemian (Charybdis) 3c2a1851b5
Fixed typo. 2020-01-17 18:12:41 +01:00
Sébastien Villemot db7390b8ee
Improve indentation scripts
— now accept several input arguments
— the script themselves can now be called with an absolute pathname
— clearer output
2019-12-18 16:24:36 +01:00
Sébastien Villemot a50845d836
Upgrade uncrustify configuration 2019-12-18 16:22:41 +01:00
Sébastien Villemot 6ba10b88f2
Preprocessor: various provisions for improvements to shock decomposition
Accordingly update the MATLAB routines, the testsuite, and the manual.

In particular, “squeeze_shock_decomp” has been renamed to
“squeeze_shock_decomposition” for consistency with other commands.

Ref. #1687, !1655
2019-12-18 11:56:57 +01:00
Sébastien Villemot 5cb9886a5e
Emacs mode: font locking for now “evaluate_planner_objective” 2019-12-13 18:22:12 +01:00
Sébastien Villemot c646736b9b
Emacs mode: update for recent additions to the language 2019-12-06 15:24:48 +01:00