Sébastien Villemot
6a58316a3e
MEX files: disable clang-tidy false positive for call to std::strcpy
2023-12-06 22:24:57 +01:00
Sébastien Villemot
91f2dcdfe1
MEX files: use “auto” when initializing with a template cast to avoid duplicating the type name
...
Automatically detected by clang-tidy with modernize-use-auto check.
2023-12-06 22:24:56 +01:00
Sébastien Villemot
de476ad5ac
MEX files: use a braced initializer list instead of repeating the return type
...
Automatically detected by clang-tidy with modernize-return-braced-init-list
check.
2023-12-06 22:24:55 +01:00
Sébastien Villemot
123f909b67
MEX files: use pass-by-value + std::move when possible in constructors
...
Automatically detected by clang-tidy with modernize-pass-by-value check.
2023-12-06 22:24:55 +01:00
Sébastien Villemot
fd9a89ab38
MEX files: use default member initialization when possible
...
Automatically detected by clang-tidy with modernize-use-default-member-init
check.
2023-12-06 22:24:55 +01:00
Sébastien Villemot
15b6e6e6b3
MEX files: no longer use “virtual” keyword when overriding a method
...
Automatically detected by clang-tidy with modernize-use-override check.
2023-12-06 22:24:55 +01:00
Sébastien Villemot
9d98811cfc
MEX files: use transparent functor for std::multiplies
...
Automatically detected by clang-tidy using modernize-use-transparent-functors
check.
2023-12-06 22:24:55 +01:00
Sébastien Villemot
8953007440
MEX files: remove unused variables or values
...
Automatically detected by clang-tidy using
clang-diagnostic-unused-but-set-variable, clang-analyzer-deadcode.DeadStores
and clang-diagnostic-unused-const-variable checks.
2023-12-06 22:24:55 +01:00
Sébastien Villemot
d82eecfd39
C++11 modernization: use std::array and std::vector instead of C arrays
...
Automatically detected by clang-tidy using modernize-avoid-c-arrays check.
2023-12-06 22:24:52 +01:00
Sébastien Villemot
3df4856259
Merge branch 'raftery_lewis_bug' of git.dynare.org:JohannesPfeifer/dynare
...
Ref. !2214
2023-12-05 18:53:10 +01:00
Sébastien Villemot
11c1f6175e
Add [[nodiscard]] attribute to various functions
...
Automatically detected using clang-tidy with modernize-use-nodiscard check.
2023-12-05 15:44:23 +01:00
Sébastien Villemot
7864370bfb
perfect_foresight_problem MEX: fix inclusion of dynmex.h
...
That header is needed from DynamicModelCaller.hh.
Issue detected by clang-tidy.
2023-12-04 18:21:18 +01:00
Sébastien Villemot
911437378c
Remove unused and unmaintained unit test for k-order
2023-12-04 18:21:18 +01:00
Sébastien Villemot
6f38dcd1d5
bytecode MEX: fix logical test
...
The test “solve_algo >= 6 || solve_algo <= 8” was always true.
Issue detected by clang-tidy using the
clang-diagnostic-tautological-overlap-compare check.
2023-12-04 18:21:13 +01:00
Sébastien Villemot
bc6840ff6f
MEX libkorder: make destructor of SparseTensor class virtual
...
That class is a base class, so it must have a virtual destructor to avoid
memory leaks.
Issue detected by clang-tidy with
clang-diagnostic-delete-non-abstract-non-virtual-dtor check.
2023-12-04 18:20:43 +01:00
Sébastien Villemot
aeec4494b0
MEX libkorder: fix use of moved-from object
...
Detected by clang-tidy using clang-analyzer-cplusplus.Move check.
2023-12-04 18:20:43 +01:00
Sébastien Villemot
857e5b00f5
C++ modernization: pass by value and use std::move when relevant
...
Automatically detected and fixed using clang-tidy with modernize-pass-by-value
check.
2023-12-04 18:20:43 +01:00
Sébastien Villemot
bd7703d160
C++ modernization: use a braced initializer list instead when relevant
...
Automatically detected and fixed using clang-tidy with
modernize-return-braced-init-list check.
2023-12-04 18:20:43 +01:00
Sébastien Villemot
a5445c52be
C++ modernization: more uses of auto keyword
...
Automatically detected and fixed using clang-tidy with modernize-use-auto
check.
2023-12-04 18:20:43 +01:00
Sébastien Villemot
403f20a7f3
C++ modernization: add [[nodiscard]] attribute to various functions
...
Automatically detected and fixed using clang-tidy with modernize-use-nodiscard
check.
2023-12-04 18:20:42 +01:00
Johannes Pfeifer
53f12e81fa
Raftery/Lewis: fix case with only one parameter
...
Dimension for max needs to be specified
2023-12-04 16:25:00 +01:00
Sébastien Villemot
bea87aafad
Manual: minor formatting improvements
...
[skip ci]
2023-12-04 16:22:24 +01:00
Stéphane Adjemian (Ryûk)
edaf938582
Add --log option to dcontrib command.
2023-11-30 21:55:35 +01:00
Stéphane Adjemian (Ryûk)
dadcd9a2bf
Dynare does not ship jsonlab anymore.
...
See 1d5a442fe5
.
2023-11-30 16:52:02 +01:00
Sébastien Villemot
c6a7801ba8
clang-format configuration: set “PackConstructorInitializers: NextLine”
2023-11-30 14:37:05 +01:00
Sébastien Villemot
7edf01a2a9
Manual: cosmetic change
...
[skip ci]
2023-11-29 21:13:51 +01:00
Sébastien Villemot
cb56dcc569
README.md: under Octave, the statistics package is not optional
...
[skip ci]
2023-11-29 21:13:48 +01:00
Sébastien Villemot
f0420fa219
CI: add job that checks formatting with clang-format
2023-11-29 19:02:41 +01:00
Sébastien Villemot
ed332e3ba1
MEX files: reformat C++ source code using clang-format 15
2023-11-29 19:00:51 +01:00
Sébastien Villemot
ca16f7f848
clang-format configuration: never collapse short functions on a single line
2023-11-29 18:19:31 +01:00
Sébastien Villemot
847f940f78
clang-format configuration: remove reference to a specific clang-format version
2023-11-29 13:12:54 +01:00
Sébastien Villemot
54e72a4d35
Emacs default settings for editing C and C++: indent at 100 columns
...
For consistency with the clang-format settings.
[skip ci]
2023-11-28 18:10:38 +01:00
Sébastien Villemot
c3d91d5ce8
Fix marginal linearization in the context of perfect_foresight_with_expectation_errors_solver with homotopy
...
If a solution corresponding to 100% of the shock can’t be found in the first
informational period, marginal linearization will be performed to extrapolate a
solution.
However, in subsequent informational periods, this extrapolated solution cannot
be used for the initial conditions of endogenous variables, because the initial
conditions are not a true solution of the nonlinear model. For those subsequent
informational periods, the correct approach is to compute the two solutions
needed for marginal linearization using as initial conditions the values
obtained in the same two solutions for the previous informational
periods (stored as oo_.deterministic_simulation.{sim1,sim2}).
2023-11-28 16:26:49 +01:00
Sébastien Villemot
c6c6f4f549
perfect_foresight_solver + homotopy + (marginal) linearization: store intermediate simulations
...
First simulation before doing extrapolation is stored in several fields of
oo_.deterministic_simulation.sim1.
For marginal linearization, the second simulation used to compute the marginal
contribution is stored in oo_.deterministic_simulation.sim2.
2023-11-28 12:29:34 +01:00
Sébastien Villemot
b0197da05f
Manual: fix code block formatting
...
[skip ci]
2023-11-28 12:28:43 +01:00
Sébastien Villemot
ccff7d3560
Merge branch 'tex_identification' into 'master'
...
Fix LaTeX Output in identification command for advanced option
See merge request Dynare/dynare!2209
2023-11-27 15:13:19 +00:00
Johannes Pfeifer
e718402357
mode_check.m: fix LaTeX output on Windows by using slash
2023-11-27 14:19:13 +01:00
Johannes Pfeifer
59c9f70a7d
identification: fix latex output
2023-11-27 14:18:58 +01:00
Sébastien Villemot
6ccc7fd69e
Testsuite: switch back to mode_compute=4 in lyapunov/fs2000_lyap.mod
...
This prevents an infinite (or at least very long) loop under Octave on karaba.
2023-11-24 11:49:28 +01:00
Sébastien Villemot
b220be6d3e
Merge branch 'mcmc_diag' of git.dynare.org:JohannesPfeifer/dynare
...
Ref. !2212
2023-11-24 10:38:49 +01:00
Sébastien Villemot
f21fda7dfa
Build system: enable the interleaved API in MEX files for Octave ⩾ 8.4.0
...
Unfortunately it is not possible to enable it for all supported Octave
versions (which would have allowed us to remove the old codepath), because of
this bug: https://savannah.gnu.org/bugs/?64687
2023-11-24 10:36:47 +01:00
Sébastien Villemot
c0e39d40a7
Testsuite: increase tolerance for estimation/fs2000_model_comparison.mod
...
Needed for MATLAB R2018b, at least on AVX512-capable CPUs.
2023-11-23 22:07:49 +01:00
Johannes Pfeifer
d0e99daf9a
mcmc_diagnostics.m: compute Geweke and Raftery/Lewis also with more than one chain
2023-11-23 16:59:02 +01:00
Sébastien Villemot
f62d76cbcf
Merge branch 'shock_decomp' of git.dynare.org:JohannesPfeifer/dynare
...
Ref. !2211
2023-11-23 14:51:26 +01:00
Sébastien Villemot
56410be973
CI: enable FF_ENABLE_BASH_EXIT_CODE_CHECK to avoid unintuitive behaviour with && operator
2023-11-23 14:51:06 +01:00
Johannes Pfeifer
07d859d018
graph_decomp.m: make sure figure fits on screen and close button is accessible
2023-11-23 01:27:10 +01:00
Sébastien Villemot
b513214570
perfect_foresight_homotopy: minor simplification
2023-11-22 20:34:03 +01:00
Sébastien Villemot
9545dcc8d9
perfect_foresight_solver.m: improve local functions documentation
2023-11-22 20:34:02 +01:00
Sébastien Villemot
08c9eca8ee
perfect foresight homotopy + marginal linearization: fix percentages in information messages
2023-11-22 20:34:02 +01:00
Sébastien Villemot
701afd2c7c
Consolidate the routines for loading JSON files, now that jsondecode is always available
2023-11-22 17:46:16 +01:00