Commit 0d29cdb3 authored by Manfred Hanke's avatar Manfred Hanke 💻

print_statistics updated: regular-number-statistics is only shown if there are irregular numbers

parent 7de91c27
......@@ -24511,16 +24511,23 @@ define print_statistics()
variable i;
_for i (1, length(dims)-1, 1) ()=printf(" x %d", dims[i]);
if(length(dims)>1) ()=printf(" = %d", length(a));
i = wherenot(isnan(a) or isinf(a));
()=printf(" (%d regular numbers)\n", length(i));
variable m = moment(a);
variable mreg = m;
if(length(i)<length(a)) mreg = moment(a[i]);
()=printf("min = %f (%f)\n", m.min, mreg.min);
()=printf(" av = %f (%f)\n", m.ave, mreg.ave);
()=printf("sdev = %f (%f)\n", m.sdev, mreg.sdev);
()=printf("max = %f (%f)\n", m.max, mreg.max);
i = wherenot(isnan(a) or isinf(a)); % regular numbers
if(length(i)<length(a)) % there are irregular numbers
{ variable mreg = moment(a[i]);
()=printf(" (%d regular numbers)\n", length(i));
()=printf("min = %f (%f)\n", m.min, mreg.min);
()=printf(" av = %f (%f)\n", m.ave, mreg.ave);
()=printf("sdev = %f (%f)\n", m.sdev, mreg.sdev);
()=printf("max = %f (%f)\n", m.max, mreg.max);
}
else % there are no irregular numbers
{ ()=printf("\n");
()=printf("min = %f\n", m.min);
()=printf(" av = %f\n", m.ave);
()=printf("sdev = %f\n", m.sdev);
()=printf("max = %f\n", m.max);
}
}
......@@ -23,14 +23,21 @@ define print_statistics()
variable i;
_for i (1, length(dims)-1, 1) ()=printf(" x %d", dims[i]);
if(length(dims)>1) ()=printf(" = %d", length(a));
i = wherenot(isnan(a) or isinf(a));
()=printf(" (%d regular numbers)\n", length(i));
variable m = moment(a);
variable mreg = m;
if(length(i)<length(a)) mreg = moment(a[i]);
()=printf("min = %f (%f)\n", m.min, mreg.min);
()=printf(" av = %f (%f)\n", m.ave, mreg.ave);
()=printf("sdev = %f (%f)\n", m.sdev, mreg.sdev);
()=printf("max = %f (%f)\n", m.max, mreg.max);
i = wherenot(isnan(a) or isinf(a)); % regular numbers
if(length(i)<length(a)) % there are irregular numbers
{ variable mreg = moment(a[i]);
()=printf(" (%d regular numbers)\n", length(i));
()=printf("min = %f (%f)\n", m.min, mreg.min);
()=printf(" av = %f (%f)\n", m.ave, mreg.ave);
()=printf("sdev = %f (%f)\n", m.sdev, mreg.sdev);
()=printf("max = %f (%f)\n", m.max, mreg.max);
}
else % there are no irregular numbers
{ ()=printf("\n");
()=printf("min = %f\n", m.min);
()=printf(" av = %f\n", m.ave);
()=printf("sdev = %f\n", m.sdev);
()=printf("max = %f\n", m.max);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment