dynare issueshttps://git.dynare.org/Dynare/dynare/-/issues2018-09-10T12:35:46Zhttps://git.dynare.org/Dynare/dynare/-/issues/1601dates: uninformative error message2018-09-10T12:35:46ZMichelJuillarddates: uninformative error messageIn ``dates`` if the date format is not recognized the error message is "You should first read the manual". This isn't helpful. Furthermore, inside Dynare, if this problem occurs in the datafile, there is no reference to the ``dates`` mod...In ``dates`` if the date format is not recognized the error message is "You should first read the manual". This isn't helpful. Furthermore, inside Dynare, if this problem occurs in the datafile, there is no reference to the ``dates`` module. https://git.dynare.org/Dynare/dynare/-/issues/1544dataset_ is a dseries and no longer a structure2018-09-10T12:35:46ZStéphane Adjemianstepan@adjemian.eudataset_ is a dseries and no longer a structure*Created by: thomasbrand*
The last commits about `dseries` (between October 10th and October 14th) modified the type of the `dataset_` output in `results.mat`. It was previously a matlab structure, and now it is a `dseries`. The consequ...*Created by: thomasbrand*
The last commits about `dseries` (between October 10th and October 14th) modified the type of the `dataset_` output in `results.mat`. It was previously a matlab structure, and now it is a `dseries`. The consequence is important (for me) because now I need Dynare to read the `dataset_` output.
Was it on purpose or do you think you will go back to a structure ?
Thank you.Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/1400Investigate dseries problems in parallel execution2021-08-15T19:10:35ZJohannes PfeiferInvestigate dseries problems in parallel executionWhen executing the attached file, which runs the ```UseParallel``` feature of ```fmincon```, a crash results because the dseries data is transformed to a structure:
```
Warning: Element(s) of class 'dseries' do not match the current cons...When executing the attached file, which runs the ```UseParallel``` feature of ```fmincon```, a crash results because the dseries data is transformed to a structure:
```
Warning: Element(s) of class 'dseries' do not match the current constructor definition. The element(s) have been converted to structures.
> In parallel.internal.pool.deserialize (line 9)
In parallel.internal.pool.deserializeFunction (line 12)
In remoteParallelFunction (line 33)
Warning: Element(s) of class 'dates' do not match the current constructor definition. The element(s) have been converted to structures.
> In parallel.internal.pool.deserialize (line 9)
In parallel.internal.pool.deserializeFunction (line 12)
In remoteParallelFunction (line 33)
```
[SW.zip](https://github.com/DynareTeam/dynare/files/827628/SW.zip)Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/832Use dseries objects in Dynare2023-06-13T13:21:45ZStéphane Adjemianstepan@adjemian.euUse dseries objects in DynareIn the current state, `dseries` objects can be used in matlab scripts and in Dynare's mod file to create and manipulate datasets. The next step is to integrate more deeply the `dseries` class and Dynare. Whenever possible the output of D...In the current state, `dseries` objects can be used in matlab scripts and in Dynare's mod file to create and manipulate datasets. The next step is to integrate more deeply the `dseries` class and Dynare. Whenever possible the output of Dynare will be `dseries` objects (IRFs, forecasts, ...) and also we will allow the use of `dseries` objects as inputs to Dynare's command (`data`, content of `initval`, data for conditional forecasts, ...).
- [ ] Document the `data` command (new data interface).
- [ ] Save results as `dseries` objects.
- [x] Polish and document the from-to-do syntax.
- [ ] Add the possibility to pass `dseries`to `initial``and``histval``commands.
Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/1359Add interface to load datafile in Matlab's table-format2019-12-03T14:45:18ZJohannes PfeiferAdd interface to load datafile in Matlab's table-formatIn `R2013b`. Matlab introduced a datatype `table` (https://de.mathworks.com/help/matlab/ref/table.html). We should support reading datasets saved in this format. In `R2013b`. Matlab introduced a datatype `table` (https://de.mathworks.com/help/matlab/ref/table.html). We should support reading datasets saved in this format. 4.6Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/1364Allow loading data from mat-files that contain other variables2019-06-19T15:37:45ZJohannes PfeiferAllow loading data from mat-files that contain other variablesWe rely on `load_mat_file_data.m` from `dseries` to read in `mat`-files. There we use
```
for i=1:length(varlist)
try
tmp = getfield(datafile,varlist{i});
data = [data, tmp(:)];
catch
error(['load_...We rely on `load_mat_file_data.m` from `dseries` to read in `mat`-files. There we use
```
for i=1:length(varlist)
try
tmp = getfield(datafile,varlist{i});
data = [data, tmp(:)];
catch
error(['load_mat_file:: All the vectors (variables) in ' inputname(1) ' must have the same number of rows (observations)!'])
end
end
```
to read _all_ variables and concatenate them in an array. If there is any other variable in the mat-file that does not have conformable dimensions, we abort with a crash. This deviates from earlier behavior and will result in many users reporting problems with backward compatibility if we release `4.5` this way. Is there a way to only load the specified `varobs`? Currently, it seems impossible to pass this through the `dseries`.4.6https://git.dynare.org/Dynare/dynare/-/issues/1293xlswrite and xlsopen on Octave no longer work on .xls files, only .xlsx files2019-06-19T15:37:47ZHoutan Bastanixlswrite and xlsopen on Octave no longer work on .xls files, only .xlsx filesSee: http://savannah.gnu.org/bugs/?44109
This causes `tests/data/mod1a.mod` to crash in the test suite on Octave
See: http://savannah.gnu.org/bugs/?44109
This causes `tests/data/mod1a.mod` to crash in the test suite on Octave
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/758Write specialized code for loading data...2019-06-19T15:38:04ZStéphane Adjemianstepan@adjemian.euWrite specialized code for loading data...We should not use the same code if we load data with the "legacy approach" (`datafile` option of the `estimation` command) or if we use the `data` command. In the first case we should create a `dseries` restricted to the variables listed...We should not use the same code if we load data with the "legacy approach" (`datafile` option of the `estimation` command) or if we use the `data` command. In the first case we should create a `dseries` restricted to the variables listed in `options_.varobs`. See PR #741.
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/755Investigate dseries bug under Octave2019-06-19T15:38:04ZJohannes PfeiferInvestigate dseries bug under OctaveSee http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6105
See http://www.dynare.org/phpBB3/viewtopic.php?f=1&t=6105
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/704bug saving dseries in csv format that have had operations made on them2019-06-19T15:38:06ZHoutan Bastanibug saving dseries in csv format that have had operations made on themThe following results in a malformed csv file because of the commas in the names of the variables:
```
a=dseries(rand(3,1), '1999y', 'a');
b=a*a;
b.save('malformed','csv');
```
results in:
```
,multiply(a,a)
1999Y, 0.66377469
200...The following results in a malformed csv file because of the commas in the names of the variables:
```
a=dseries(rand(3,1), '1999y', 'a');
b=a*a;
b.save('malformed','csv');
```
results in:
```
,multiply(a,a)
1999Y, 0.66377469
2000Y, 0.82045903
2001Y, 0.016125652
```
need to replace the second comma in the first line with something else
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/697change syntax for instantiation of year dates2019-06-19T15:38:06ZHoutan Bastanichange syntax for instantiation of year datesCurrently, we can instantiate years as:
`t = dates(1, [1990; 1990; 1978], [1; 1; 1])`
but not as
`t = dates(1, [1990; 1990; 1978])`
In the case of years, the periods are irrelevant and so we should be able to declare a dates in the seco...Currently, we can instantiate years as:
`t = dates(1, [1990; 1990; 1978], [1; 1; 1])`
but not as
`t = dates(1, [1990; 1990; 1978])`
In the case of years, the periods are irrelevant and so we should be able to declare a dates in the second syntax
4.5Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/686addition bug in dseries2019-06-19T15:38:06ZHoutan Bastaniaddition bug in dseries```
>> a=dseries(ones(3,1))
>> 100-a
```
yields -99 as opposed to 99.
```
>> a=dseries(ones(3,1))
>> 100-a
```
yields -99 as opposed to 99.
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/671misc changes to dates/dseries2019-06-19T15:38:08ZHoutan Bastanimisc changes to dates/dseries- dates: rename `time` field to something more descriptive. Perhaps `data`
- dates: remove `ndat` field. Should have method that provides this information instead
- dseries: remove `nobs` field. Should have method that provides this info...- dates: rename `time` field to something more descriptive. Perhaps `data`
- dates: remove `ndat` field. Should have method that provides this information instead
- dseries: remove `nobs` field. Should have method that provides this information instead
- dseries: remove `vobs` field. Should have method that provides this information instead
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/665support looser syntax for creating dates2019-06-19T15:38:08ZHoutan Bastanisupport looser syntax for creating datesRight now, the following syntax works:
`dates(4, [1990; 1991], [1; 2]);`
but
`dates(4, [1990 1991], [1 2]);`
doesn't. What is important is that the arrays passed be vectors, not that they be column vectors or row vectors. We should ease ...Right now, the following syntax works:
`dates(4, [1990; 1991], [1; 2]);`
but
`dates(4, [1990 1991], [1 2]);`
doesn't. What is important is that the arrays passed be vectors, not that they be column vectors or row vectors. We should ease the syntax to accept both, just checking that they are indeed vectors.
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/652Support passing a vector to the power operator on a dseries2019-06-19T15:38:08ZHoutan BastaniSupport passing a vector to the power operator on a dseriesUnlike the other arithmetic operations, power does not allow element-wise operations when passed a matrix. I.e.
```
ts1=dseries([1;2;3], '1999y', {'MyVar1'}, {'MyVar\_1'});
ts1/[1:3]’
ts1-[1:3]’
ts1*[1:3]’
ts1+[1:3]’
```
are all ok. Bu...Unlike the other arithmetic operations, power does not allow element-wise operations when passed a matrix. I.e.
```
ts1=dseries([1;2;3], '1999y', {'MyVar1'}, {'MyVar\_1'});
ts1/[1:3]’
ts1-[1:3]’
ts1*[1:3]’
ts1+[1:3]’
```
are all ok. But,
```
ts1^[1:3]’
```
causes an error
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/591dseries sub-sample selection with vector of observation indices.2019-06-19T15:38:12ZStéphane Adjemianstepan@adjemian.eudseries sub-sample selection with vector of observation indices.If `ds = dseries(transpose(1:5))` then `ds(2:3)` wrongly returns a matlab's structure:
``` matlab
ans =
data: [2x1 double]
nobs: 2
vobs: 1
freq: 1
dates: [2 dates]
init: [1 dates]
name: {'Variable_1'}...If `ds = dseries(transpose(1:5))` then `ds(2:3)` wrongly returns a matlab's structure:
``` matlab
ans =
data: [2x1 double]
nobs: 2
vobs: 1
freq: 1
dates: [2 dates]
init: [1 dates]
name: {'Variable_1'}
tex: {'Variable\_1'}
```
while it should be a `dseries` object.
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/590dseries sub-samples beyond boudary2019-06-19T15:38:12ZMichelJuillarddseries sub-samples beyond boudaryCurrently, one obtains:
``` matlab
>> x=dseries((1:4)');
>> x(dates('2Y'):dates('5Y'))
ans is a dseries object:
| Variable_1
2Y | 2
3Y | 3
4Y | 4
```
Either it should return NaN for 5Y (my preference) or it sho...Currently, one obtains:
``` matlab
>> x=dseries((1:4)');
>> x(dates('2Y'):dates('5Y'))
ans is a dseries object:
| Variable_1
2Y | 2
3Y | 3
4Y | 4
```
Either it should return NaN for 5Y (my preference) or it should return an error. It is not a good idea to return an object that doesn't correspond to the user request.
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/589dseries sub-samples2019-06-19T15:38:12ZMichelJuillarddseries sub-samplesIn the manual, I couldn't find the syntax for extracting a subsample from a dseries:
y=x(dates)
In the manual, I couldn't find the syntax for extracting a subsample from a dseries:
y=x(dates)
4.5Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/588dynamic updating of series2019-06-19T15:38:12ZHoutan Bastanidynamic updating of series`ds=dseries(ones(5,1)); ds = ds(-1)*1.05;` should create a dseries with values:
1Y | NaN
2Y | 1
3Y | 1.05
4Y | 1.1025
5Y | 1.1576
(i.e., a time period should be updated based on the newest value of the previous time period)
`ds=dseries(ones(5,1)); ds = ds(-1)*1.05;` should create a dseries with values:
1Y | NaN
2Y | 1
3Y | 1.05
4Y | 1.1025
5Y | 1.1576
(i.e., a time period should be updated based on the newest value of the previous time period)
GPM-GIMF-2014M4Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/496Add plot function for dynSeries objects.2019-06-19T15:38:16ZStéphane Adjemianstepan@adjemian.euAdd plot function for dynSeries objects.4.4https://git.dynare.org/Dynare/dynare/-/issues/495Remove dynDate class2019-06-19T15:38:16ZStéphane Adjemianstepan@adjemian.euRemove dynDate classWe do not really need to have both `dynDate` and `dynDates` classes. Need to import some of the methods of `dynDate` class into `dynDates` class.
We do not really need to have both `dynDate` and `dynDates` classes. Need to import some of the methods of `dynDate` class into `dynDates` class.
4.4Stéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/1660Update documentation of dseries2024-01-29T20:51:00ZSébastien VillemotUpdate documentation of dseriesSince dseries have been substantially rewritten since 4.5, the documentation in the reference needs to be updated.Since dseries have been substantially rewritten since 4.5, the documentation in the reference needs to be updated.6.xStéphane Adjemianstepan@adjemian.euStéphane Adjemianstepan@adjemian.euhttps://git.dynare.org/Dynare/dynare/-/issues/1708Preprocessor fails to parse dates with negative date2020-06-30T12:10:36ZMichelJuillardPreprocessor fails to parse dates with negative date```
dates('-4Y');
```
translates in
```
dates('-dates('4Y')');
```
and
```
'-4Y'
```
translates in
```
'-dates('4Y')';
```
See attached *.mod file[test_negative_date.mod](/uploads/bd77dc2c55701ffd505b432a2071f86d/test_negative_date.mod...```
dates('-4Y');
```
translates in
```
dates('-dates('4Y')');
```
and
```
'-4Y'
```
translates in
```
'-dates('4Y')';
```
See attached *.mod file[test_negative_date.mod](/uploads/bd77dc2c55701ffd505b432a2071f86d/test_negative_date.mod)
The problem didn't appear in 4.5.74.6Houtan BastaniHoutan Bastanihttps://git.dynare.org/Dynare/dynare/-/issues/1918Preprocessor issue with mensual dates with month > 9 passed to daynre into ma...2024-01-29T11:17:26ZUgo DuboisPreprocessor issue with mensual dates with month > 9 passed to daynre into macrovariablesI think I just stumbled into an interesting bug while passing macrovariables containing mensual dates to dynare.
In a very simple mod: [SimpleMod.mod](/uploads/c460c03b98abd0f7acee934530394df5/SimpleMod.mod)
I have (a dummy model) and ...I think I just stumbled into an interesting bug while passing macrovariables containing mensual dates to dynare.
In a very simple mod: [SimpleMod.mod](/uploads/c460c03b98abd0f7acee934530394df5/SimpleMod.mod)
I have (a dummy model) and the instruction: `Toto = @{MensualDate};`
I call this .mod with dynare as follows: `dynare('SimpleMod.mod', '-DMensualDate="2005M10"');`
And get an 'invalid expression' error on `SimpleMod.driver` because what gets written in the driver for the `Toto = @{MensualDate};` instruction is : `Toto = dates('2005M1')0;`
2005M9 works, 2005M11 results into `Toto = dates('2005M1')1;` and 2005M12 results into `Toto = dates('2005M1')2;`Sébastien VillemotSébastien Villemot