size(6.5cm,6.5cm);
import olympiad;
pair origin, xhat, yhat, zhat;
origin=(0,0); xhat=-(1,1); yhat=(1,0); zhat=(0,1);
draw(circle(origin,1));
draw(ellipse(origin,1,2/5),dashed); //major axis = 2, minor axis = 4/5
draw(origin--zhat,Arrow);
label("$\hat{\mathbf{z}}=\left|0\right\rangle$",zhat,N);
label("$-\hat{\mathbf{z}}=\left|1\right\rangle$",-zhat,S);
draw(origin--yhat,Arrow);
label("$\hat{\mathbf{y}}$",yhat,E);
pair intersection;
intersection = 2/sqrt(29)*xhat;
draw(origin--intersection,Arrow);
label("$\hat{\mathbf{x}}$",intersection,SW);
pair psipoint = 0.6*expi(4*pi/13);
pair psiprime = psipoint - (0,0.7);
draw(origin--psipoint);
dot(psipoint);
label("$\left|\psi\right\rangle$",psipoint,NE);
draw(psipoint--psiprime--origin,dotted);
path thetaArc,phiArc;
thetaArc=Arc(origin,0.15,degrees(4*pi/13),90);
phiArc=Arc(origin,0.1,degrees(angle(psiprime)),degrees(-3*pi/4));
draw(thetaArc);
label("$\theta$",thetaArc);
draw(phiArc);
label("$\phi$",phiArc,S);