From: dpvc v. a. <we...@ma...> - 2005-07-04 15:25:52
|
Log Message: ----------- Don't use the overloaded Real class for doing adaptive parameter checks (use non-fuzzy checks, since we are checking the fuzziness by hand). Modified Files: -------------- pg/lib/Value: Formula.pm Revision Data ------------- Index: Formula.pm =================================================================== RCS file: /webwork/cvs/system/pg/lib/Value/Formula.pm,v retrieving revision 1.27 retrieving revision 1.28 diff -Llib/Value/Formula.pm -Llib/Value/Formula.pm -u -r1.27 -r1.28 --- lib/Value/Formula.pm +++ lib/Value/Formula.pm @@ -188,9 +188,9 @@ my $zeroLevel = $self->getFlag('zeroLevel',1E-14); foreach $i (0..scalar(@{$lvalues})-1) { my $tol = $tolerance; - $tol *= abs($lvalues->[$i]) if $isRelative && abs($lvalues->[$i]) > $zeroLevel; - return $rvalues->[$i]->value <=> $avalues->[$i]->value - unless abs($rvalues->[$i] - $avalues->[$i]) < $tol; + my ($lv,$rv,$av) = ($lvalues->[$i]->value,$rvalues->[$i]->value,$avalues->[$i]->value); + $tol *= abs($lv) if $isRelative && abs($lv) > $zeroLevel; + return $rv <=> $av unless abs($rv - $av) < $tol; } return 0; } |