FormulaDomain1: Difference between revisions
Paultpearson (talk | contribs) (Remove answerHints) |
(switch to PGML and remove answerFormatHelp.pl macro) |
||
Line 5: | Line 5: | ||
This PG code shows how to set the domain and test points for a formula. | This PG code shows how to set the domain and test points for a formula. | ||
</p> | </p> | ||
* File location in OPL: [https://github.com/openwebwork/webwork-open-problem-library/blob/master/OpenProblemLibrary/FortLewis/Authoring/Templates/Misc/FormulaDomain1.pg FortLewis/Authoring/Templates/Misc/FormulaDomain1.pg] | <!-- * File location in OPL: [https://github.com/openwebwork/webwork-open-problem-library/blob/master/OpenProblemLibrary/FortLewis/Authoring/Templates/Misc/FormulaDomain1.pg FortLewis/Authoring/Templates/Misc/FormulaDomain1.pg] --> | ||
* PGML location in OPL: [https://github.com/openwebwork/webwork-open-problem-library/blob/master/OpenProblemLibrary/FortLewis/Authoring/Templates/Misc/FormulaDomain1_PGML.pg FortLewis/Authoring/Templates/Misc/FormulaDomain1_PGML.pg] | * PGML location in OPL: [https://github.com/openwebwork/webwork-open-problem-library/blob/master/OpenProblemLibrary/FortLewis/Authoring/Templates/Misc/FormulaDomain1_PGML.pg FortLewis/Authoring/Templates/Misc/FormulaDomain1_PGML.pg] | ||
Line 16: | Line 16: | ||
<tr valign="top"> | <tr valign="top"> | ||
<th> PG problem file </th> | <th style="width: 50%"> PG problem file </th> | ||
<th> Explanation </th> | <th> Explanation </th> | ||
</tr> | </tr> | ||
Line 42: | Line 42: | ||
DOCUMENT(); | DOCUMENT(); | ||
loadMacros( | loadMacros('PGstandard.pl','MathObjects.pl','PGML.pl','PGcourse.pl'); | ||
); | |||
TEXT(beginproblem()); | TEXT(beginproblem()); | ||
Line 54: | Line 50: | ||
<p> | <p> | ||
<b>Initialization:</b> | <b>Initialization:</b> | ||
</p> | </p> | ||
</td> | </td> | ||
Line 95: | Line 90: | ||
<td style="background-color:#ffdddd;border:black 1px dashed;"> | <td style="background-color:#ffdddd;border:black 1px dashed;"> | ||
<pre> | <pre> | ||
BEGIN_PGML | |||
a. Enter the answer [`` [$answer1]= ``] [__]{$answer1} | |||
b. Enter the answer [`` [$answer2]= ``] [__]{$answer2} | |||
$ | |||
[@ helpLink('formulas') @]* | |||
END_PGML | |||
$ | |||
</pre> | </pre> | ||
<td style="background-color:#ffcccc;padding:7px;"> | <td style="background-color:#ffcccc;padding:7px;"> | ||
Line 117: | Line 103: | ||
Notice that in this multipart question we have grouped the text for each part together in a block, put each answer blank on a new line immediately below each block of text, and added extra space between each part. This should make the question easy to read both in HTML and PDF format. | Notice that in this multipart question we have grouped the text for each part together in a block, put each answer blank on a new line immediately below each block of text, and added extra space between each part. This should make the question easy to read both in HTML and PDF format. | ||
</p> | </p> | ||
<p>It is possible to get diagnostic information about the answer checker if one replaces the <code>{$answer1}</code> with <code>{$answer1->cmp(diagnostics=>1)}</code>. When diagnostics are turned on and a student answer is submitted, you will get a graph of the correct answer and the student answer on the same graph, as well as a table that specifies which test points were used by the answer checker, and how much of a difference there was between the student answer and the correct answer at these checkpoints. To test the reliability of your answer checker, it is good to click the reload button on your browser several times after a student answer has been submitted, since reloading changes the test points used. | |||
<p> | |||
It is possible to get diagnostic information about the answer checker | |||
</p> | </p> | ||
</td> | </td> |
Revision as of 15:37, 4 April 2023
Answer is a Function with Domain Issues

This PG code shows how to set the domain and test points for a formula.
- PGML location in OPL: FortLewis/Authoring/Templates/Misc/FormulaDomain1_PGML.pg
PG problem file | Explanation |
---|---|
Problem tagging: |
|
DOCUMENT(); loadMacros('PGstandard.pl','MathObjects.pl','PGML.pl','PGcourse.pl'); TEXT(beginproblem()); |
Initialization: |
Context("Numeric"); $a = random(2,5,1); $answer1 = Compute("sqrt(x-$a)"); $answer1->{limits} = [$a+1,$a+4]; $answer2 = Compute("ln(abs( x / (x-$a) ))"); $answer2->{test_points} = [[-5],[-4],[1],[$a-1],[7],[8]]; |
Setup:
We restrict the domain of function evaluation using
The domain for It is possible to set the domain once for all of the functions within a particular context. For more details, please see formula test points in the index of problem techniques. |
BEGIN_PGML a. Enter the answer [`` [$answer1]= ``] [__]{$answer1} b. Enter the answer [`` [$answer2]= ``] [__]{$answer2} [@ helpLink('formulas') @]* END_PGML |
Main Text: Notice that in this multipart question we have grouped the text for each part together in a block, put each answer blank on a new line immediately below each block of text, and added extra space between each part. This should make the question easy to read both in HTML and PDF format. It is possible to get diagnostic information about the answer checker if one replaces the |
Context()->texStrings; BEGIN_SOLUTION ${PAR}SOLUTION:${PAR} Solution explanation goes here. END_SOLUTION Context()->normalStrings; COMMENT('MathObject version.'); ENDDOCUMENT(); |
Solution: |