$refreshCachedImages = 1;
DOCUMENT();
loadMacros(
"PGstandard.pl",
"MathObjects.pl",
"AnswerFormatHelp.pl",
"PGgraphmacros.pl",
"unionTables.pl",
"PGanswermacros.pl",
"PGchoicemacros.pl",
"PGgraphmacros.pl",
"extraAnswerEvaluators.pl",
"parserCustomization.pl"
);
TEXT(beginproblem());
Context(Complex)->variables->are(t=>"Real",F=>"Real",a=>"Real",w=>"Real");
$showPartialCorrectAnswers = 1;
$a = random(1,9,1);
$b = random(2,1,9);
$w_max = 10;
$func = Formula("$a*j*w/($b + (j*w)**2)");
@eq = ("\( y=-2f(-t) \)",
"\( y=2f(-t) \)",
"\( y=-2f(t) \)",
"\( y=-f \left( - \frac{1}{2} t \right) \)",
"\( y=-\frac{1}{2} f(-t) \)",
"\( y=f \left( \frac{1}{2} t \right) \)" );
@descript = ("is a reflection about both the \(t\)-axis and \(y\)-axis as well as a vertical stretch by a factor of 2.",
"is a horizontal reflection about the \(y\)-axis as well as a vertical stretch by a factor of 2.",
"is a vertical reflection about the \(t\)-axis as well as a vertical stretch by a factor of 2.",
"is a reflection about both the \(t\)-axis and \(y\)-axis as well as a horizontal stretch by a factor of 2.");
$p1[0] = FEQ("sin(t) for t in <-1,10> using color:blue and weight:2");
$p2[0] = FEQ("cos(t) for t in <-1,10> using color:blue and weight:2");
$p3[0] = FEQ("exp(t) for t in <-1,10> using color:blue and weight:2");
$p4[0] = FEQ("sin(t+1) for t in <-1,10> using color:blue and weight:2");
$p1[1] = FEQ(qq! sin(t)- cos(t-2) for t in <-1,10> using color:blue and weight:2!);
##$graphf = init_graph(@opts);
## (plot_functions($graphf,"$f for x in <-$dom,$dom> using color:blue"))[0]->steps(250);
## $labelf = new Label(@gr_lab, 'y = f(x)', 'blue' , 'center', 'center');
## $graphf->lb($labelf);
$gr = init_graph(-1,$w_max,10,4,'axes'=>[0,0],'ticks'=>[10,6] );
$gr->lb('reset');
for ($i = -1; $i <= $wmax; $i++) { if ($i != 0) {
$gr->lb(new Label(-.1,$i,$i,'black','right','middle')) }};
for ($i = -1; $i <= 5; $i++) {
$gr->lb(new Label(2*$i,-.2,2*$i,'black','center','top')) };
$gr->lb(new Label(-.2,4.5,"y",'black','right','top'));
$gr->lb(new Label(9.5,-.2,"t",'black','right','top'));
$gr->lb(new Label(3.5,4,"s(t)",'black','left','bottom'));
## parentheses in ($fn1) are necessary
($f1n) = plot_functions( $gr, $p1[1] );
$f1n->steps(200);
$orig = image(insertGraph($gr),width => 400,height => 300,tex_size => 600);
$F = random(1,5,1);
$g[0] = "abs($a*j*w/($b + (j*w)**2)) for w in <0,$w_max> using color:blue and weight:2";
$g[1] = "abs(2*$a*j*w/($b + (j*w)**2)) for w in <0,$w_max> using color:blue and weight:2";
$g[2] = "abs($a*j*w/($b - (j*w)**2)) for w in <0,$w_max> using color:blue and weight:2";
$g[4] = "abs($a*j*w/($b + 10*(j*w)**2)) for w in <0,$w_max> using color:blue and weight:2";
$g[3] = "abs($a*j*w/($b + (j*w))) for w in <0,$w_max> using color:blue and weight:2";
$g[5] = "abs($a*j*w/(($b + (j*w))**2)) for w in <0,$w_max> using color:blue and weight:2";
for ($j = 0; $j <=5; $j++) {
$graph[$j] = init_graph(0,-1,$w_max,2,'axes'=>[0,0],'ticks'=>[8,8] );
};
for ($j = 0; $j <=5; $j++) {
$graph[$j]->lb('reset');
$graph[$j]->lb(new Label(-.07,-1,-1,'black','right','middle'));
$graph[$j]->lb(new Label(-.07,1,1,'black','right','middle'));
for ($i = -3; $i <= 3; $i++) { if ($i != 0) {
$graph[$j]->lb(new Label(0.25*$i,-.2,0.25*$i,'black','center','top')) }};
$graph[$j]->lb(new Label(-.05,1.9,"|H|",'black','right','top'));
$graph[$j]->lb(new Label(0.95,0.1,"w",'black','right','bottom'));
plot_functions( $graph[$j], $g[$j]);
$fig[$j] = image(insertGraph($graph[$j]),width => 240,height => 180,tex_size => 200);
};
# $pick = random(0,3,1);
# if ( $pick != 0 ) { $temp_eq = $eqn[0];
# $temp_gr = $fig[0];
# $eq[0] = $eq[$pick];
# $fig[0] = $fig[$pick];
# $eq[$pick] = $temp_eq;
# $fig[$pick] = $temp_gr};
$mc = new_multiple_choice();
$mc->qa('On a separate piece of paper, sketch an accurate graph of the magnitude of this function, \( |H(w)| \), for \( w \) and \( w \in [0, $w_max] \). Which (if any) of the graphs below matches the graph you drew?','$fig[0]');
$mc->extra('$fig[1] $BR $BITALIC(click on image to enlarge)$EITALIC',
'$fig[2] $BR $BITALIC(click on image to enlarge)$EITALIC',
'$fig[3] $BR $BITALIC(click on image to enlarge)$EITALIC',
'$fig[4] $BR $BITALIC(click on image to enlarge)$EITALIC',
'$fig[5] $BR $BITALIC(click on image to enlarge)$EITALIC');
$mc->makeLast('None of the above');
## force a refresh of the image after changes
$refreshCachedImages = 1;
Context()->texStrings;
BEGIN_TEXT
Plotting graphs of complex functions
$PAR
Consider the complex valued function
$BR
$BR
\( H(w) = $func \).
$BR
\{ $mc->print_q() \} $BR
\{ $mc->print_a() \}
END_TEXT
Context()->normalStrings;
ANS(radio_cmp($mc->correct_ans));
## force a refresh of the image after changes
$refreshCachedImages = 1;
Context()->texStrings;
SOLUTION(EV3(<<'END_SOLUTION'));
$PAR
$BBOLD SOLUTION $EBOLD
$PAR
Setting \( F = $F \) gives the function \( y = \sin(2 \pi $F t) \). This has $F cycles in one unit of time. It starts at zero at t = 0, since it is a sine and is positive for the first values greater than zero. Therefore the correct graph is
$PAR
$BCENTER
$fig[0]
$ECENTER
$BR
which is answer \{ $mc->correct_ans \}.
END_SOLUTION
Context()->normalStrings;
ENDDOCUMENT();