San Francisco State University master's thesis (sfsuthesis)
The SFSU Computer Science Department's MS thesis template (2024-2025), built on the sfsuthesis class of the SFSU Mathematics template (derived from ucbthesis): abstract, preface and acknowledgments, an introduction, four chapters with figures, equations, tables and code listings, an appendix and a biblatex bibliography.
- Category
- Thesis
- Document class
sfsuthesis(sfsuthesis.cls) — ships with TeX Live- Workflow
- Thesis / dissertation — submissions and revision rounds
- Author
- San Francisco State University, Department of Computer Science
- Source
- San Francisco State University, Department of Computer Science
- Licence
- sfsuthesis.cls: LaTeX Project Public License. The sample text is San Francisco State University, Department of Computer Science's, provided for authors preparing a submission.
These are the publisher’s own files. This project starts from San Francisco State University, Department of Computer Science’s package for this publication — their manuscript, their sfsuthesis.cls, their bibliography style — so what compiles here is what they would have given you.
San Francisco State University, Department of Computer Science serves this exact file to San Francisco State University. Check San Francisco State University, Department of Computer Science’s author pages for the current instructions.
Where this differs from the publisher’s download.
- Note: Prepared by the Department of Computer Science for its MS theses from the Mathematics Department's template; check it against the Graduate Division's current thesis format requirements.
What you get
abstract.tex· 379 Backnowledgments.tex· 227 Bappendix.tex· 2 KBchap1.tex· 3 KBchap2.tex· 9 KBchap3.tex· 1 KBchap4.tex· 4 KBchapter-template.tex· 9 KBfigures/Picture1.jpg· 66 KBfigures/Picture2.jpg· 267 KBfigures/speedup_plot.png· 25 KBintroduction.tex· 2 KBpreface.tex· 126 Breferences.bib· 2 KBsfsuthesis.cls· 26 KBthesis.tex— the file that is compiled · 6 KB
These become your files. Editing them afterwards changes your project and nothing else — a project owns its files from the moment it is made.
Source
abstract.tex · 379 B
% (This file is included by thesis.tex; you do not latex it by itself.)
\begin{abstract}
% The text of the abstract goes here. If you need to use a \section
% command you will need to use \section*, \subsection*, etc. so that
% you don't get any numbering. You probably won't be using any of
% these commands in the abstract anyway.
Begin your abstract here.
\end{abstract}
acknowledgments.tex · 227 B
\begin{acknowledgments}
Normally the Acknowledgments section gives you the opportunity to thank those to whom you are indebted for assistance in the project. This should be done briefly and in good taste.
\end{acknowledgments}appendix.tex · 2 KB
\appendix
\addappheadtotoc
\section{Appendix A: List of California State University Campuses}
Note: not all theses need appendices, this one is provided as an example. Please do not submit your thesis with this particular appendix unless for some reason you need to include a list of all CSU campuses.
\begin{itemize}
\item California State University, Bakersfield
\item California State University Channel Islands
\item California State University, Chico
\item California State University, Dominguez Hills
\item California State University, East Bay
\item California State University, Fresno
\item California State University, Fullerton
\item Humboldt State University
\item California State University, Long Beach
\item California State University, Los Angeles
\item California State University Maritime Academy
\item California State University, Monterey Bay
\item California State University, Northridge
\item California State Polytechnic University, Pomona
\item California State University, Sacramento
\item California State University, San Bernardino
\item San Diego State University
\item San Francisco State University
\item San José State University
\item California Polytechnic State University, San Luis Obispo
\item California State University San Marcos
\item Sonoma State University
\item California State University, Stanislaus
\end{itemize}
\section{Appendix B: Abbreviations of California State University Campuses}
Note: not all theses need appendices, this one is provided as an example. Please do not submit your thesis with this particular appendix unless for some reason you need to include a list of all CSU campuses.
\begin{itemize}
\item CSU Bakersfield
\item CSU Channel Islands
\item Chico State
\item CSU Dominguez Hills
\item Cal State East Bay
\item Fresno State
\item Cal State Fullerton
\item Humboldt State
\item Cal State Long Beach
\item Cal State LA
\item Cal Maritime
\item CSU Monterey Bay
\item CSUN
\item Cal Poly Pomona
\item Sacramento State
\item Cal State San Bernardino
\item San Diego State
\item San Francisco State
\item San José State
\item Cal Poly San Luis Obispo
\item CSU San Marcos
\item Sonoma State
\item Stanislaus State
\end{itemize}
\begin{subappendices}
\subsection{Sub Appendix}
\end{subappendices}
chap1.tex · 3 KB
\chapter{Add a Chapter Title Here if you Wish}
Pellentesque porttitor, velit lacinia egestas auctor, diam eros tempus arcu, nec vulputate augue magna vel risus. Cras non magna vel ante adipiscing rhoncus. Vivamus a mi. Morbi neque. Aliquam erat volutpat. Integer ultrices lobortis eros. Rosa Olin Jackson~\cite{waveshaping} ad litora torquent per conubia nostra.\par
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin semper, ante vitae sollicitudin posuere, metus quam iaculis nibh, vitae scelerisque nunc massa eget pede. Sed velit urna, interdum vel, ultricies vel, faucibus at, quam. Donec elit est, consectetuer eget, consequat quis, tempus quis, wisi. In in nunc. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos.\par
% To remove the numeric value of the subheading below, insert an asterisk after \section (i.e., \section*)
\section{Chapter 1 Heading 3 (subheading)}
\begin{figure}
%Use the scale parameter to size the image
\includegraphics[width=1\textwidth]{figures/Picture1}
% here is an alternate way to scale images based on specific sizes
%\includegraphics[width=5cm, height=4cm]{figures/Picture1}
\label{fig:img1}
\caption{Example of a basic figure title}
\end{figure}
Note that every figure present in the document should be referenced from somewhere within the text. This is an example of a reference to a figure in the thesis: see Fig.~\ref{fig:img1}.
Cras faucibus condimentum odio. Sed ac ligula. Aliquam at eros. Etiam at ligula et tellus ullamcorper ultrices. In fermentum, lorem non cursus porttitor, diam urna accumsan lacus, sed interdum wisi nibh nec nisl. Ut tincidunt volutpat urna. Mauris eleifend nulla eget mauris. Sed cursus quam id felis. Curabitur posuere quam vel nibh. Cras dapibus dapibus nisl.\par
Vestibulum quis dolor a felis congue vehicula. Maecenas pede purus, tristique ac, tempus eget, egestas quis, mauris. Curabitur non eros. Nullam hendrerit bibendum justo. Fusce iaculis, est quis lacinia pretium, pede metus molestie lacus, at gravida wisi ante at libero. Quisque ornare placerat risus. Ut molestie magna at mi. Integer aliquet mauris et nibh. Ut mattis ligula posuere velit. Nunc sagittis.\par
\subsection{\emph{Chapter 1 Heading 4 (Sub-heading)}}
Curabitur varius fringilla nisl. Duis pretium mi euismod erat. Maecenas id augue. Nam vulputate. Duis a quam non neque lobortis malesuada. Praesent euismod. Donec nulla augue, venenatis scelerisque, dapibus a, consequat at, leo. Pellentesque libero lectus, tristique ac, consectetuer sit amet, imperdiet ut, justo. Sed aliquam odio vitae tortor. Proin hendrerit tempus arcu. In hac habitasse platea dictumst. Suspendisse potenti.\par
chap2.tex · 9 KB
\chapter{}
\section{Sub-heading}
Vivamus vitae massa adipiscing est lacinia sodales. Donec metus massa, mollis vel, tempus placerat, vestibulum condimentum, ligula. Nunc lacus metus, posuere eget, lacinia eu, varius quis, libero. Aliquam nonummy adipiscing augue. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim.
Every table present in the document should be referenced from somewhere within the text. This is an example of a reference to a table: see Tab.~\ref{table:simple} and Tab.~\ref{table:less_simple}.
% This is an example of a simple table
\begin{table}
\centering
\begin{tabular}{|c|c|c|}
\hline
1-2-3 & yes & no \\
\hline
Multiplan & yes & yes \\
\hline
Wordstar & no & no \\
\hline
\end{tabular}
\caption{This is an example of a simple table.}
\label{table:simple}
\end{table}
Fusce est. Vivamus a tellus. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Aenean nec lorem. In porttitor.\par
Donec laoreet nonummy augue. Suspendisse dui purus, scelerisque at, vulputate vitae, pretium mattis, nunc. Mauris eget neque at sem venenatis eleifend. Ut nonummy. Fusce aliquet pede non pede. Suspendisse dapibus lorem pellentesque magna. Integer nulla. Donec blandit feugiat ligula.\par
% This is an example of a more complex table
\begin{table}
\centering
\begin{tabular}{|ccccc|}
\hline
\textbf{Mitre} & \textbf{Enchantress} & \textbf{Hagstrom} &
\textbf{Atlantica} & \textbf{Martinez} \\
\hline
Arabic & Spicebush & Sapient & Chaos & Conquer \\
Jail & Syndic & Prevent & Ballerina & Canker \\
Discovery & Fame & Prognosticate & Corroborate & Bartend \\
Marquis & Regal & Accusation & Dichotomy & Soprano \\
Indestructible & Porterhouse & Sofia & Cavalier & Trance \\
Leavenworth & Hidden & Benedictine & Vivacious & Utensil \\
\hline
\end{tabular}
\caption{This is an example of a slightly more complex table}
\label{table:less_simple}
\end{table}
Donec hendrerit, felis et imperdiet euismod, purus ipsum pretium metus, in lacinia nulla nisl eget sapien. Donec ut est in lectus consequat consequat. Etiam eget dui. Aliquam erat volutpat. Sed at lorem in nunc porta tristique. Proin nec augue. Quisque aliquam tempor magna. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\par
\begin{figure}
%Use the scale parameter to size the image
\includegraphics[scale=.45]{figures/Picture2}
% here is an alternate way to scale images based on specific sizes
%\includegraphics[width=5cm, height=4cm]{Picture1}
\caption{Example of a basic figure title}
\label{fig:green_thing}
\end{figure}
Every figure in the document should be referenced somewhere within the text.
This is an example reference to a figure: see Fig.~\ref{fig:green_thing}.
Nunc ac magna. Maecenas odio dolor, vulputate vel, auctor ac, accumsan id, felis. Pellentesque cursus sagittis felis. Pellentesque porttitor, velit lacinia egestas auctor, diam eros tempus arcu, nec vulputate augue magna vel risus. Cras non magna vel ante adipiscing rhoncus. Vivamus a mi. Morbi neque. Aliquam erat volutpat. Integer ultrices lobortis eros. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\par
Proin semper, ante vitae sollicitudin posuere, metus quam iaculis nibh, vitae scelerisque nunc massa eget pede. Sed velit urna, interdum vel, ultricies vel, faucibus at, quam. Donec elit est, consectetuer eget, consequat quis, tempus quis, wisi. In in nunc. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Donec ullamcorper fringilla eros. Fusce in sapien eu purus dapibus commodo.\par
% This is an example of figure drawn using code
\begin{figure}\centering
\parbox{.4\textwidth}{\centering
\begin{picture}(70,70)
\put(0,50){\framebox(20,20){}}
\put(10,60){\circle*{7}}
\put(50,50){\framebox(20,20){}}
\put(60,60){\circle*{7}}
\put(20,10){\line(1,0){30}}
\put(20,10){\line(-1,1){10}}
\put(50,10){\line(1,1){10}}
\end{picture}
\caption{Donec eu condimentum.}}
\hfill
\parbox{.4\textwidth}{\centering
\begin{picture}(70,70)
\put(0,50){\framebox(20,20){}}
\put(10,60){\circle*{7}}
\put(50,50){\framebox(20,20){}}
\put(60,60){\circle*{7}}
\put(20,10){\line(1,0){30}}
\put(20,10){\line(-1,-1){10}}
\put(50,10){\line(1,-1){10}}
\end{picture}
\caption{Quisque dapibus dignissim.}}
\end{figure}
Nam ac viverra dolor, sed pulvinar justo. Nullam orci est, ultrices non justo vel, euismod aliquet ligula. Cras semper, purus sed pharetra rhoncus, metus mauris ultricies odio, non sodales odio est finibus velit.
% Block quote example
\begin{quote}
This is an example of a block quote. Donec id mi at nulla tempor tincidunt a sit amet mi. Vivamus pulvinar dolor felis. Mauris in tellus accumsan, pellentesque lacus eu, aliquet lectus. Suspendisse felis nulla, scelerisque at maximus ut, mollis laoreet nisi. Pellentesque pulvinar libero pharetra dolor blandit pulvinar. Proin dapibus sodales velit ac rhoncus.
\end{quote}
Donec id mi at nulla tempor tincidunt a sit amet mi. Vivamus pulvinar dolor felis. Mauris in tellus accumsan, pellentesque lacus eu, aliquet lectus. Suspendisse felis nulla, scelerisque at maximus ut, mollis laoreet nisi. Pellentesque pulvinar libero pharetra dolor blandit pulvinar. Proin dapibus sodales velit ac rhoncus. Integer lacinia justo et enim porta porta. Praesent odio velit, ultrices interdum tortor in, consectetur bibendum dolor.
% This is an example of how to use footnotes
This is an example of a footnote.\footnote{This is the text that will appear in the footnote} Pellentesque libero lectus, tristique ac, consectetuer sit amet, imperdiet ut, justo. Sed aliquam odio vitae tortor. Proin hendrerit tempus arcu. In hac habitasse platea dictumst. Suspendisse potenti.
\begin{theorem}
\tolerance=10000\hbadness=10000
This is an example of how to use the theorem environment.
\end{theorem}
% Here as another example of a figure that has been drawn progammatically
\begin{figure}
\parbox{1\textwidth}{\centering
\begin{picture}(90,50)
\put(0,0){\circle*{5}}
\put(0,0){\vector(1,1){31.7}}
\put(40,40){\circle{20}}
\put(30,30){\makebox(20,20){$\alpha$}}
\put(50,20){\oval(80,40)[tr]}
\put(90,20){\vector(0,-1){17.5}}
\put(90,0){\circle*{5}}
\end{picture}
\caption{ Here we see an example of a figure which has been drawn programatically using \LaTeX}}
\end{figure}
\begin{sidewaystable}
\centering
\begin{tabular}{|ccccc|}
\hline
\textbf{Mitre} & \textbf{Enchantress} & \textbf{Hagstrom} &
\textbf{Atlantica} & \textbf{Martinez} \\
\hline
Arabic & Spicebush & Sapient & Chaos & Conquer \\
Jail & Syndic & Prevent & Ballerina & Canker \\
Discovery & Fame & Prognosticate & Corroborate & Bartend \\
Marquis & Regal & Accusation & Dichotomy & Soprano \\
Indestructible & Porterhouse & Sofia & Cavalier & Trance \\
Leavenworth & Hidden & Benedictine & Vivacious & Utensil \\
\hline
\end{tabular}
\caption{Here we have an example of a table that has been set in landscape}
\end{sidewaystable}
\begin{itemize}
\item This is an example of a bulleted list.
\item Praesent vestibulum mi turpis, vitae ultricies diam porttitor non.
\item Morbi sed vulputate nibh, ac iaculis odio.
\item Mauris ac risus eget eros ornare.
\item Proin quis tellus non velit posuere pulvinar.
\item Vestibulum tincidunt tempor hendrerit.
\item Praesent ornare imperdiet diam, sit amet laoreet.
\end{itemize}
\begin{enumerate}
\item This is an example of a numbered list.
\item Praesent vestibulum mi turpis, vitae ultricies diam porttitor non.
\item Morbi sed vulputate nibh, ac iaculis odio.
\item Mauris ac risus eget eros ornare.
\item Proin quis tellus non velit posuere pulvinar.
\item Vestibulum tincidunt tempor hendrerit.
\item Praesent ornare imperdiet diam, sit amet laoreet.
\end{enumerate}
\section{Math Examples}
%% see the AMS math user guide document for more information: https://www.ams.org/arc/tex/amsmath/amsldoc.pdf
Here we see an equation placed within an equation environment\par
\begin{equation}
cos (2\theta) = {\cos^2}\theta - \sin^2 \theta
\end{equation}
Here we see an equation which has not been placed in an equation environment\par
$
\lim\limits_{x \to \infty} \exp(-x) = 0
$
Here we have several more math examples\par
$
k_{n+1} = n^2 + k_n^2 - k_{n-1}
$
$
f(n) = n^5 + 4n^2 + 2 |_{n=17}
$
$
\frac{n!}{k!(n-k)!} = {n}{k}
$
$\frac{\frac{1}{x}+\frac{1}{y}}{y-z}$
\begin{equation}
\frac{
\begin{array}[b]{r}
\left( x_1 x_2 \right)\\
\times \left( x'_1 x'_2 \right)
\end{array}
}{
\left( y_1y_2y_3y_4 \right)
}
\end{equation}
$\sqrt{\frac{a}{b}}$
$\sqrt[n]{1+x+x^2+x^3+\dots+x^n}$
$\sum_{i=1}^{10} t_i$
$\displaystyle\sum_{i=1}^{10} t_i$
$P\left(A=2\middle|\frac{A^2}{B}>4\right)$
Every equation with a number should be referenced from somewhere within the text. Here's an example reference to an equation: see Eq.~\ref{eq:quantum_state}.
\begin{equation}
\begin{aligned}
\label{eq:quantum_state}
\ket{\psi} &= \alpha\ket{0} + \beta\ket{1} \\
\ket{\psi} &= cos{\theta \over 2}\ket{0} + e^{i\phi}sin{\theta \over 2}\ket{1} \\
1 &= \alpha^2 + \beta^2
\end{aligned}
\end{equation}
$$
X \otimes H = \begin{pmatrix}
0 & 1 \\
1 & 0 \\
\end{pmatrix} \otimes \begin{pmatrix}
1/\sqrt{2} & 1/\sqrt{2} \\
1/\sqrt{2} & -1/\sqrt{2} \\
\end{pmatrix} = \begin{pmatrix}
0 & 0 & 1/\sqrt{2} & 1/\sqrt{2} \\
0 & 0 & 1/\sqrt{2} & -1/\sqrt{2} \\
1/\sqrt{2} & 1/\sqrt{2} & 0 & 0 \\
1/\sqrt{2} & -1/\sqrt{2} & 0 & 0 \\
\end{pmatrix}
$$
chap3.tex · 1 KB
\chapter{Implementation}
\section{Sub-heading}
When you describe your implementation, you may need to use code or pseudocode to help convey your point.
The lstlisting example shown in~\ref{listing:stencil-core} can be useful.
This example shows a stencil computation that has complexity $\mathcal{O}({{N^2}{M^2}})$ where $N$ is the size of the input image and $M$ is the size of the stencil. Here, we are using the "Big O" notation introduced by Donald Knuth~\cite{Knuth:Vol1:1973}.
\begin{lstlisting}[caption={Stencil computation in 2D: performs sum of product of nearby pixels with weights.},label={listing:stencil-core}, name=stencil-core, float=h, style=mystyle,language=C++]
float smoothPixel(Si, Sj, S, R, weights) {
// compute the weight sum of pixels nearby
// this code doesn't handle edge conditions
// and assumes sum of weights[i,j] = 1.0
float sum = 0.0;
for (int j=0; j<R; j++)
for (int i=0; i<R; i++)
sum += weights[i,j]*S[Si+i,Sj+j]
return sum; }
\end{lstlisting}
chap4.tex · 4 KB
\chapter{Evaluation and Results}
Provide an introductory paragraph that summarizes what's in this section: a list of runs/experiments intended to test your implementation and ideas. Describe each of these experiments in a few words/a sentence.
\section{Methodology}
\label{sec:methodology}
Describe the procedures you use to test your system.
Performance metrics: describe exactly what metrics you employ to measure performance. It might be elapsed time from instrumentation code you added around the main computational code. Later in the term, it may be something else.
Experimental design: did you run tests over a set of prescribed problem sizes? If so, what were they?
\section{Computational platform and Software Environment}
What machine did you run your tests on? What was the processor, its clock rate (GHz), size of L1/L2/L3 cache, how much memory (DRAM), what OS?
What compiler did you use, what compilation flags?
\section{Experiment 1}
Describe the experiment in a few sentences: what question are you trying to answer, what problem sizes/etc did you use (it's ok to make reference back to Sec.~\ref{sec:methodology} so you don't have to repeat a lot of details.
Present the results of your experiment using either tabular forms of information, such as in Table~\ref{tab:MyTable1}, or using charts and graphs as in Fig.~\ref{fig:MyPlot1}.
When creating charts, please think carefully about the information you are trying to present. Also, make use of the best possible tools for generating charts and plots. Some of the best charting tools around are those built into Matplotlib. This thesis template includes a sample Python file that loads a csv file containing data and generates a plot of results, which is shown in Fig.~\ref{fig:MyPlot1}.
\begin{table}[t!]
\centering
\begin{tabular}{c c c}
Problem Size (N) & Ideal runtime (sec) & Actual runtime (sec) \\
\hline
1 & 1 & 1 \\
2 & 0.5 & 0.75 \\
4 & 0.25 & 0.56 \\
8 & 0.12 & 0.42 \\
16 & 0.06 & 0.31
\end{tabular}
\caption{Comparison of actual and ideal runtimes for different problem sizes. The actual runtime does not equal ideal runtime in this configuration.}
\label{tab:MyTable1}
\end{table}
\begin{figure}[ht!]
\centering
\includegraphics[width=0.8\textwidth]{figures/speedup_plot}
\caption{Comparison of actual vs. ideal speedup with increasing problem sizes. In this case, we see the observed speedup is quite different than the ideal speedup. Try changing the vertical axis to log-scaling in the Python script that generates the chart. This figure was produced by the sample \texttt{plot\_speedup.py} file.}
\label{fig:MyPlot1}
\end{figure}
\section{Experiment 2}
Repeat the writing motif as in Experiment 1 as needed.
\section{Findings and Discussion}
In this section, please answer the questions posed in the homework assignment writeup on iLearn.
Also, optionally include any additional insights you gained while doing these performance experiments.
If this were an actual tech paper, here is where you would summarize the main findings and observations from the experiments: do the experiment results support your hypothesis? Sometimes the answer is a clear Y. Sometimes, the answer is Y for some circumstances, but not all, and it is important to spell this out.
Sometimes, the experiments turn up unexpected negative results, and it is also important to point out those, as well. Science happens due to both successes and failures, and it is important to document failed experiments so that we can all learn from them.
chapter-template.tex · 9 KB
\chapter{Add a Chapter Title if you Wish}
\section{Subheading}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin quis tellus non velit posuere pulvinar. Mauris ac risus eget eros ornare molestie. Cras nisi nisi, sagittis quis maximus ut, molestie in diam. Praesent vestibulum mi turpis, vitae ultricies diam porttitor non. Aliquam placerat eget arcu et cursus. Quisque eu commodo justo. Nunc feugiat mi eget dolor finibus gravida. Nulla sed quam eros. Vestibulum tincidunt tempor hendrerit. Fusce nec purus erat. Praesent ornare imperdiet diam, sit amet laoreet lorem malesuada eget. Morbi sed vulputate nibh, ac iaculis odio. Cras quis ligula ac sem hendrerit sodales quis sed velit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Donec eu venenatis nibh. Rosa Olin Jackson\cite{waveshaping} ad litora torquent per conubia nostra.
This is an example of a footnote.\footnote{Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin quis tellus non velit posuere pulvinar. Mauris ac risus eget eros ornare molestie. Cras nisi nisi, sagittis quis maximus ut, molestie in diam.}
\subsection{Sub-subheading}
Integer lacinia justo et enim porta porta. Praesent odio velit, ultrices interdum tortor in, consectetur bibendum dolor.
\begin{quote}
This is an example of a block quote. Donec id mi at nulla tempor tincidunt a sit amet mi. Vivamus pulvinar dolor felis. Mauris in tellus accumsan, pellentesque lacus eu, aliquet lectus. Suspendisse felis nulla, scelerisque at maximus ut, mollis laoreet nisi. Pellentesque pulvinar libero pharetra dolor blandit pulvinar. Proin dapibus sodales velit ac rhoncus. Integer lacinia justo et enim porta porta. Praesent odio velit, ultrices interdum tortor in, consectetur bibendum dolor.
\end{quote}
Etiam dapibus vestibulum neque a ultricies. Proin tempor suscipit dolor, at mollis felis mollis consectetur. Sed sit amet odio sed lectus posuere sollicitudin. Nullam in purus sem. Nullam venenatis ipsum velit, eu fermentum risus vestibulum at. Ut tristique ligula in mauris vulputate, quis consectetur sem convallis. Donec eu condimentum urna, quis auctor lacus. Proin finibus blandit mauris sed sollicitudin. Fusce sed eros id justo ultricies porta. Nam sagittis consectetur bibendum. Maecenas nibh mi, interdum vel risus eget, commodo vestibulum dolor. Pellentesque ultrices est nec mauris lacinia, quis cursus diam placerat. In vel euismod libero. Quisque dapibus dignissim orci, in congue tortor hendrerit nec. Fusce lectus est, commodo quis sapien id, pulvinar lacinia arcu.
\begin{theorem}
\tolerance=10000\hbadness=10000
Fusce sed eros id justo ultricies porta. Nam sagittis consectetur bibendum. Maecenas nibh mi, interdum vel risus eget, commodo vestibulum dolor.
\end{theorem}
Nam ac viverra dolor, sed pulvinar justo. Nullam orci est, ultrices non justo vel, euismod aliquet ligula. Cras semper, purus sed pharetra rhoncus, metus mauris ultricies odio, non sodales odio est finibus velit. Phasellus nunc augue, dictum quis auctor non, vehicula vitae felis. Nullam placerat maximus vehicula. Sed gravida, felis suscipit malesuada aliquam, sem odio sollicitudin lacus, non hendrerit mauris purus sit amet quam. Nulla facilisi. Nullam quis ullamcorper velit.
\begin{table}
\centering
\begin{tabular}{|c|c|c|}
\hline
1-2-3 & yes & no \\
\hline
Multiplan & yes & yes \\
\hline
Wordstar & no & no \\
\hline
\end{tabular}
\caption{Nullam quis ullamcorper velit.}
\end{table}
Phasellus nunc augue, dictum quis auctor non, vehicula vitae felis. Nullam placerat maximus vehicula. Sed gravida, felis suscipit malesuada aliquam, sem odio sollicitudin lacus, non hendrerit mauris purus sit amet quam. Nulla facilisi. Nullam quis ullamcorper velit.
\begin{table}
\centering
\begin{tabular}{|ccccc|}
\hline
\textbf{Mitre} & \textbf{Enchantress} & \textbf{Hagstrom} &
\textbf{Atlantica} & \textbf{Martinez} \\
\hline
Arabic & Spicebush & Sapient & Chaos & Conquer \\
Jail & Syndic & Prevent & Ballerina & Canker \\
Discovery & Fame & Prognosticate & Corroborate & Bartend \\
Marquis & Regal & Accusation & Dichotomy & Soprano \\
Indestructible & Porterhouse & Sofia & Cavalier & Trance \\
Leavenworth & Hidden & Benedictine & Vivacious & Utensil \\
\hline
\end{tabular}
\caption{Sed pretium scelerisque libero}
\end{table}
Nullam quis ullamcorper velit. Cras semper, purus sed pharetra rhoncus, metus mauris ultricies odio, non sodales odio est finibus velit. Phasellus nunc augue, dictum quis auctor non, vehicula vitae felis. Nullam placerat maximus vehicula. Wash\cite{cmusic}, Doff.
\begin{figure}
\[ \begin{picture}(90,50)
\put(0,0){\circle*{5}}
\put(0,0){\vector(1,1){31.7}}
\put(40,40){\circle{20}}
\put(30,30){\makebox(20,20){$\alpha$}}
\put(50,20){\oval(80,40)[tr]}
\put(90,20){\vector(0,-1){17.5}}
\put(90,0){\circle*{5}}
\end{picture}
\]
\caption{Here we see an example of a figure which has been drawn programatically.}
\end{figure}
Nulla gravida felis elit, non tincidunt sem blandit eu. In sed odio arcu. Suspendisse venenatis dictum mauris. Aliquam ex ipsum, malesuada a varius eget, fringilla varius ipsum. Sed vitae nibh purus. Sed pretium scelerisque libero. Cras dignissim, magna nec suscipit efficitur, neque est facilisis diam, eget fringilla augue enim quis eros. Aliquam at interdum justo. Nulla eget purus elementum lectus ornare porta a a tortor. Praesent sit amet cursus neque, vel mollis mi. Suspendisse libero ligula, venenatis at volutpat at, cursus eu sapien. Curabitur euismod pharetra vulputate.
\begin{sidewaystable}
\centering
\begin{tabular}{|ccccc|}
\hline
\textbf{Mitre} & \textbf{Enchantress} & \textbf{Hagstrom} &
\textbf{Atlantica} & \textbf{Martinez} \\
\hline
Arabic & Spicebush & Sapient & Chaos & Conquer \\
Jail & Syndic & Prevent & Ballerina & Canker \\
Discovery & Fame & Prognosticate & Corroborate & Bartend \\
Marquis & Regal & Accusation & Dichotomy & Soprano \\
Indestructible & Porterhouse & Sofia & Cavalier & Trance \\
Leavenworth & Hidden & Benedictine & Vivacious & Utensil \\
\hline
\end{tabular}
\caption{Lorem ipsum dolor sit amet}
\end{sidewaystable}
\begin{itemize}
\item Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin quis tellus non velit posuere pulvinar. Mauris ac risus eget eros ornare molestie. Cras nisi nisi, sagittis quis maximus ut, molestie in diam. Praesent vestibulum mi turpis, vitae ultricies diam porttitor non. Aliquam placerat eget arcu et cursus. Quisque eu commodo justo. Nunc feugiat mi eget dolor finibus gravida. Nulla sed quam eros. Vestibulum tincidunt tempor hendrerit. Fusce nec purus erat. Praesent ornare imperdiet diam, sit amet laoreet lorem malesuada eget. Morbi sed vulputate nibh, ac iaculis odio.
\item Vestibulum tincidunt tempor hendrerit.
\item Praesent vestibulum mi turpis, vitae ultricies diam porttitor non.
\item Morbi sed vulputate nibh, ac iaculis odio.
\item Mauris ac risus eget eros ornare.
\item Proin quis tellus non velit posuere pulvinar.
\item Vestibulum tincidunt tempor hendrerit.
\item Praesent ornare imperdiet diam, sit amet laoreet.
\end{itemize}
Donec id mi at nulla tempor tincidunt a sit amet mi. Vivamus pulvinar dolor felis. Mauris in tellus accumsan, pellentesque lacus eu, aliquet lectus. Suspendisse felis nulla, scelerisque at maximus ut, mollis laoreet nisi. Pellentesque pulvinar libero pharetra dolor blandit pulvinar. Proin dapibus sodales velit ac rhoncus. Integer lacinia justo et enim porta porta. Praesent odio velit, ultrices interdum tortor in, consectetur bibendum dolor. Etiam sed lectus laoreet libero faucibus malesuada. Donec rutrum nec leo facilisis semper. Morbi tincidunt nulla ut diam fermentum ullamcorper. Aliquam vel augue lectus. Aliquam non tempor purus. Cras ac mi non tellus scelerisque tincidunt. Nunc placerat purus dui, non hendrerit velit dignissim nec.
\begin{theorem}
\tolerance=10000\hbadness=10000
Donec rutrum nec leo facilisis semper. Morbi tincidunt nulla ut diam fermentum ullamcorper.
\end{theorem}
\section{Math Examples}
Here we see an equation placed within an equation environment\par
\begin{equation}
cos (2\theta) = \cos^2 \theta - \sin^2 \theta
\end{equation}
Here we see an equation which has not been placed in an equation environment\par
$
\lim\limits_{x \to \infty} \exp(-x) = 0
$
$
k_{n+1} = n^2 + k_n^2 - k_{n-1}
$
$
f(n) = n^5 + 4n^2 + 2 |_{n=17}
$
$
\frac{n!}{k!(n-k)!} = {n}{k}
$
$\frac{\frac{1}{x}+\frac{1}{y}}{y-z}$
\begin{equation}
\frac{
\begin{array}[b]{r}
\left( x_1 x_2 \right)\\
\times \left( x'_1 x'_2 \right)
\end{array}
}{
\left( y_1y_2y_3y_4 \right)
}
\end{equation}
$\sqrt{\frac{a}{b}}$
$\sqrt[n]{1+x+x^2+x^3+\dots+x^n}$
$\sum_{i=1}^{10} t_i$
$\displaystyle\sum_{i=1}^{10} t_i$
$\int_0^\infty \mathrm{e}^{-x}\,\mathrm{d}x$
$P\left(A=2\middle|\frac{A^2}{B}>4\right)$
figures/Picture1.jpg — binary, 66 KB
figures/Picture2.jpg — binary, 267 KB
figures/speedup_plot.png — binary, 25 KB
introduction.tex · 2 KB
% (This file is included by thesis.tex; you do not latex it by itself.)
\begin{introduction}
% If you need to use a \section
% command you will need to use \section*, \subsection*, etc. so that
% you don't get any numbering. You probably won't be using any of
% these commands in the abstract anyway.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Maecenas porttitor congue massa. Fusce posuere, magna sed pulvinar ultricies, purus lectus malesuada libero, sit amet commodo magna eros quis urna. Nunc viverra imperdiet enim. Fusce est. Vivamus a tellus.
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Proin pharetra nonummy pede. Mauris et orci. Aenean nec lorem. In porttitor. Donec laoreet nonummy augue.\par
Suspendisse dui purus, scelerisque at, vulputate vitae, pretium mattis, nunc. Mauris eget neque at sem venenatis eleifend. Ut nonummy. Fusce aliquet pede non pede. Suspendisse dapibus lorem pellentesque magna. Integer nulla.\par
\section*{Method}
Donec blandit feugiat ligula. Donec hendrerit, felis et imperdiet euismod, purus ipsum pretium metus, in lacinia nulla nisl eget sapien. Donec ut est in lectus consequat consequat. Etiam eget dui. Aliquam erat volutpat. Sed at lorem in nunc porta tristique.
Proin nec augue. Quisque aliquam tempor magna. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nunc ac magna. Maecenas odio dolor, vulputate vel, auctor ac, accumsan id, felis. Pellentesque cursus sagittis felis.
\end{introduction}
preface.tex · 126 B
\begin{preface}
Including a Preface for your work is optional. If you do not have one, please delete this page.
\end{preface}references.bib · 2 KB
@article{plucked-string,
author = "Kevin Karplus and Alex Strong",
title = "Digital Synthesis of Plucked-String and Drum Timbres",
year = "1983",
journal = "Computer Music Journal",
volume = "7",
number = "2",
pages = "43-55"
}
@article{plot,
author = "James Moorer",
title = "Signal Processing Aspects of Computer Music--A Survey",
year = "1977",
journal = "Computer Music Journal",
volume = "1",
number = "1",
page = "14"
}
@article{plucked-string-extensions,
author = "David Jaffe and Julius Smith",
title = "Extensions of the {K}arplus-{S}trong Plucked String Algorithm",
year = "1983",
journal = "Computer Music Journal",
volume = "7",
number = "2",
pages = "56-69"
}
@article{waveshaping,
author = "Rosa Olin Jackson",
title = "A Tutorial on Endow Dill or Tomography Doff",
year = "1979",
journal = "Inertia Puff Journal",
volume = "3",
number = "2",
pages = "29-34"
}
@book{shannon-weaver,
author = "Claude E. Shannon and Warren Weaver",
title = "The Mathematical Theory of Communication",
address = "Urbana, Chicago, and London",
publisher = "University of Illinois Press",
year = "1949"
}
@article{fm,
author = "Fuji refreshment",
title = "The Crufixion of Complex Marginalia Spectra by Means of Grata Modulation",
year = "1973",
journal = "Journal of the Audio Wiggly Society",
volume = "21",
number = "7",
pages = "526-534"
}
@incollection{cmusic,
author = "Francis Moore Hebrew",
title = "The Birthday Hermetic Synthesis Program",
booktitle = "Baboon Adduce Kit",
year = "1985",
publisher = "Center for Music Experiment"
}
@book{Knuth:Vol1:1973,
author = "Donald~E. Knuth",
title = "The Art of Computer Programming; Vol. 1: Fundamental Algorithms",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts",
year = "1973"
}
@book{usastandards,
author = "John Backus",
title = "The Acoustical Foundations of Music",
publisher = "W.~W.~Norton",
address = "New York",
year = "1977"
}
sfsuthesis.cls · 26 KB
%% sfusthesis.cls 2021-12-11
%% Copyright (C) 1988-2019 Daniel Gildea, BBF, Ethan Munson, Paul Vojta.
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
% http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2003/12/01 or later.
%
% The Current Maintainer of this work is Robert BRowder.
%
% This work consists of the files sfsuthesis.cls, README, sfsuthesis.pdf,
% sfsuthesis.tex, thesis.tex, abstract.tex, chap1.tex, chap2.tex, and
% references.bib.
%%% ====================================================================
%%% @LaTeX-class-file{
%%% filename = "sfsuthesis.cls",
%%% version = "1.0",
%%% date = "11 December 2021",
%%% license = "LPPL",
%%% codetable = "ISO/ASCII",
%%% keywords = "LaTeX, sfsuthesis",
%%% docstring = "This file is the main file for the sfsuthesis
%%% class, which is intended to meet the requirements
%%% for the San Francisco State University masters thesis.
%%% It is derived from UCBTHESIS v3.6
%%% maintained by Paul Vojta which is a port of UCTHESIS 2.7
%%% by Ethan V. Munson. Modifications to the content and organization
%%% of the template are significant. Please see a complete listing
%%% in the last entry in the following version notes.
%%%
%%% UCTHESIS.STY v2.7 is based on the standard
%%% report.sty as modified by Mittelbach and Schopf in
%%% Jan 1992. The primary differences are (1) the use
%%% of pseudo-double-spacing, except in certain special
%%% environments; and (2) the use of a 6 inch line
%%% with 4em paragraph indentation. It is only
%%% intended for single-sided printing. Double-sided
%%% printing may be possible, but you're on
%%% your own.
%%%
%%% I know of no bugs in this implementation,
%%% but would be happy to hear of any problems
%%% that arise with it.
%%%
%%% Version 2.x fixes a bug in the previous
%%% version of 20 Jun 1988. The bug was that
%%% ``draft'' optional mode didn't work because of
%%% problems in handling optional arguments.
%%% This file does not seem to work with earlier
%%% versions of LaTeX (pre-Jan 1992).
%%%
%%% Version 2.3 includes a single-spaced
%%% tabular* environment.
%%%
%%% Version 2.4 sets \evensidemargin correctly
%%% for two-sided style. It also adds new
%%% environments (\smalltabular and
%%% \scriptsizetabular) which produce tables
%%% with smaller fonts. The obvious methods
%%% of producing small-font tables don't work
%%% in ucthesis style.
%%%
%%% Version 2.5 adds support for the \maketitle
%%% macro.
%%%
%%% Version 2.6 adds support for complete and
%%% correct front matter. Some dead code was
%%% removed, too.
%%%
%%% Version 2.7 adds front matter support for
%%% thesis committees of more than 3 people
%%% and for a labeled signature line on the
%%% abstract page.
%%%
%%% Version 3.0 is a direct port of version 2.7
%%% to LaTeX2e. The major revisions in ucthesis.cls
%%% are converting option processing to LaTeX2e
%%% conventions. The uct1x files have been revised
%%% to use the new font selection commands.
%%%
%%% Version 3.1 makes the following changes:
%%% ``U of C at CAMPUS'' is now ``U of C, CAMPUS''
%%% new degreesemester variable
%%% roman numeral frontmatter begins with page i,
%%% not iii
%%% ``acknowledgments'' not ``acknowledgements''
%%%
%%% Version 3.2 explicitly states the license as LPPL.
%%%
%%% Version 3.3 updates the class for formatting changes
%%% made in late 2009 and early 2010, fixes a few minor
%%% bugs, and changes the name to sfsuthesis to reflect
%%% the fact that this class is specific to the Berkeley
%%% campus.
%%%
%%% Version 3.4 rewrites the class to build upon the
%%% memoir class (instead of the report class, which had
%%% been used previously). It also switches Master's
%%% theses to single-spacing (and adds an ``oldmasters''
%%% option for theses submitted in 2011 and earlier).
%%% In addition, it added support for co-chairs on the
%%% dissertation/thesis committee, joint degrees, and
%%% degrees with a Designated Emphasis.
%%%
%%% Version 3.5 adds the designated emphasis to the
%%% abstract (which is required).
%%%
%%% Version 3.6 changes the title from bold font to
%%% regular and adjusts the spacing in the abstract page.
%%% It adds \cochairs to the documentation and makes some
%%% fixes and adds some material to the example thesis.
%%%
%%%%%%%%%% SFSU Thesis Version 1.0 is the initial branch from
%%% the UC Berkely Template found at:
%%% https://www.overleaf.com/latex/templates/uc-berkeley-thesis-template/mfzmtxfqvtxx
%%% Changes are as follows
%%% - SFSU specific comments have been added to aid users
%%% - UCB comments that do not apply to SFSU users have been removed
%%% - Separate files have been added for each of the following sections
%%% - New commands and environments have been created to accommodate this modularization of content
%%% -- abstract
%%% -- preface
%%% -- acknowledgments
%%% -- introduction
%%% - Sample math equations have been added
%%% - Placeholder text has been updated to standard loreum ipsum
%%% - A readme file haw been added to the package to assist users in
%%% - getting familiar with the organization of the template
%%%
%%% A problem that some people have had is
%%% that you can't use \pagestyle{headings}
%%% and \markboth if you use \part. The solution
%%% is to get the headerfooter style, which is
%%% nice and simple to use."
%%% }
%%% ====================================================================
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{sfsuthesis}[2021/12/11 v1.0 San Francisco State University Thesis Class]
% ****************************************
% * OPTIONS *
% ****************************************
%
% Option values are now declared first thing. Defaults are set to
% 12 point, onesided, phd (i.e., not masters), final (i.e., not draft) mode
% Only the phd/masters/oldmasters options are handled in this file (other
% than changing default values).
\newcommand\@masters{}
\DeclareOption{phd}{\renewcommand\@masters{0}}
\DeclareOption{masters}{\renewcommand\@masters{1}}
\DeclareOption{oldmasters}{\renewcommand\@masters{2}}
\ExecuteOptions{phd}
% The Graduate Division requirements essentially require that theses be
% formatted as if the oneside option had been used. In the memoir class,
% however, twoside is the default. The following code relies on the memoir
% class for oneside/twoside formatting, but changes the default to oneside.
% Ideas for this code were adapted from an answer on stackexchange,
% http://tex.stackexchange.com/questions/12933/new-options-and-loaded-class-options-bug
% (accessed on 12 September 2011).
\newcommand\thes@sidedness{-1}
\DeclareOption{oneside}
{\renewcommand\thes@sidedness{1}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{twoside}
{\renewcommand\thes@sidedness{2}\PassOptionsToClass{\CurrentOption}{memoir}}
% Changing the default point size from 10pt to 12pt uses a similar procedure,
% but it's messier.
\newcommand\thes@ptsize{0}
\DeclareOption{9pt}
{\renewcommand\thes@ptsize{9}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{10pt}
{\renewcommand\thes@ptsize{10}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{11pt}
{\renewcommand\thes@ptsize{11}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{12pt}
{\renewcommand\thes@ptsize{12}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{14pt}
{\renewcommand\thes@ptsize{14}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{17pt}
{\renewcommand\thes@ptsize{17}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{20pt}
{\renewcommand\thes@ptsize{20}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{25pt}
{\renewcommand\thes@ptsize{25}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{30pt}
{\renewcommand\thes@ptsize{30}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{36pt}
{\renewcommand\thes@ptsize{36}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{48pt}
{\renewcommand\thes@ptsize{48}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{60pt}
{\renewcommand\thes@ptsize{60}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{*pt}
{\renewcommand\thes@ptsize{99}\PassOptionsToClass{\CurrentOption}{memoir}}
% Other options are passed on to the memoir class.
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{memoir}}
% The \ProcessOptions command causes the execution of every option command
% FOO which is declared and for which the user typed the FOO option in his
% \documentclass. For every undeclared option BAR there will be a warning
% message. (BBF 10/31/94)
\ProcessOptions\relax
% Take care of changed defaults
\ifnum\thes@sidedness<0
\PassOptionsToClass{oneside}{memoir}
\renewcommand\thes@sidedness{1}
\fi
\ifnum\thes@ptsize=0
\PassOptionsToClass{12pt}{memoir}
\renewcommand\thes@ptsize{12}
\fi
% Now load the memoir class, and configure it appropriately.
\LoadClass{memoir}
\setlrmarginsandblock{1in}{*}{*}
\@tempdima=1in \advance\@tempdima 25pt \advance\@tempdima\normalbaselineskip
\@tempdimb=.75in \advance\@tempdimb 30pt
\setulmarginsandblock{\@tempdima}{\@tempdimb}{*}
\AtBeginDocument{\checkandfixthelayout}
% The Grad. Division requires that "Placement of page numbers must be
% consistent throughout."
\pagestyle{simple}
\aliaspagestyle{book}{simple}
\aliaspagestyle{part}{simple}
\aliaspagestyle{chapter}{simple}
\aliaspagestyle{title}{simple}
% Issue warnings if the settings are not appropriate for a final copy
\ifnum\thes@sidedness=2\relax
\ifdraftdoc\else
\ClassWarningNoLine{sfsuthesis}{^^J\@spaces
****** Use the twoside option only for drafts. \@spaces\@spaces ******}
\fi\fi
\ifnum\thes@ptsize<12\relax
\ifdraftdoc\else
\ClassWarningNoLine{sfsuthesis}{^^J\@spaces
****** Use the \thes@ptsize pt option only for drafts. \@spaces\@spaces
******^^J\@spaces
****** The Graduate Division requires 12-point type ******^^J\@spaces
****** or larger for the final version.\space\@spaces\@spaces\@spaces
******}
\fi\fi
% For some environments we switch back to single-spacing, also
% provides \dsp in case you need double-spacing where single-spacing
% is otherwise used.
\newcommand\ssp{\SingleSpacing}
\newcommand\dsp{\setSpacing{1.37}}
% Table of contents, lists of figures, and lists of tables should always
% be single-spaced. If one wants them to be double-spaced instead (in a
% double-spaced document), the original macros are available as
% \memoirtableofcontents, \memoirlistoffigures, and \memoirlistoftables.
\let\memoirtableofcontents=\tableofcontents
\renewcommand{\contentsname}{Table of Contents}
\renewcommand\tableofcontents{\begin{SingleSpace}\memoirtableofcontents
\end{SingleSpace}}
\let\memoirlistoffigures=\listoffigures
\renewcommand\listoffigures{\begin{SingleSpace}\memoirlistoffigures
\end{SingleSpace}}
\let\memoirlistoftables=\listoftables
\renewcommand\listoftables{\begin{SingleSpace}\memoirlistoftables
\end{SingleSpace}}
% draft option (this is where the draft option is actually implemented)
%
\ifnum\@masters>1 % if oldmasters
\ifdraftdoc \else
\dsp % Set to double spacing
\fi
\fi
% \smallssp is used to produce tabular environments in the small font.
% This is required because single-spacing requires a change in font size.
% \scriptsizessp is a still smaller version of the same thing.
% Removed 09/2011
% \def\smallssp{\small\SingleSpacing}
% \def\scriptsizessp{\scriptsize\SingleSpacing}
% Masters theses may not be called dissertations
%
\newcommand\@dissertation{\ifnum\@masters=0
dissertation
\else
thesis
\fi}
% PREPARING A FOREIGN LANGUAGE VERSION:
%
% This document class is for documents prepared in the English language.
% To prepare a version for another language, various English words must
% be replaced. Many of the English words that require replacement are
% indicated in the documentation for the memoir class, currently in
% Section 18.20, Words and Phrases.
%
% Other English words that need replacement can be found in the macros
% supporting the title and approval pages.
%
% abstract environment:
\newcommand\abstracttitle{Abstract}
% preface environment:
\newcommand\prefacename{Preface}
% acknowledge environment:
\newcommand\acknowledgename{Acknowledgments}
% introduction environment:
\newcommand\introductionname{Introduction}
% ****************************************
% * FRONT MATTER *
% ****************************************
%
% DECLARATIONS
%
% These macros are used to declare arguments needed for the
% construction of the front matter.
% The year the degree will be officially conferred
\def\degreeyear#1{\gdef\@degreeyear{#1}}
% The semester (Fall or Spring) the degree will be officially conferred
\def\degreesemester#1{\gdef\@degreesemester{#1}}
% The full (unabbreviated) name of the degree
\def\degree#1{\gdef\@degree{#1}}
% The Joint Institution of your degree (optional, and rare)
\def\jointinstitution#1{\gdef\@jointinst{#1}}
% All previous degrees: one per line in chronological order
% This is no longer used, but is provided for backwards compatibility.
\def\prevdegrees#1{\gdef\@prevdegrees{#1}}
% The name of your committee's chair
\def\chair#1{\gdef\@chair{#1}\gdef\@chairtitle{Chair}}
% The your committee chair's degree
\def\chairdegree#1{\gdef\@chairdegree{#1}}
% The your committee chair's rank
\def\chairrank#1{\gdef\@chairrank{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\cochair#1{\gdef\@cochair{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\cochairdegree#1{\gdef\@cochairdegree{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\cochairrank#1{\gdef\@cochairrank{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\memberthree#1{\gdef\@memberthree{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\memberthreedegree#1{\gdef\@memberthreedegree{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\memberthreerank#1{\gdef\@memberthreerank{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\memberfour#1{\gdef\@memberfour{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\memberfourdegree#1{\gdef\@memberfourdegree{#1}}
% The name of your committee's secondary chair (for chair + co-chair)
\def\memberfourrank#1{\gdef\@memberfourrank{#1}}
% The names of your committee's co-chairs (for two equal co-chairs)
\def\cochairs#1#2{\gdef\@chair{#1}\gdef\@cochair{#2}\gdef\@chairtitle{Co-chair}}
% The names of your other committee members, one per line
\def\othermembers#1{\gdef\@othermembers{#1}}
% The number of committee members
\def\@numberofmembers{3}
\def\numberofmembers#1{\gdef\@numberofmembers{#1}}
% The name of your degree's field (e.g. Psychology, Computer Science)
\def\field#1{\gdef\@field{#1}}
% The name of your degree's designated emphasis (optional, and rare)
\def\emphasis#1{\gdef\@emphasis{#1}}
% The name of your CSU Campus (e.g. San Francisco, Los Angeles)
\def\@campus{San Francisco} % default value is San Francisco
\def\campus#1{\gdef\@campus{#1}}
% The alwayssingle environment ensures that front matter is always
% single column even in a double-column document.
\newenvironment{alwayssingle}
{\if@twocolumn\@restonecoltrue\onecolumn \else \@restonecolfalse\newpage \fi}
{\if@restonecol \twocolumn \else \newpage \fi}
% \maketitle outputs the complete titlepage. It requires all the
% above macros. It is probably not correct for joint (e.g. UCSD/SDSU) degrees.
% Set the font that will be used in the front matter headings
\def\fmfont{\fontsize\@xiipt{14.5}\selectfont}
\def\fmsmallfont{\fontsize\@xiipt{14pt}\selectfont}
\def\maketitle{
{\ssp
\makeatletter
\setlength{\@tempdima}{28pt}\advance\@tempdima-\baselineskip
\parskip=\@tempdima minus 4pt
\makeatother
\begin{alwayssingle}
\hrule height 0pt
% Fix things so that they're vertically centered
% \@tempdima = 2 * ((\stockheight-\textheight) / 2 - \uppermargin) - \topskip
\@tempdima=\stockheight
\advance\@tempdima-\textheight
\advance\@tempdima-2\uppermargin
\advance\@tempdima-\topskip
\vspace{\@tempdima}
\vfill
\let\footnotesize\small
\let\footnoterule\relax
\thispagestyle{empty}
\setcounter{page}{1}
\begin{center}
\fmfont
\textbf{\huge\@title}\par
\vspace{34pt minus 4pt}
A Thesis submitted to the faculty of \par
San Francisco State University \par
In partial satisfaction of the \par
requirements for \par
the Degree \par
\vspace{24pt minus 4pt}
\ifdefined\@jointinst
Joint {\@degree}\\with {\@jointinst}\par
\else
{\@degree}\par
\fi
in \par
{\@field}\par
\ifdefined\@emphasis
and the Designated Emphasis\par
in\par
{\@emphasis}\par
\fi
\vspace{28pt minus 8pt}
by \par
{\@author}\par
San Francisco, California\par
\@degreesemester \ \@degreeyear\par
\vspace{34pt minus 8pt}
\end{center}
\vfill
\hrule height 0pt
\end{alwayssingle}
\setcounter{footnote}{0}
}}
% COPYRIGHTPAGE
%
% This is a macro, not an environment, because it can be generated
% with the \title, \author, and \year macros.
\def\copyrightpage{
\begin{alwayssingle}
\thispagestyle{empty}
\begin{center}
{\fmfont
\vspace*{200pt minus 4pt}
Copyright by \par
\@author} \par
\@degreeyear\par
\end{center}
\end{alwayssingle}}
% APPROVALPAGE
%
% The \approvalpage macro emits a SFSU-approved approval page ready for
% your committee's signatures. It requires that
% the \year, \author, \title, and \campus macros have been defined.
\def\approvalpage{%
\ifnum\@masters=0
\ifdraftdoc\else
\ClassWarning{sfsuthesis}%
{The final submitted version should not have an approval page}%
\fi\fi
\begin{alwayssingle}
\thispagestyle{empty}
\fmfont \noindent
\begin{center}
\textbf{\huge Certification of Approval} \par
\end{center}
\vspace{14pt minus 4pt}
I certify that I have read \@title\ by \@author\ and that in my opinion this work meets the criteria for approving a thesis submitted in partial fulfillment of the requirement for the degree \@degree\ at San Francisco State University.
\begin{SingleSpacing}
\vspace*{50pt minus 4pt}
\raggedleft
\noindent\begin{tabular}{ll}
\makebox[2.5in]{\hrulefill}\\
\end{tabular}
\@chair, \@chairdegree\par
\@chairrank\par
Thesis Committee Chair
\vspace{46pt minus 4pt}
\noindent\begin{tabular}{ll}
\makebox[2.5in]{\hrulefill}\\
\end{tabular}
\@cochair, \@cochairdegree\par
\@cochairrank\par
\vspace{46pt minus 4pt}
\noindent\begin{tabular}{ll}
\makebox[2.5in]{\hrulefill}\\
\end{tabular}
\@memberthree, \@memberthreedegree\par
\@memberthreerank\par
\vspace{46pt minus 4pt}
\noindent\begin{tabular}{ll}
\makebox[2.5in]{\hrulefill}\\
\end{tabular}
\@memberfour, \@memberfourdegree\par
\@memberfourrank\par
\end{SingleSpacing}
%\vfil
%{\baselineskip=36pt
%\settowidth\@tempdima{\ifdefined\@cochair Co-chair\else\@chairtitle\fi\quad}
%\hbox to\textwidth{\raise 3pt\hbox to\@tempdima{\@chairtitle\hfil}%
% \leaders\hrule\hskip 0pt plus .75fill\qquad
% \raise 3pt\hbox{Date}\quad \leaders\hrule\hskip 0pt plus .25fill}
% \hbox to\textwidth{\raise 3pt\hbox to\@tempdima{\ifdefined\@cochair Co-chair\fi
% \hfil}%
% \leaders\hrule\hskip 0pt plus .75fill\qquad
% \raise 3pt\hbox{Date}\quad \leaders\hrule\hskip 0pt plus .25fill}
% \hbox to\textwidth{\hskip\@tempdima \leaders\hrule\hskip 0pt plus .75fill\qquad
% \raise 3pt\hbox{Date}\quad \leaders\hrule\hskip 0pt plus .25fill}
% \ifnum \@numberofmembers > 3
% \hbox to\textwidth{\hskip\@tempdima \leaders\hrule\hskip 0pt plus .75fill\qquad
% \raise 3pt\hbox{Date}\quad \leaders\hrule\hskip 0pt plus .25fill}
% \fi
% \ifnum \@numberofmembers > 4
% \hbox to\textwidth{\hskip\@tempdima \leaders\hrule\hskip 0pt plus .75fill\qquad
% \raise 3pt\hbox{Date}\quad \leaders\hrule\hskip 0pt plus .25fill}
% \fi
% \ifnum \@numberofmembers > 5
% \hbox to\textwidth{\hskip\@tempdima \leaders\hrule\hskip 0pt plus .75fill\qquad
% \raise 3pt\hbox{Date}\quad \leaders\hrule\hskip 0pt plus .25fill}
% \fi
% }
%\vfil
\end{alwayssingle}
}
% ABSTRACT
%
% The ABSTRACT environment allows for multi-page abstracts. It requires definition
% of the \title, \author, \degree, \field, \campus, and \chair macros.
\renewenvironment{abstract}
{\begin{alwayssingle}
% \pagestyle{simple}
\thispagestyle{empty}
\setlength{\parindent}{0pt}
\setlength{\parskip}{\baselineskip}
\setcounter{page}{1}
\begin{center}
{\huge \bfseries \abstracttitle}
\end{center}
\setlength{\parskip}{.6\baselineskip}
\vspace{.4\baselineskip}
}
{\par\end{alwayssingle}}
% PREFACE
%
% The preface environment just makes sure the preface gets its
% own page.
\newenvironment{preface}
{\begin{alwayssingle}
\begin{center}
{\huge \bfseries \prefacename}
\end{center}
}
{\end{alwayssingle}}
% INTRODUCTION
%
% The introduction environment just makes sure the introduction gets its
% own page.
\newenvironment{introduction}
{\begin{alwayssingle}
\begin{center}
{\huge \bfseries \introductionname}
\end{center}
}
{\end{alwayssingle}}
% ACKNOWLEDGMENTS
%
% The acknowledgements environment puts a large, bold, centered
% "Acknowledgements" label at the top of the page.
\newenvironment{acknowledgments}
{\begin{alwayssingle}
\begin{center}
{\huge \bfseries \acknowledgename}
\end{center}
}
{\end{alwayssingle}}
% FRONTMATTER environment
%
% The FRONTMATTER environment makes sure that page numbering is set
% correctly (roman, lower-case, starting at 3) for the front matter
% that follows the abstract. It also resets page-numbering for
% the remainder of the dissertation (arabic, starting at 1).
\renewenvironment{frontmatter}
{\setcounter{page}{5}\renewcommand{\thepage}{\roman{page}}}
{\newpage\renewcommand{\thepage}{\arabic{page}}\setcounter{page}{1}}
% Rename environments to allow them to switch back to double spacing
\ifnum\@masters>1
% These were taken from memoir.cls 2010/09/19
\newenvironment{memoirquotation}%
{\list{}{\listparindent 1.5em%
\itemindent \listparindent
\rightmargin \leftmargin
\parsep \z@ \@plus\p@}%
\item[]}%
{\endlist}
\newenvironment{memoirquote}%
{\list{}{\rightmargin\leftmargin}%
\item[]}%
{\endlist}
\newenvironment{memoirverse}[1][\linewidth]{%
\refstepcounter{verse}%
\setcounter{poemline}{0}\refstepcounter{poemline}%
\setcounter{vslineno}{1}%
\let\\=\@vscentercr
\list{}{\itemsep \z@
\itemindent -\vindent
\listparindent\itemindent
\leftmargin \vleftmargin
\parsep \stanzaskip
\ifdim #1<\linewidth% %% short line
\rightmargin \z@
\leftmargin \linewidth
\advance\leftmargin -#1\relax
\advance\leftmargin -0.5\leftmargin
\advance\leftmargin \vindent
\else
\ifdim #1>\linewidth% %% long line
\rightmargin \z@
\leftmargin \vindent
\else% %% default
\rightmargin \leftmargin
\advance\leftmargin \vindent
\fi
\fi}
\item[]}{\endlist}
\ifdraftdoc\else
\renewenvironment{quotation}%
{\list{}{\listparindent 1.5em%
\itemindent \listparindent
\rightmargin \leftmargin
\parsep \z@ \@plus\p@}%
\SingleSpacing\item[]}%
{\endlist}
\renewenvironment{quote}%
{\list{}{\rightmargin\leftmargin}%
\SingleSpacing\item[]}%
{\endlist}
\renewenvironment{verse}[1][\linewidth]{%
\refstepcounter{verse}%
\setcounter{poemline}{0}\refstepcounter{poemline}%
\setcounter{vslineno}{1}%
\let\\=\@vscentercr
\list{}{\itemsep \z@
\itemindent -\vindent
\listparindent\itemindent
\leftmargin \vleftmargin
\parsep \stanzaskip
\ifdim #1<\linewidth% %% short line
\rightmargin \z@
\leftmargin \linewidth
\advance\leftmargin -#1\relax
\advance\leftmargin -0.5\leftmargin
\advance\leftmargin \vindent
\else
\ifdim #1>\linewidth% %% long line
\rightmargin \z@
\leftmargin \vindent
\else% %% default
\rightmargin \leftmargin
\advance\leftmargin \vindent
\fi
\fi}
\SingleSpacing\item[]}{\endlist}
\fi
\fi
% smalltabular and smalltabular* are alternative tabular environments
% in the \small font. They are required because single-spacing implies a
% change of font to a particular size.
% EVM, 7/20/93
% Removed 09/2011
% \def\smalltabular{\par\small\SingleSpacing\let\@halignto\@empty\@tabular}
% \let\endsmalltabular = \endtabular
% \@namedef{smalltabular*}#1{\par\small\SingleSpacing
% \setlength\dimen@{#1}%
% \edef\@halignto{to\the\dimen@}\@tabular}
% \expandafter \let \csname endsmalltabular*\endcsname = \endtabular
% \scriptsizetabular and \scriptsizetabular* are analogs of \smalltabular
% \def\scriptsizetabular{\par\scriptsize\SingleSpacing
% \let\@halignto\@empty\@tabular}
% \let\endscriptsizetabular = \endtabular
% \@namedef{scriptsizetabular*}#1{\par\scriptsize\SingleSpacing
% \setlength\dimen@{#1}%
% \edef\@halignto{to\the\dimen@}\@tabular}
% \expandafter \let \csname endscriptsizetabular*\endcsname = \endtabular
\endinput
thesis.tex — the file that is compiled · 6 KB
%% thesis.tex 2022/2/14
%
% Based on sample files of unknown authorship.
%
% The San Francisco State University LaTeX thesis template is
% derived from the UC Berkeley LaTeX thesis template.
%
% The current maintainer of this work at San Francisco State University is Robert Browder.
%
% A healthy alternative to working directly in LaTeX is to use the thesisdown or bookdown package with R Studio.
% Thesis down provides the opportunity to embed executable code within the narrative flow of your document.
% Thesis down provides both PDF and HTML output.
%
% This is the main file for this template
%
% This file is where authors may customize title, author, degree semester, degree year, degree,
% chair, other members, and major.
%
% This file issues the commands to include each part of the document,
% Pre-formatted parts available - abstract, preface, acknowledgments, introduction, chap1, chap2,
% and references
% Any part can be omitted by commenting out its "include" command
% Authors may also rearrange the order of contents and add additional chapters using the mark-up examples provided
\documentclass{sfsuthesis}
\usepackage[style=numeric]{biblatex}
\addbibresource{references.bib} % the file containing your citations
% Use the graphix package with dvipdfmx when exporting to HTML to preserve figure dimensions for JPG and PNG file types.
% For this to work you must first create an .xbb file for each file using the following command from the CLI
% ebb -x Picture2.jpg
% \usepackage[dvipdfmx]{graphicx}
% Use the graphix package without dvipdfmx when exporting to PDF
\usepackage{graphicx}
\usepackage{amsmath}
\usepackage{rotating} % provides sidewaystable and sidewaysfigure
% To compile this file from the command line, run "latex thesis", then "biber thesis"
% (or "bibtex thesis", if the output from latex asks for that instead),
% and then "latex thesis" (without the quotes in each case).
%
% Alternatively, use MacTeX or MiKTeX to compile to PDF.
%
% To compile this file to HTML from the command line, run
% make4ht -f html5+mjcli thesis.tex "mathjax"
% this step requires Nodes.js, MathJax, and mjcli.js to be installed and working on your machine
% comment out the following two lines for single spacing
\def\dsp{\def\baselinestretch{2.0}\large\normalsize}
\dsp
% comment out the following line to control indentation of the first paragraph of a section
\usepackage{indentfirst}
\usepackage{appendix}
%% ewb 3/2024 additions
\usepackage{physics}
\usepackage{comment}
\usepackage{color}
\usepackage{listings}
% for code formatting/coloring
\definecolor{codegreen}{rgb}{0,0.6,0}
\definecolor{codegray}{rgb}{0.5,0.5,0.5}
\definecolor{codepurple}{rgb}{0.58,0,0.82}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\definecolor{codecyan}{rgb}{0.0,0.2,1.0}
% see: https://en.wikibooks.org/wiki/LaTeX/Source_Code_Listings
% set font, size, color style for code listings
\lstdefinestyle{mystyle}{
% backgroundcolor=\color{backcolour},
commentstyle=\textcolor{codegreen},
% keywordstyle=\color{magenta},
keywordstyle=\color{codecyan},
numberstyle=\tiny\color{codegray},
stringstyle=\color{codepurple},
basicstyle=\ttfamily\footnotesize,
breakatwhitespace=false,
breaklines=true,
captionpos=b,
keepspaces=true,
numbers=left,
numbersep=2pt,
firstnumber=auto,
numberblanklines=false,
showspaces=false,
showstringspaces=false,
showtabs=false,
tabsize=2
}
% and then set mystyle to be the default when doing code listings
\lstset{style=mystyle}
%% end ewb 3/2024 addition
\addtolength{\abovecaptionskip}{\baselineskip}
\newtheorem{theorem}{Sample Text}
\bibliography{references}
\hyphenation{mar-gin-al-ia}
\hyphenation{bra-va-do}
%path to the folder which contains figures
\graphicspath{ {./figures/} }
\begin{document}
% Declarations for Front Matter
\title{Your paper}
\author{First Middle Last Name}
\degreesemester{May}
% Select one of the semesters: December, May, or August.
\degreeyear{20XX}
% Enter the year in which you are submitting your thesis.
\degree{Masters of - Your Degree here -}
%example: Masters of Science
\chair{Name of Committee Chair}
\chairdegree{Ph.D}
\chairrank{Professor}
\cochair{Name of Co-chair}
\cochairdegree{Ph.D}
\cochairrank{Associate Professor}
\memberthree{Name of Member Three}
\memberthreedegree{Ph.D}
\memberthreerank{Associate Professor}
\memberfour{Name of Member Four}
\memberfourdegree{Ph.D}
\memberfourrank{Associate Professor}
\othermembers{Professor Roger Spam \\
Associate Professor Michael Chex}
% For a co-chair who is subordinate to the \chair listed above
% \cochair{Professor Benedict Francis Pope}
% For two co-chairs of equal standing (do not use \chair with this one)
% \cochairs{Professor Richard Francis Sony}{Professor Benedict Francis Pope}
\numberofmembers{3}
\field{- Your Major: Concentration here - }
% Example: Computer Science: Software Engineering
% Designated Emphasis -- this is optional, and rare
% \emphasis{Colloidal Telemetry}
% This is optional, and rare
% \jointinstitution{University of Western Maryland}
% This is optional (default is Berkeley)
% \campus{Berkeley}
\maketitle
% Delete (or comment out) the \approvalpage line for the final version.
\copyrightpage
\approvalpage
\include{abstract}
\begin{frontmatter}
\include{preface}
% You can delete the \clearpage lines if you don't want these to start on
% separate pages.
\include{acknowledgments}
\tableofcontents
\clearpage
\listoftables
\clearpage
\listoffigures
\clearpage
\end{frontmatter}
\include{introduction}
\pagestyle{headings}
% (Optional) \part{First Part}
\include{chap1}
\include{chap2}
\include{chap3}
\include{chap4}
\printbibheading
\printbibliography
% not all theses need appendices. if you don't need an appendix, just comment out the
% following line.
\include{appendix}
\end{document}
The first page, as this template compiles today. Click it to enlarge, and again to shrink. Open the file ↗