Display of decision rules: deal with overflow of fields
parent
e2694381dd
commit
d79895b66a
|
@ -72,6 +72,7 @@ if options_.loglinear
|
||||||
end
|
end
|
||||||
header_label_format = sprintf('%%%ds',header_label_length);
|
header_label_format = sprintf('%%%ds',header_label_length);
|
||||||
value_format_float = sprintf('%%%d.6f',header_label_length);
|
value_format_float = sprintf('%%%d.6f',header_label_length);
|
||||||
|
value_format_overflow = sprintf('%%%d.6e',header_label_length);
|
||||||
value_format_zero = sprintf('%%%dd',header_label_length);
|
value_format_zero = sprintf('%%%dd',header_label_length);
|
||||||
|
|
||||||
% account for additional characters introduced by auxiliary variables
|
% account for additional characters introduced by auxiliary variables
|
||||||
|
@ -122,7 +123,7 @@ for i=1:nvar
|
||||||
if order > 1
|
if order > 1
|
||||||
x = x + dr.ghs2(ivar(i))/2;
|
x = x + dr.ghs2(ivar(i))/2;
|
||||||
end
|
end
|
||||||
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,flag,options_);
|
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,value_format_overflow,header_label_length,flag,options_);
|
||||||
end
|
end
|
||||||
if flag
|
if flag
|
||||||
disp(str)
|
disp(str)
|
||||||
|
@ -132,7 +133,7 @@ if order > 1
|
||||||
flag = 0;
|
flag = 0;
|
||||||
for i=1:nvar
|
for i=1:nvar
|
||||||
x = dr.ghs2(ivar(i))/2;
|
x = dr.ghs2(ivar(i))/2;
|
||||||
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,flag,options_);
|
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,value_format_overflow,header_label_length,flag,options_);
|
||||||
end
|
end
|
||||||
if flag
|
if flag
|
||||||
disp(str)
|
disp(str)
|
||||||
|
@ -155,7 +156,7 @@ for k=1:nx
|
||||||
end
|
end
|
||||||
for i=1:nvar
|
for i=1:nvar
|
||||||
x = dr.ghx(ivar(i),k);
|
x = dr.ghx(ivar(i),k);
|
||||||
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,flag,options_);
|
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,value_format_overflow,header_label_length,flag,options_);
|
||||||
end
|
end
|
||||||
if flag
|
if flag
|
||||||
disp(str)
|
disp(str)
|
||||||
|
@ -169,7 +170,7 @@ for k=1:nu
|
||||||
str = sprintf(label_format, M_.exo_names{k});
|
str = sprintf(label_format, M_.exo_names{k});
|
||||||
for i=1:nvar
|
for i=1:nvar
|
||||||
x = dr.ghu(ivar(i),k);
|
x = dr.ghu(ivar(i),k);
|
||||||
[str,flag] = get_print_string(str, x, value_format_zero, value_format_float, flag, options_);
|
[str,flag] = get_print_string(str, x, value_format_zero, value_format_float, value_format_overflow, header_label_length, flag, options_);
|
||||||
end
|
end
|
||||||
if flag
|
if flag
|
||||||
disp(str)
|
disp(str)
|
||||||
|
@ -190,7 +191,7 @@ if order > 1
|
||||||
else
|
else
|
||||||
x = dr.ghxx(ivar(i),(k-1)*nx+j);
|
x = dr.ghxx(ivar(i),(k-1)*nx+j);
|
||||||
end
|
end
|
||||||
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,flag,options_);
|
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,value_format_overflow,header_label_length,flag,options_);
|
||||||
end
|
end
|
||||||
if flag
|
if flag
|
||||||
disp(str)
|
disp(str)
|
||||||
|
@ -210,7 +211,7 @@ if order > 1
|
||||||
else
|
else
|
||||||
x = dr.ghuu(ivar(i),(k-1)*nu+j);
|
x = dr.ghuu(ivar(i),(k-1)*nu+j);
|
||||||
end
|
end
|
||||||
[str,flag]=get_print_string(str, x, value_format_zero, value_format_float, flag, options_);
|
[str,flag]=get_print_string(str, x, value_format_zero, value_format_float, value_format_overflow, header_label_length, flag, options_);
|
||||||
end
|
end
|
||||||
if flag
|
if flag
|
||||||
disp(str)
|
disp(str)
|
||||||
|
@ -227,7 +228,7 @@ if order > 1
|
||||||
str = sprintf(label_format,str1);
|
str = sprintf(label_format,str1);
|
||||||
for i=1:nvar
|
for i=1:nvar
|
||||||
x = dr.ghxu(ivar(i),(k-1)*nu+j);
|
x = dr.ghxu(ivar(i),(k-1)*nu+j);
|
||||||
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,flag,options_);
|
[str,flag]=get_print_string(str,x,value_format_zero,value_format_float,value_format_overflow,header_label_length,flag,options_);
|
||||||
end
|
end
|
||||||
if flag
|
if flag
|
||||||
disp(str)
|
disp(str)
|
||||||
|
@ -238,10 +239,14 @@ end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function [str,flag]=get_print_string(str, x, value_format_zero, value_format_float, flag, options_)
|
function [str,flag]=get_print_string(str, x, value_format_zero, value_format_float, value_format_overflow, max_length, flag, options_)
|
||||||
if abs(x) >= options_.dr_display_tol
|
if abs(x) >= options_.dr_display_tol
|
||||||
flag = 1;
|
flag = 1;
|
||||||
str = [str sprintf(value_format_float, x)];
|
temp=sprintf(value_format_float, x);
|
||||||
|
if length(temp)>max_length
|
||||||
|
temp=sprintf(value_format_overflow, x);
|
||||||
|
end
|
||||||
|
str = [str temp];
|
||||||
else
|
else
|
||||||
str = [str sprintf(value_format_zero, 0)];
|
str = [str sprintf(value_format_zero, 0)];
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue