// Numbas version: finer_feedback_settings {"name": "Differentiation: Derivative of a graph. I", "extensions": ["jsxgraph"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"name": "Differentiation: Derivative of a graph. I", "statement": "
This is a non-calculator question
", "advice": "There are two main ways of thinking about this. Different people have different preferences.
1) This is identical to being asked: \"A displacement-time graph is given, select the corresponding velocity-time graph\". Hence use the same reasoning as in previous questions (when is the velocity positive, negative, zero.)
2) The derivative tells you about the gradient of the original graph. Thus, you want to ask yourself \"when is the gradient positive, when is the gradient negative, when is the gradient zero\".
", "extensions": ["jsxgraph"], "type": "question", "metadata": {"licence": "Creative Commons Attribution 4.0 International", "description": "A graph is drawn. A student is to identify the derivative of this graph from four other graphs. There are four version of this question: I: cubic, II: linear, III: quadratic, IV: sinusoisal.
"}, "variable_groups": [], "preamble": {"js": "", "css": ""}, "variables": {"root2": {"name": "root2", "templateType": "anything", "group": "Ungrouped variables", "description": "", "definition": "root1 - random(1..4 #0.5)"}, "root1": {"name": "root1", "templateType": "anything", "group": "Ungrouped variables", "description": "", "definition": "random(1..3 #0.5)"}, "a": {"name": "a", "templateType": "anything", "group": "Ungrouped variables", "description": "", "definition": "random(1,-1)"}}, "tags": [], "parts": [{"type": "1_n_2", "distractors": ["", "", "", ""], "matrix": ["2", "0", 0, 0], "displayColumns": 0, "variableReplacements": [], "maxMarks": "2", "unitTests": [], "choices": ["{plotpoly(2,{root1},{root2},{a})}
", "{plotpoly(3,{root1},{root2},{a})}
", "{plotpoly(4,{root1},{root2},{a})}
", "{plotpoly(5,{root1},{root2},{a})}
"], "showCorrectAnswer": true, "variableReplacementStrategy": "originalfirst", "shuffleChoices": true, "prompt": "{plotpoly(1,{root1},{root2},{a})}
\nSelect the graph that shows the derivative of of the graph above.
\n", "minMarks": 0, "displayType": "radiogroup", "showFeedbackIcon": true, "customMarkingAlgorithm": "", "scripts": {}, "extendBaseMarkingAlgorithm": true, "marks": 0}], "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["root1", "root2", "a"], "rulesets": {}, "functions": {"plotpoly": {"type": "html", "parameters": [["n", "number"], ["r1", "number"], ["r2", "number"], ["a", "number"]], "language": "javascript", "definition": "// This function creates the board and sets it up, then returns an\n// HTML div tag containing the board.\n\n//Put in your values of x here\n\nvar x_min = -4;\nvar x_max = 4;\nvar y_min = -6;\nvar y_max = 6;\n\n\n// First, make the JSXGraph board.\n// The function provided by the JSXGraph extension wraps the board up in \n// a div tag so that it's easier to embed in the page.\nvar div = Numbas.extensions.jsxgraph.makeBoard('400px','400px',\n//{boundingBox: [-8,10,8,-10],\n {boundingBox: [x_min,y_max,x_max,y_min], \n axis: false,\n showNavigation: false,\n grid: true\n});\n\n\n\n\n// div.board is the object created by JSXGraph, which you use to \n// manipulate elements\nvar board = div.board; \n\n// create the x-axis.\nvar xaxis = board.create('line',[[0,0],[1,0]], { strokeColor: 'black', fixed: true});\nvar xticks = board.create('ticks',[xaxis,1],{\n drawLabels: false,\n label: {offset: [-4, -10]},\n minorTicks: 0\n});\n\n// create the y-axis\nvar yaxis = board.create('line',[[0,0],[0,1]], { strokeColor: 'black', fixed: true });\nvar yticks = board.create('ticks',[yaxis,1],{\ndrawLabels: false,\nlabel: {offset: [-20, 0]},\nminorTicks: 0\n});\n\n\n // PUT YOUR FUNCTION HERE\n\n\nif(n==1)\n board.create('functiongraph',[function(x){ return a*(x*x*x/3 + x*x*(r2+r1)/2 + r1*r2*x);},x_min,x_max]);\nelse if (n==2)\n board.create('functiongraph',[function(x){ return a*(x+r1)*(x+r2);},x_min,x_max]);\nelse if (n==3)\n board.create('functiongraph',[function(x){ return -a*(x+r1)*(x+r2);},x_min,x_max]);\nelse if (n==4)\n board.create('functiongraph',[function(x){ return a*(x+r1+1)*(x+r2-1);},x_min,x_max]);\nelse if (n==5)\n board.create('functiongraph',[function(x){ return -a*(x+r1-1)*(x+r2-1);},x_min,x_max]);\n\nreturn div;"}}, "contributors": [{"name": "Lovkush Agarwal", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1358/"}, {"name": "Xiaodan Leng", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/2146/"}]}]}], "contributors": [{"name": "Lovkush Agarwal", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1358/"}, {"name": "Xiaodan Leng", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/2146/"}]}