\documentstyle[11pt]{article}
\pagestyle{empty}
\oddsidemargin=-0.25in
\topmargin=-0.85in
\textheight=9.75in
\textwidth=7.0in

% define numbered list
\newcounter{nnl}
\def\nlist{\list{\arabic{nnl}.\hfill}{\usecounter{nnl}\leftmargin=15pt
        \labelsep=5pt\labelwidth=10pt\itemsep=15pt}}
\let\endnlist=\endlist

% define lettered list
\newcounter{nal}
\def\alist{\list{\alph{nal}.\hfill}{\usecounter{nal}\leftmargin=15pt
        \labelsep=5pt\labelwidth=10pt\topsep=0pt}}
\let\endalist=\endlist

% define indented lettered list
\def\ialist{\list{\alph{nal}.\hfill}{\usecounter{nal}\leftmargin=45pt
        \labelsep=5pt\labelwidth=10pt\itemsep=-3pt\topsep=0pt}}
\let\endialist=\endlist

\parindent=0pt

\begin{document}

\begin{center}
\bf{Physics 606} \\
\bf{Final Exam Project} \\
\end{center}
\noindent{The completed projects are due no later than 5:00 P.M. December 10, 1999. Please place the report in my department mailbox in Overman 104}
%\end{center}

\vspace*{20pt}
 
\begin{nlist}

\item Consider a scalar field $\phi$ in two dimensions. Assume that 
$\phi = \phi(x,y)$.  $\phi$ is to satisfy the linear partial differential
equation
\begin{equation}
\nabla^2 \phi =  x^2 + y^2
\end{equation}
subject to the boundary conditions:
\begin{eqnarray}
\phi(0,y) &=& sin(\pi y)  \\
\phi(1,y) &=& e^{\pi} sin(\pi y) + \frac {1} {2}  y^2 \\
\phi(x,0) &=& 0  \\
\phi(x,1) &=& \frac {1} {2} x^2
\end{eqnarray}
This project involves writing a program in the f90 language to implement the SOR
method to solve the given Poisson equation for $\phi$ at all interior points.
Your solution must consist of the working f90 program listing, a surface plot of
the final solution accurate to one part in a million, and the solution of the equation with the optimum relaxation parameter.  This last part involves you
running the SOR code for a sequence of test runs and recording the value of
the relaxation parameter which gives the target accuracy in the fewest number
of iterations.
\item Write a f90 code to solve the wave equation for a scalar field in one
spatial dimension plus time.  Specifically,  you are to use the second order 
accurate algorithm:
\begin{equation}
phi(i,n+1) = - phi(i,n-1) + 2 ( 1 - \xi^{2}) phi(i,n) + \xi^{2} ( phi(i-1,n) + phi(i+1,n))
\end{equation} 
to evolve the interior points. In the above recall that $\xi = cdt/dx$. For boundary conditions, at the left end use the
condition that $\phi(1,n) = 0 $ and at the right end use the Sommerfeld boundary condtion
worked out in class.  
\begin{ialist}
\item Initial data: $\phi(x,t=0) = A e^{-(x - x_{0})^{2}/{2 \sigma^{2}}}$ and
$\partial_{t} \phi(x,t=0) = 0 $.  Put $A=1.0$, $\sigma = 5 dx $, $x_0 =$ middle of 
x range.
\item $N = 200$ spatial points, running the simulation until the initial wave that gets
to the right end has time to move off the mesh.
\item for every 10 computational cycles write out the phi(i,n+1) for all values of $i$ to
a file for later visualization
\item Make a surface plot of the computed values of $\phi$ at
each spatial point for each of the time slices at which the phi values are written out.
\item Submit the computer program listing that you wrote and got working.  
\item Submit a discussion of the evlolution including a complete specification of the
parameters you used in your simulations.  
\end{ialist}



\end{nlist}

\end{document}
