Improve debug mode.

kalman_mex
Stéphane Adjemian (Argos) 2023-11-09 11:37:00 +01:00
parent 3a461c996c
commit 9c61422a75
Signed by: stepan
GPG Key ID: A6D44CB9C64CE77B
1 changed files with 45 additions and 44 deletions

View File

@ -1,11 +1,11 @@
debug = true;
debug = false;
source_dir = getenv('source_root');
addpath([source_dir filesep 'matlab']);
dynare_config;
addpath([source_dir filesep 'tests' filesep 'kalman' filesep 'likelihood']);
if ~debug
source_dir = getenv('source_root');
addpath([source_dir filesep 'matlab']);
dynare_config;
addpath([source_dir filesep 'tests' filesep 'kalman' filesep 'likelihood']);
end
testFailed = 0;
@ -25,36 +25,36 @@ Experience.MeasurementErrors = 0;
Experience.NumberOfPeriods = 300;
try
flag = compare_kalman_mex(Experience);
if (flag)
testFailed = testFailed+1;
if debug
dprintf('MEX and MATLAB Kalman filters lead to different results')
end
end
flag = compare_kalman_mex(Experience);
if (flag)
testFailed = testFailed+1;
if debug
dprintf('MEX and MATLAB Kalman filters lead to different results')
end
end
catch
testFailed = testFailed+1;
if debug
dprintf('Comparison between MEX and MATLAB Kalman filters failed')
end
testFailed = testFailed+1;
if debug
dprintf('Comparison between MEX and MATLAB Kalman filters failed')
end
end
dprintf('Test 2: measurement error with diagonal variance-covariance matrix')
Experience.MeasurementErrors = 1;
try
flag = compare_kalman_mex(Experience);
if (flag)
testFailed = testFailed+1;
if debug
dprintf('MEX and MATLAB Kalman filters lead to different results')
end
end
flag = compare_kalman_mex(Experience);
if (flag)
testFailed = testFailed+1;
if debug
dprintf('MEX and MATLAB Kalman filters lead to different results')
end
end
catch
testFailed = testFailed+1;
if debug
dprintf('Comparison between MEX and MATLAB Kalman filters failed')
end
testFailed = testFailed+1;
if debug
dprintf('Comparison between MEX and MATLAB Kalman filters failed')
end
end
dprintf('Test 3: measurement error with general variance-covariance matrix')
@ -65,22 +65,23 @@ Experience.MeasurementErrors = 2;
Experience.NumberOfPeriods = 300;
try
flag = compare_kalman_mex(Experience);
if (flag)
testFailed = testFailed+1;
if debug
dprintf('MEX and MATLAB Kalman filters lead to different results')
end
end
flag = compare_kalman_mex(Experience);
if (flag)
testFailed = testFailed+1;
if debug
dprintf('MEX and MATLAB Kalman filters lead to different results')
end
end
catch
testFailed = testFailed+1;
if debug
dprintf('Comparison between MEX and MATLAB Kalman filters failed')
end
testFailed = testFailed+1;
if debug
dprintf('Comparison between MEX and MATLAB Kalman filters failed')
end
end
t1 = clock;
fprintf('\n*** Elapsed time (in seconds): %.1f\n\n', etime(t1, t0));
quit(testFailed > 0)
if ~debug
t1 = clock;
fprintf('\n*** Elapsed time (in seconds): %.1f\n\n', etime(t1, t0));
quit(testFailed > 0)
end