# Quiz #5

Question #1: If I have a vector $v = (v_x, v_y, v_z)$ then $(r v_x/\ell, r v_y/\ell, r v_z/\ell)$ where $\ell = \sqrt{ v_x^2 + v_y^2 + v_z^2 }$ and with $-1/2 \leq r \leq 1/2$ is the parametric equation for a line segment of length $1$ which passes through the origin in the direction of $v$.

Let $c(t) = (x(t), y(t), z(t))$ be a curve in three dimensions. If you take the cross product of the vector from the origin to $c(t)$ with the tangent vector of $c(t)$, then (most of the time) you have a vector which is perpendicular to the curve. There are some rare exceptions when the distance vector of the curve is parallel to the tangent vector.

Write a function ribonify which accepts a curve $c(t) = (x(t), y(t), z(t))$ and returns the equation of a surface such that for each point $c(t_0)$ on the curve, the surface in the range $-1/2 \leq r \leq 1/2$ is a line segment of length $1$, centered at $c(t_0)$, which is perpendicular to the curve and the vector from the origin to $c(t_0)$.

If your program is correct, you should be able to reproduce the example below.

Example:
> with(plots);
> swish:=[30*t*(2*Pi-t)*cos(3*t)/(2*Pi)^2,30*t*(2*Pi-t)*sin(3*t)/(2*Pi)^2,10*cos(t/2)];
> spacecurve(swish,t=0..2*Pi);

> plot3d(ribonify(swish), r=-0.5..0.5,t=0..2*Pi,grid=[3,100],scaling=constrained);

Give the example of a curve $c_1(t) = (x_1(t), y_1(t), z_1(t))$ and an interval for a range of $t$ ...
(a) where the curve is non-zero but ribonify is undefined everywhere in that interval
(b) where the curve is non-zero but ribonify is defined except at a single point or a few points in the interval

You are expected to work alone on this assignment. Any indication of academic dishonesty will result in a $0$ for the assignment and possible higher penalties.