Question: how do i rotate the rays coming into the parabola?

> restart; with(plots); with(plottools);
> mirror := proc (x) options operator, arrow; x^2 end proc; slope := proc (x) options operator, arrow; 2*x end proc; width := .5; height := 1; n := 25;
> mirrorplot := plot(mirror(x), x = -width .. width, y = 0 .. height, axes = NONE, scaling = CONSTRAINED, color = black); display(mirrorplot);
> raysin := {}; raysout := {}; for i from 0 to n do x := -width+2*i*width/n; y := mirror(x); raysin := `union`(raysin, {line([x, height], [x, y])}); dr := slope(x); if abs(dr) > 0.1e-2 then m := (dr^2-1)/(2*dr); ix := (height-y)/m; if ix < -width then tx := -width; ty := y+m*(tx-x) elif ix > width then tx := width; ty := y+m*(tx-x) else ty := height; tx := (ty-y)/m+x end if; raysout := `union`(raysout, {line([x, y], [tx, ty])}) else tx := x; ty := height; raysout := `union`(raysout, {line([x, y], [tx, ty])}) end if end do; rdrawin := display(raysin, color = blue, axes = NONE, scaling = CONSTRAINED); rdrawout := display(raysout, color = red, axes = NONE, scaling = CONSTRAINED); unassign('x'); unassign('y'); display({rdrawin, mirrorplot, rdrawout});
{}
{}

 

so as you can see here's the maple commands. so if you could help me out that would be sweet. thanks. all i need is some help on how to rotate the rays coming in based on a theta, with the parabola staying the same.

Please Wait...