Skip to content
Snippets Groups Projects
Verified Commit 8ecf9f94 authored by Sébastien Villemot's avatar Sébastien Villemot
Browse files

Testsuite / PAC: use sparse representation for the model

Ref. #1859
parent 6613d1d4
No related branches found
No related tags found
No related merge requests found
...@@ -87,7 +87,8 @@ verbatim; ...@@ -87,7 +87,8 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = example1.set_auxiliary_variables(y, x, M_.params); y = example1.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, g1] = example1.dynamic(y, x', M_.params, oo_.steady_state, 1); [residual, T_order, T] = example1.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = example1.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
save('example1.mat', 'residual', 'g1', 'TrueData'); save('example1.mat', 'residual', 'g1', 'TrueData');
end; end;
\ No newline at end of file
...@@ -78,9 +78,10 @@ verbatim; ...@@ -78,9 +78,10 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = substitution.set_auxiliary_variables(y, x, M_.params); y = substitution.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, T_order, T] = substitution.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = substitution.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
example1 = load('example1.mat'); example1 = load('example1.mat');
[residual, g1] = substitution.dynamic(y, x', M_.params, oo_.steady_state, 1);
end; end;
if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9 if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9
......
...@@ -67,7 +67,8 @@ verbatim; ...@@ -67,7 +67,8 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = example1.set_auxiliary_variables(y, x, M_.params); y = example1.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, g1] = example1.dynamic(y, x', M_.params, oo_.steady_state, 1); [residual, T_order, T] = example1.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = example1.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
save('example1.mat', 'residual', 'g1', 'TrueData'); save('example1.mat', 'residual', 'g1', 'TrueData');
end; end;
...@@ -59,9 +59,10 @@ verbatim; ...@@ -59,9 +59,10 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = substitution.set_auxiliary_variables(y, x, M_.params); y = substitution.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, T_order, T] = substitution.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = substitution.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
example1 = load('example1.mat'); example1 = load('example1.mat');
[residual, g1] = substitution.dynamic(y, x', M_.params, oo_.steady_state, 1);
end; end;
if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9 if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9
......
...@@ -71,7 +71,8 @@ verbatim; ...@@ -71,7 +71,8 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = example1.set_auxiliary_variables(y, x, M_.params); y = example1.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, g1] = example1.dynamic(y, x', M_.params, oo_.steady_state, 1); [residual, T_order, T] = example1.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = example1.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
save('example1.mat', 'residual', 'g1', 'TrueData'); save('example1.mat', 'residual', 'g1', 'TrueData');
end; end;
...@@ -64,9 +64,10 @@ verbatim; ...@@ -64,9 +64,10 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = substitution.set_auxiliary_variables(y, x, M_.params); y = substitution.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, T_order, T] = substitution.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = substitution.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
example1 = load('example1.mat'); example1 = load('example1.mat');
[residual, g1] = substitution.dynamic(y, x', M_.params, oo_.steady_state, 1);
if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9 if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9
error('Simulations do not match.') error('Simulations do not match.')
......
...@@ -73,7 +73,8 @@ verbatim; ...@@ -73,7 +73,8 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = example1.set_auxiliary_variables(y, x, M_.params); y = example1.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, g1] = example1.dynamic(y, x', M_.params, oo_.steady_state, 1); [residual, T_order, T] = example1.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = example1.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
save('example1.mat', 'residual', 'g1', 'TrueData'); save('example1.mat', 'residual', 'g1', 'TrueData');
end; end;
...@@ -67,9 +67,10 @@ verbatim; ...@@ -67,9 +67,10 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = substitution.set_auxiliary_variables(y, x, M_.params); y = substitution.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, T_order, T] = substitution.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = substitution.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
example1 = load('example1.mat'); example1 = load('example1.mat');
[residual, g1] = substitution.dynamic(y, x', M_.params, oo_.steady_state, 1);
if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9 if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9
error('Simulations do not match.') error('Simulations do not match.')
......
...@@ -84,7 +84,8 @@ verbatim; ...@@ -84,7 +84,8 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = example1.set_auxiliary_variables(y, x, M_.params); y = example1.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, g1] = example1.dynamic(y, x', M_.params, oo_.steady_state, 1); [residual, T_order, T] = example1.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = example1.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
save('example1.mat', 'residual', 'g1', 'TrueData'); save('example1.mat', 'residual', 'g1', 'TrueData');
end; end;
...@@ -64,9 +64,10 @@ verbatim; ...@@ -64,9 +64,10 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = substitution.set_auxiliary_variables(y, x, M_.params); y = substitution.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, T_order, T] = substitution.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = substitution.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
example1 = load('example1.mat'); example1 = load('example1.mat');
[residual, g1] = substitution.dynamic(y, x', M_.params, oo_.steady_state, 1);
if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9 if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9
error('Simulations do not match.') error('Simulations do not match.')
......
...@@ -88,7 +88,8 @@ verbatim; ...@@ -88,7 +88,8 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = example1.set_auxiliary_variables(y, x, M_.params); y = example1.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, g1] = example1.dynamic(y, x', M_.params, oo_.steady_state, 1); [residual, T_order, T] = example1.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = example1.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
save('example1.mat', 'residual', 'g1', 'TrueData'); save('example1.mat', 'residual', 'g1', 'TrueData');
end; end;
...@@ -65,9 +65,10 @@ verbatim; ...@@ -65,9 +65,10 @@ verbatim;
y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1); y(1:M_.orig_endo_nbr) = rand(M_.orig_endo_nbr, 1);
x = randn(M_.exo_nbr,1); x = randn(M_.exo_nbr,1);
y = substitution.set_auxiliary_variables(y, x, M_.params); y = substitution.set_auxiliary_variables(y, x, M_.params);
y = [y(find(M_.lead_lag_incidence(1,:))); y]; y3n = repmat(y, 3, 1);
[residual, T_order, T] = substitution.sparse.dynamic_resid(y3n, x', M_.params, oo_.steady_state);
g1 = substitution.sparse.dynamic_g1(y3n, x', M_.params, oo_.steady_state, M_.dynamic_g1_sparse_rowval, M_.dynamic_g1_sparse_colval, M_.dynamic_g1_sparse_colptr, T_order, T);
example1 = load('example1.mat'); example1 = load('example1.mat');
[residual, g1] = substitution.dynamic(y, x', M_.params, oo_.steady_state, 1);
if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9 if max(abs(example1.TrueData.data(:)-TrueData.data(:)))>1e-9
error('Simulations do not match.') error('Simulations do not match.')
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment