diff --git a/src/utilities/is/isfreq.m b/src/utilities/is/isfreq.m index 3bef38a862443c4d29f3480c9bf837a25ef4e8bb..2bb33117bc7c4885d090e3c898f2a23743789f74 100644 --- a/src/utilities/is/isfreq.m +++ b/src/utilities/is/isfreq.m @@ -3,12 +3,12 @@ function B = isfreq(A) % --*-- Unitary tests --*-- % Tests if A can be interpreted as a frequency. % % INPUTS -% o A scalar integer or character. +% - A [integer, char] scalar, frequency code. % % OUTPUTS -% o B scalar integer equal to one if A can be interpreted as a frequency, zero otherwise. +% - B [logical] scalar equal to true iff A can be interpreted as a frequency. -% Copyright (C) 2013-2020 Dynare Team +% Copyright © 2013-2020 Dynare Team % % This file is part of Dynare. % @@ -28,7 +28,7 @@ function B = isfreq(A) % --*-- Unitary tests --*-- B = false; if ischar(A) - if isequal(length(A),1) && ismember(upper(A),{'Y','A', 'H', 'Q', 'M', 'W', 'D'}) + if isequal(length(A),1) && ismember(upper(A),{'Y','A', 'H', 'Q', 'M', 'D'}) B = true; return end @@ -38,108 +38,79 @@ if isnumeric(A) && isequal(length(A),1) && ismember(A,[1 2 4 12 52 365]) B = true; end +return + %@test:1 -%$ try -%$ boolean = isfreq('w'); -%$ t(1) = true; -%$ catch -%$ t(1) = false; -%$ end -%$ -%$ if t(1) -%$ t(2) = dassert(boolean, true); -%$ end -%$ -%$ T = all(t); +try + b = isfreq('M') && isfreq(12); + t(1) = true; +catch + t(1) = false; +end + +if t(1) + t(2) = b; +end + +T = all(t); %@eof:1 %@test:2 -%$ try -%$ boolean = isfreq('W'); -%$ t(1) = true; -%$ catch -%$ t(1) = false; -%$ end -%$ -%$ if t(1) -%$ t(2) = dassert(boolean, true); -%$ end -%$ -%$ T = all(t); +try + b = isfreq('Q') && isfreq(4); + t(1) = true; +catch + t(1) = false; +end + +if t(1) + t(2) = b; +end + +T = all(t); %@eof:2 %@test:3 -%$ try -%$ boolean = isfreq('M'); -%$ t(1) = true; -%$ catch -%$ t(1) = false; -%$ end -%$ -%$ if t(1) -%$ t(2) = dassert(boolean, true); -%$ end -%$ -%$ T = all(t); +try + b = isfreq('Y') && isfreq(1); + t(1) = true; +catch + t(1) = false; +end + +if t(1) + t(2) = b; +end + +T = all(t); %@eof:3 %@test:4 -%$ try -%$ boolean = isfreq('Q'); -%$ t(1) = true; -%$ catch -%$ t(1) = false; -%$ end -%$ -%$ if t(1) -%$ t(2) = dassert(boolean, true); -%$ end -%$ -%$ T = all(t); +try + b = isfreq('H') && isfreq(2); + t(1) = true; +catch + t(1) = false; +end + +if t(1) + t(2) = b; +end + +T = all(t); %@eof:4 %@test:5 -%$ try -%$ boolean = isfreq('Y'); -%$ t(1) = true; -%$ catch -%$ t(1) = false; -%$ end -%$ -%$ if t(1) -%$ t(2) = dassert(boolean, true); -%$ end -%$ -%$ T = all(t); -%@eof:5 - -%@test:6 -%$ try -%$ boolean = isfreq('H'); -%$ t(1) = true; -%$ catch -%$ t(1) = false; -%$ end -%$ -%$ if t(1) -%$ t(2) = dassert(boolean, true); -%$ end -%$ -%$ T = all(t); -%@eof:6 - -%@test:7 -%$ try -%$ boolean = isfreq('D'); -%$ t(1) = true; -%$ catch -%$ t(1) = false; -%$ end -%$ -%$ if t(1) -%$ t(2) = dassert(boolean, true); -%$ end -%$ -%$ T = all(t); -%@eof:7 +try + b = isfreq('D') && isfreq(365); + t(1) = true; +catch + t(1) = false; +end + +if t(1) + t(2) = b; +end +T = all(t); +%@eof:5 \ No newline at end of file