[LON-CAPA-cvs] cvs: loncom /homework functionplotresponse.pm
www
www at source.lon-capa.org
Mon Nov 21 15:48:50 EST 2011
www Mon Nov 21 20:48:50 2011 EDT
Modified files:
/loncom/homework functionplotresponse.pm
Log:
Sum vector rule working
Index: loncom/homework/functionplotresponse.pm
diff -u loncom/homework/functionplotresponse.pm:1.82 loncom/homework/functionplotresponse.pm:1.83
--- loncom/homework/functionplotresponse.pm:1.82 Mon Nov 21 20:20:48 2011
+++ loncom/homework/functionplotresponse.pm Mon Nov 21 20:48:50 2011
@@ -1,7 +1,7 @@
# LearningOnline Network with CAPA
# Functionplot responses
#
-# $Id: functionplotresponse.pm,v 1.82 2011/11/21 20:20:48 www Exp $
+# $Id: functionplotresponse.pm,v 1.83 2011/11/21 20:48:50 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -1528,6 +1528,34 @@
$sumy+=$ry;
}
&addlog("Sum vector ($sumx,$sumy)");
+ if ($length ne '') {
+ &addlog("Checking length $length with error $lengtherror");
+ $length=&Apache::run::run($length,$safeeval);
+ &addlog("Evaluated to $length");
+ my $thislength=&vectorlength($sumx,$sumy);
+ &addlog("Actual length $thislength");
+ if (abs($length-$thislength)>$lengtherror) {
+ &setfailed($label);
+ return 0;
+ }
+ }
+ if ($angle ne '') {
+ &addlog("Checking angle $angle with error $angleerror");
+ $angle=&Apache::run::run($angle,$safeeval);
+ &addlog("Evaluated to $angle");
+ my $thisangle=&vectorangle($sumx,$sumy);
+ &addlog("Actual angle $thisangle");
+ my $anglediff=abs($thisangle-$angle);
+ &addlog("Angle difference: $anglediff");
+ if ($anglediff>360.-$anglediff) {
+ $anglediff=360.-$anglediff;
+ }
+ &addlog("Smallest angle difference: $anglediff");
+ if ($anglediff>$angleerror) {
+ &setfailed($label);
+ return 0;
+ }
+ }
&addlog("Rule $label passed.");
return 1;
}
More information about the LON-CAPA-cvs
mailing list