Don't do bgp/solow in Octave

[skip ci]
The levenberg-marquardt algorithm is not available in octave's implementation of fsolve, so we check the verbatim block only in matlab
time-shift
Willi Mutschler 2020-11-26 12:57:57 +01:00
parent 25f1641db1
commit fcef3ca09f
No known key found for this signature in database
GPG Key ID: 91E724BF17A73F6D
1 changed files with 13 additions and 2 deletions

View File

@ -36,7 +36,9 @@ model;
PhysicalCapitalStock = (1-delta)*PhysicalCapitalStock(-1) + s*Output;
end;
if ~isoctave
% The levenberg-marquardt algorithm is not available in octave's
% implementation of fsolve, so we skip this check for Octave
verbatim;
bgp.write(M_);
@ -57,6 +59,7 @@ verbatim;
else
fun = @solow.bgpfun;
end
reverseStr = '';
for i=1:MC
y = 1+(rand(6,1)-.5)*.2;
g = ones(6,1);
@ -66,8 +69,14 @@ verbatim;
GY(i) = y(11);
GK(i) = y(12);
EG(i) = y(2);
end
end
% Display the progress
percentDone = 100 * i / MC;
msg = sprintf('Percent done: %3.1f', percentDone);
fprintf([reverseStr, msg]);
reverseStr = repmat(sprintf('\b'), 1, length(msg));
end
fprintf('\n');
% Compute the physical capital stock over output ratio along the BGP as
% a function of the deep parameters...
theoretical_long_run_ratio = s*EfficiencyGrowth_ss*PopulationGrowth_ss/(EfficiencyGrowth_ss*PopulationGrowth_ss-1+delta);
@ -89,3 +98,5 @@ verbatim;
assert(var(EG(~isnan(EG)))<1e-16);
end;
end;