From eb6b8aa26f17ab6818e0bc374ff8f10a684aa9b0 Mon Sep 17 00:00:00 2001 From: Sylvia Pearce Date: Fri, 21 Feb 2014 18:03:02 -0500 Subject: [PATCH] Add XML information from Appendix E to Common and Advanced Problems --- .../source/Images/NumericalInput_Complex.png | Bin 0 -> 63304 bytes .../source/advanced_problems.rst | 168 ++++++- .../course_authors/source/appendices/e.rst | 4 +- .../course_authors/source/common_problems.rst | 451 +++++++++++++++++- 4 files changed, 608 insertions(+), 15 deletions(-) create mode 100644 docs/en_us/course_authors/source/Images/NumericalInput_Complex.png diff --git a/docs/en_us/course_authors/source/Images/NumericalInput_Complex.png b/docs/en_us/course_authors/source/Images/NumericalInput_Complex.png new file mode 100644 index 0000000000000000000000000000000000000000..134f14bba44332c3d4c7ae14d410d4d6c4545071 GIT binary patch literal 63304 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 z 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 +

Make a voltage divider that splits the provided voltage evenly.

+ +
+ +
+ + dc_value = "dc analysis not found" + for response in submission[0]: + if response[0] == 'dc': + for node in response[1:]: + dc_value = node['output'] + if dc_value == .5: + correct = ['correct'] + else: + correct = ['incorrect'] + +
+ +

Make a high pass filter.

+
+ +
+ + ac_values = None + for response in submission[0]: + if response[0] == 'ac': + for node in response[1:]: + ac_values = node['NodeA'] + print "the ac analysis value:", ac_values + if ac_values == None: + correct = ['incorrect'] + elif ac_values[0][1] < ac_values[1][1]: + correct = ['correct'] + else: + correct = ['incorrect'] + +
+ +
+

Explanation

+

A voltage divider that evenly divides the input voltage can be formed with two identically valued resistors, with the sampled voltage taken in between the two.

+

+

A simple high-pass filter without any further constaints can be formed by simply putting a resister in series with a capacitor. The actual values of the components do not really matter in order to meet the constraints of the problem.

+

+
+
+ + .. _Custom JavaScript Display and Grading: Custom JavaScript Display and Grading @@ -474,7 +530,32 @@ To create a image mapped input problem: #. In the component editor, replace the example code with your own code. #. Click **Save**. +**Problem Code**: +.. code-block:: xml + + +

Example Problem

+ +

In the image below, click the triangle.

+ + + + +
+ +**Problem Template** + +.. code-block:: xml + + + +

In the image below, click the triangle.

+ + + + +
.. _Math Expression Input: @@ -492,6 +573,16 @@ Unlike numerical input problems, which only allow integers and a few select cons When you create a math expression input problem in Studio, you'll use `MathJax `_ to change your plain text into "beautiful math." For more information about how to use MathJax in Studio, see :ref:`MathJax in Studio`. +**Notes for Students** + +When you answer a math expression input problem, follow these guidelines. + +* Use standard arithmetic operation symbols. +* Indicate multiplication explicitly by using an asterisk (*). +* Use a caret (^) to raise to a power. +* Use an underscore (_) to indicate a subscript. +* Use parentheses to specify the order of operations. + The LMS automatically converts the following Greek letter names into the corresponding Greek characters when a student types them in the answer field: .. list-table:: @@ -541,10 +632,79 @@ To create a math expression input problem: #. In the component editor, replace the example code with your own code. #. Click **Save**. +.. list-table:: + :widths: 20 80 + :header-rows: 1 + + * - ```` + - + * - ```` + - This tag includes the ``size`` and ``label`` attributes. + * - `` + +

Let x be a variable, and let n be an arbitrary constant. What is the derivative of xn?

+ + + + + + + +
+

Explanation or Solution Header

+

Explanation or solution text

+
+
+ + +**Template XML** + +.. code-block:: xml + + +

Problem text

+ + + + + + + + +
+

Explanation or Solution Header

+

Explanation or solution text

+
+
+
+ + + For more information, see `Symbolic Response `_. - .. _Problem with Adaptive Hint: Problem with Adaptive Hint diff --git a/docs/en_us/course_authors/source/appendices/e.rst b/docs/en_us/course_authors/source/appendices/e.rst index 8443e213d3..50a6d2d673 100644 --- a/docs/en_us/course_authors/source/appendices/e.rst +++ b/docs/en_us/course_authors/source/appendices/e.rst @@ -619,8 +619,8 @@ Although you can create multiple choice problems by using the Simple Editor in S .. _Numerical Response: -Numerical Response ------------------- +Numerical Response (Numerical Input Problems) +--------------------------------------------- The Numerical Response input type accepts a line of text input from the student and evaluates the input for correctness based on its numerical value. The input diff --git a/docs/en_us/course_authors/source/common_problems.rst b/docs/en_us/course_authors/source/common_problems.rst index 0d32327f8f..1c4134cec4 100644 --- a/docs/en_us/course_authors/source/common_problems.rst +++ b/docs/en_us/course_authors/source/common_problems.rst @@ -279,8 +279,64 @@ following. Dropdown Problem XML ========================== +**Problem Code:** +.. code-block:: xml + +

+ This exercise first appeared in HarvardX's PH207x Health in Numbers: Quantitative Methods in Clinical & Public Health Research course, fall 2012. +

+

What type of data are the following?

+

Age:

+ + + +

Age, rounded to the nearest year:

+ + + +

Life stage - infant, child, and adult:

+ + + +
+ +**Template** + +.. code-block:: xml + + +

+ Problem text

+ + + + +
+

Explanation or Solution Header

+

Explanation or solution text

+
+
+
+ +.. code-block:: xml + + +

Problem text

+ + options="('A','B')" + correct="A"/> + label="label text" + + + +
+

Explanation or Solution Header

+

Explanation or solution text

+
+
+
.. _Multiple Choice: @@ -353,6 +409,52 @@ following. investigating lateral inhibition using horseshoe crabs. [Explanation] +**Problem Code:** + +.. code-block:: xml + + +

Lateral inhibition, as was first discovered in the horsehoe crab...

+ + + is a property of touch sensation, referring to the ability of crabs to detect nearby predators. + is a property of hearing, referring to the ability of crabs to detect low frequency noises. + is a property of vision, referring to the ability of crabs eyes to enhance contrasts. + has to do with the ability of crabs to use sonar to detect fellow horseshoe crabs nearby. + has to do with a weighting system in the crabs skeleton that allows it to balance in turbulent water. + + + +
+

Explanation

+

Horseshoe crabs were essential to the discovery of lateral inhibition, a property of vision present in horseshoe crabs as well as humans, that enables enhancement of contrast at edges of objects as was demonstrated in class. In 1967, Haldan Hartline received the Nobel prize for his research on vision and in particular his research investigating lateral inhibition using horseshoe crabs.

+
+
+
+ + +**Template** + +.. code-block:: xml + + +

Question text

+ + + Incorrect choice + Correct choice + + + + +
+

Explanation or solution header

+

Explanation or solution text

+
+
+
+ + .. _Numerical Input: ******************* @@ -363,7 +465,7 @@ In numerical input problems, students enter numbers or specific and relatively simple mathematical expressions to answer a question. .. image:: Images/NumericalInputExample.gif - :alt: Image of a numerical input problem + :alt: Image of a simple numerical input problem Note that students' responses don't have to be exact for these problems. You can specify a margin of error, or tolerance. For more information, see the instructions below. @@ -378,11 +480,108 @@ example shows the way Studio renders students' text responses in numerical input problems. To see more examples, scroll down to **Examples**. .. image:: Images/Math5.gif - :alt: Image of Studio's rendering of numerical input responses + :alt: Image of a numerical input probem rendered by Studio -================================== -Create a Numerical Input Problem -================================== +================== +Student Answers +================== + +.. _Math Expression Syntax: + +Math Expression Syntax +---------------------- + +In numerical input problems, the student's input may be more complicated than a +simple number. Expressions like ``sqrt(3)`` and even ``1+e^(sin(pi/2)+2*i)`` +are valid, and evaluate to 1.73 and -0.13 + 2.47i, respectively. + +A summary of the syntax follows: + +Numbers +~~~~~~~ + +Accepted number types: + +- Integers: '2520' +- Normal floats: '3.14' +- With no integer part: '.98' +- Scientific notation: '1.2e-2' (=0.012) +- More s.n.: '-4.4e+5' = '-4.4e5' (=-440,000) +- Appending SI suffixes: '2.25k' (=2,250). The full list: + + ====== ========== =============== + Suffix Stands for One of these is + ====== ========== =============== + % percent 0.01 = 1e-2 + k kilo 1000 = 1e3 + M mega 1e6 + G giga 1e9 + T tera 1e12 + c centi 0.01 = 1e-2 + m milli 0.001 = 1e-3 + u micro 1e-6 + n nano 1e-9 + p pico 1e-12 + ====== ========== =============== + +The largest possible number handled currently is exactly the largest float +possible (in the Python language). This number is 1.7977e+308. Any expression +containing larger values will not evaluate correctly, so it's best to avoid +this situation. + +Default Constants +~~~~~~~~~~~~~~~~~ + +Simple and commonly used mathematical/scientific constants are included by +default. These include: + +- ``i`` and ``j`` as ``sqrt(-1)`` +- ``e`` as Euler's number (2.718...) +- ``pi`` +- ``k``: the Boltzmann constant (~1.38e-23 in Joules/Kelvin) +- ``c``: the speed of light in m/s (2.998e8) +- ``T``: the positive difference between 0K and 0°C (285.15) +- ``q``: the fundamental charge (~1.602e-19 Coloumbs) + +Operators and Functions +~~~~~~~~~~~~~~~~~~~~~~~ + +As expected, the normal operators apply (with normal order of operations): +``+ - * / ^``. Also provided is a special "parallel resistors" operator given +by ``||``. For example, an input of ``1 || 2`` would represent the resistance +of a pair of parallel resistors (of resistance 1 and 2 ohms), evaluating to 2/3 +(ohms). + +At the time of writing, factorials written in the form '3!' are invalid, but +there is a workaround. Students can specify ``fact(3)`` or ``factorial(3)`` to +access the factorial function. + +The default included functions are the following: + +- Trig functions: sin, cos, tan, sec, csc, cot +- Their inverses: arcsin, arccos, arctan, arcsec, arccsc, arccot +- Other common functions: sqrt, log10, log2, ln, exp, abs +- Factorial: ``fact(3)`` or ``factorial(3)`` are valid. However, you must take + care to only input integers. For example, ``fact(1.5)`` would fail. +- Hyperbolic trig functions and their inverses: sinh, cosh, tanh, sech, csch, + coth, arcsinh, arccosh, arctanh, arcsech, arccsch, arccoth + + +================================= +Create a Numerical Input Problem +================================= + +You can create numerical problems in the Simple Editor and in the Advanced Editor regardless of the answer to the problem. If the text of your problem doesn't include any italics, bold formatting, or special characters, you can create the problem in the Simple Editor. If the text of your problem contains special formatting or characters, or if your problem contains a Python script, you'll use the Advanced Editor. + +For example, the following example problems require the Advanced Editor. + +.. image:: Images/NumericalInput_Complex.png + :alt: Image of a more complex numerical input problem + +For more information about including a Python script in your problem, see :ref:`Custom Python Evaluated Input`. + +Create a Numerical Input Problem in the Simple Editor +------------------------------------------------------- #. Under **Add New Component**, click **Problem**. #. In the **Select Problem Component Type** screen, click **Numerical @@ -414,7 +613,7 @@ Create a Numerical Input Problem #. On the **Settings** tab, specify the settings that you want. #. Click **Save**. -For the example problem above, the text in the Problem component is the +For the first example problem above, the text in the Problem component is the following. :: @@ -427,6 +626,11 @@ following. As of edX's first birthday, in May 2013, edX students live in 193 different countries. [explanation] + +Create a Numerical Input Problem in the Advanced Editor +------------------------------------------------------- + + **Examples** The following are a few more examples of the way that Studio renders numerical input @@ -440,9 +644,136 @@ text that students enter. :alt: Image of a numerical input probem rendered by Studio .. image:: Images/Math4.gif :alt: Image of a numerical input probem rendered by Studio +.. image:: Images/Math5.gif + :alt: Image of a numerical input probem rendered by Studio + + +**Problem Code**: + +.. code-block:: xml + + +

Example Problem

+ +

What base is the decimal numeral system in? + + + +

+ +

What is the value of the standard gravity constant g, measured in m/s2? Give your answer to at least two decimal places. + + + + +

+ + + + +

What is the distance in the plane between the points (pi, 0) and (0, e)? You can type math. + + + + +

+ +
+

Explanation

+

The decimal numerical system is base ten.

+

The standard gravity constant is defined to be precisely 9.80665 m/s2. + This is 9.80 to two decimal places. Entering 9.8 also works.

+

By the distance formula, the distance between two points in the plane is + the square root of the sum of the squares of the differences of each coordinate. + Even though an exact numerical value is checked in this case, the + easiest way to enter this answer is to type + sqrt(pi^2+e^2) into the editor. + Other answers like sqrt((pi-0)^2+(0-e)^2) also work. +

+
+
+
+ +**Templates** + +Exact values + +.. code-block:: xml + + + + + + + + +
+ +
+
+
+ +Answers with decimal precision + +.. code-block:: xml + + + + + + + + + +
+ +
+
+
+ +Answers with percentage precision + +.. code-block:: xml + + + + + + + + + +
+ +
+
+
+ +Answers with scripts + +.. code-block:: xml + + + + + + + + + + + + +
+ +
+
+
-For more information, see `Formula Equation Input -`_. .. _Text input: @@ -578,4 +909,106 @@ To change the response field length, change the value of the **size** attribute: Hints and Regular Expressions in Text Input Problems ==================================================== -You can provide hints for common incorrect answers in text input problems. You can also set a text input problem to allow a regular expression as an answer. To do this, you'll have to modify the problem's XML in the Advanced Editor. For more information, see :ref:`String Response`. \ No newline at end of file +You can provide hints for common incorrect answers in text input problems. You can also set a text input problem to allow a regular expression as an answer. To do this, you'll have to modify the problem's XML in the Advanced Editor. For more information, see :ref:`String Response`. + +Although you can create text input problems by using the Simple Editor in Studio, you may want to see or change the problem's underlying XML. For example, you can add hints that appear when students enter common incorrect answers, or modify the problem's XML so that students can submit regular expressions as answers. + +The regular expression that the student enters must contain the part of the answer that the instructor specifies. For example, if an instructor has specified ````, correct answers include ``example answered``, ``two example answers``, or even ``==example answer==``, but not ``examples`` or ``example anser``. + +You can add ``regexp`` to the value of the ``type`` attribute, for example: ``type="ci regexp"`` or ``type="regexp"`` or ``type="regexp cs"``. In this case, any answer or hint will be treated as regular expressions. + +**Sample Problem** + +.. image:: ../Images/TextInputExample.gif + :alt: Image of a string response problem + +**XML Tags** + +.. list-table:: + :widths: 20 80 + + * - ```` + - Indicates that the problem is a text input problem. + * - ```` + - Child of ````. Lists the answer options and contains the ``label`` attribute. + * - ```` (optional) + - Specifies an additional correct answer for the problem. A problem can contain an unlimited number of additional answers. + * - ```` (optional) + - Indicates that the instructor has provided hints for certain common incorrect answers. + * - ```` (optional) + - Child of ````. Specifies the text of the incorrect answer to provide the hint for. Contains answer, type, name. + * - ```` + - Contains the name from ````. Associates the incorrect answer with the hint text for that incorrect answer. + * - ```` + - Indicates the beginning of the text of the hint. + * - ```` + - Indicates the end of the text of the hint. + +**Sample Problem Code** + +.. code-block:: xml + + +

+ This problem is adapted from an exercise that first appeared in MITx's 14.73x The Challenges of Global Poverty course, spring 2013. +

+

What is the technical term that refers to the fact that, when enough people sleep under a bednet, the disease may altogether disappear?

+ + community immunity + population immunity + + + + + + In contact immunity, a vaccinated individual passes along his immunity to another person through contact with feces or bodily fluids. The answer to the question above refers to the form of immunity that occurs when so many members of a population are protected, an infectious disease is unlikely to spread to the unprotected population. + + + + + + Although a firewall provides protection for a population, the term "firewall" is used more in computing and technology than in epidemiology. + + + + + +
+

Explanation

+

The correct answer is herd immunity. As more and more people use bednets, the risk of malaria begins to fall for everyone – users and non-users alike. This can fall to such a low probability that malaria is effectively eradicated from the group (even when the group does not have 100% bednet coverage).

+
+
+
+ +**Template** + +.. code-block:: xml + + +

Problem text

+ + Correct answer 2 + Correct answer 3 + + + + + Text of hint for incorrect answer A + + + + Text of hint for incorrect answer B + + + + Text of hint for incorrect answer C + + + + +
+

Explanation or Solution Header

+

Explanation or solution text

+
+
+
\ No newline at end of file