diff --git a/tests/bgp/solow-1/solow.mod b/tests/bgp/solow-1/solow.mod
index e4d9fa8be824a3d6e22e396d24137a362459ff1b..fae22bcd3c2ab1794f8c55489d3f1d5b5e286346 100644
--- a/tests/bgp/solow-1/solow.mod
+++ b/tests/bgp/solow-1/solow.mod
@@ -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;
\ No newline at end of file