Difference between revisions of "ContextLimitedPolynomial"

From WeBWorK_wiki
Jump to navigation Jump to search
m (CheckPolynomial moved to ContextLimitedPolynomial: Makes more sense)
m
Line 1: Line 1:
{{DISPLAYTITLE:checkPolynomial}}
+
{{DISPLAYTITLE:contextLimitedPolynomial.pl}}
 
{{macro
 
{{macro
 
|name=checkPolynomial
 
|name=checkPolynomial
|category=MathObject
+
|category=MathObject Context
 
|status=Standard
 
|status=Standard
 
|desc=Allow only entry of polynomials
 
|desc=Allow only entry of polynomials
Line 15: Line 15:
 
== Purpose of this Macro ==
 
== Purpose of this Macro ==
   
In the <code>LimitedPolynomial</code> context, WeBWorK will require all student answers to be (expanded) polynomials (i.e., sums of multiples of powers of x). This context allows also requiring that there be only one term with each power of x. The <code>checkPolynomial</code> macro{{...}}
+
In the <code>LimitedPolynomial</code> context, WeBWorK will require all student answers to be (expanded) polynomials (i.e., sums of multiples of powers of x). This context allows also requiring that there be only one term with each power of x.
 
   
 
== Initialization ==
 
== Initialization ==
Line 44: Line 44:
 
== Usage ==
 
== Usage ==
   
The <code>checkPolynomial</code> macro is used as follows{{...}}
 
  +
   
 
== Bug Reports ==
 
== Bug Reports ==

Revision as of 15:19, 30 March 2010

checkPolynomial
Category: MathObject Context
Status Standard
Description Allow only entry of polynomials
File Name contextLimitedPolynomial.pl
File Path /pg/macros/contextLimitedPolynomial.pl
Download
Code Docs http://webwork.maa.org/doc/cvs/pg_HEAD/macros/contextLimitedPolynomial.pl.html
NPL Example
Comments:

Purpose of this Macro

In the LimitedPolynomial context, WeBWorK will require all student answers to be (expanded) polynomials (i.e., sums of multiples of powers of x). This context allows also requiring that there be only one term with each power of x.

Initialization

Enable the LimitedPolynomial context in loadMacros:

loadMacros(
  "MathObjects.pl",
  "contextLimitedPolynomial.pl",
  others,
);

Select the context using:

Context("LimitedPolynomial");

If you set the ``singlePowers flag, then only one monomial of each degree can be included in the polynomial:

Context("LimitedPolynomial")->flags->set(singlePowers=>1);

There is also a strict limited context that does not allow operations even within the coefficients. Select it using:

Context("LimitedPolynomial-Strict");

In addition to disallowing operations within the coefficients, this context does not reduce constant operations (since they are not allowed), and sets the singlePowers flag automatically. In addition, it disables all the functions, though they can be re-enabled, if needed.

Usage

Bug Reports

See Also