ImplicitPlane1

From WeBWorK_wiki
Revision as of 16:06, 7 June 2015 by Paultpearson (talk | contribs) (Add link to PGML version in OPL)
Jump to navigation Jump to search

Answer is an Equation for a Line or Plane

Click to enlarge

This PG code shows how to define an answer that is a line or plane.


Templates by Subject Area

PG problem file Explanation

Problem tagging data

Problem tagging:

DOCUMENT();   

loadMacros(
"PGstandard.pl",
"MathObjects.pl",
"parserImplicitPlane.pl",
"parserVectorUtils.pl",
"AnswerFormatHelp.pl",
);     

TEXT(beginproblem());

Initialization:

Context("ImplicitPlane");

$A = non_zero_point3D(-5,5,1);
$N = non_zero_vector3D(-5,5,1);

$answer1 = ImplicitPlane($A,$N);

Context()->variables->are(x=>"Real",y=>"Real");

$answer2 = ImplicitPlane("4x+3y=12");

$answer3 = ImplicitPlane("x=3");

Setup: The first answer is a standard mulitivariable calculus question. There are several different ways to specify the input to ImplicitPlane, which are detailed in the POD documentation. It is also possible to do some more complicated manipulations with the vectors and points, which is detailed in the problem techniques section.

When the ImplicitPlane context has only two variables, it rephrases error messages in terms of lines. If you want students to be able to enter an equation for a line in the most general form, or if you have a vertical line to check (or just a constant equation such as x=3), you can use the ImplicitPlane context to reliably check these answers.

Context()->texStrings;
BEGIN_TEXT
(a) Enter an equation for the plane through
the point \( $A \) and perpendicular to
\( $N \).
$BR 
\{ ans_rule(20) \}
\{ AnswerFormatHelp("equations") \}
$BR
$BR
(b) Enter an equation for the line in the
xy-plane with x-intercept \( 3 \) and 
y-intercept \( 4 \).
$BR
\{ ans_rule(20) \}
\{ AnswerFormatHelp("equations") \}
$BR
$BR
(c) Enter an equation for the vertical line 
in the xy-plane through the point \( (3,1) \).
$BR
\{ ans_rule(20) \}
\{ AnswerFormatHelp("equations") \}
END_TEXT
Context()->normalStrings;

Main Text:

$showPartialCorrectAnswers = 1;

ANS( $answer1->cmp() );
ANS( $answer2->cmp() );
ANS( $answer3->cmp() );

Answer Evaluation:

Context()->texStrings;
BEGIN_SOLUTION
Solution explanation goes here.
END_SOLUTION
Context()->normalStrings;

COMMENT('MathObject version.');

ENDDOCUMENT();

Solution:

Templates by Subject Area