From 2514e7edee8cd66f6bc2e966082168b9663f7450 Mon Sep 17 00:00:00 2001 From: Blaise Thompson Date: Wed, 9 May 2018 16:52:28 -0500 Subject: 2018-05-09 16:52 --- acknowledgements.tex | 21 +++++++----- active_correction/chapter.tex | 16 ++++++---- bibliography.bib | 74 +++++++++++++++++++++++++++++++++++++++++-- dissertation.cls | 59 +++++++++++----------------------- dissertation.tex | 15 ++++----- processing/chapter.tex | 14 ++++---- software/chapter.tex | 7 +++- 7 files changed, 132 insertions(+), 74 deletions(-) diff --git a/acknowledgements.tex b/acknowledgements.tex index 374153f..5c2d8b5 100644 --- a/acknowledgements.tex +++ b/acknowledgements.tex @@ -3,24 +3,29 @@ \singlespacing -To John... +To John, you have truly been better than the best adviser I could have hoped for. % +Your mentorship has helped me realize what truly matters, and you have helped me to find myself +professionally and personally. % +Thank you so much. % -To my colleagues... +To my colleagues, you have each been at times mentor and at times friend. +I am so proud of the work we have done together. +I am excited to see what each of you accomplishes next. -To Tyler.... +To Tyler, thank you for showing me how to try hard and have fun. -To Claire... +To Claire, thank you for being my confidant and foundation for these last nine years. -To Sam... +To Sam, thank you for walking beside me through this crazy life. -To my parents... +To my parents, thank you for being endlessly supportive, despite my obstinance. Finally, thank you to all humans who have and continue to undertake the ongoing free and responsible search for truth and meaning. % Thanks to free software / free culture / open science advocates who have worked to create and share foundational tools and ideas, often at great personal opportunity cost. % -Thanks to thought leaders who have shown me what it means to have a good life without fully -abandoning moral principles. % +Thanks to thought leaders who have shown me what it means to have a good life without abandoning +moral principles. % And thank you to those who bravely speak truth to power. % This universe is stranger, more terrible, and more fantastic than we want to believe. % We must find ways to describe it's complexity without falling victim to the sometimes-overwhelming diff --git a/active_correction/chapter.tex b/active_correction/chapter.tex index e996898..1fa4bcc 100644 --- a/active_correction/chapter.tex +++ b/active_correction/chapter.tex @@ -281,12 +281,14 @@ The cross term between scatter and signal is the product of $\Phi_\mathrm{sig}$ \Delta_{2} = \Phi_{\mathrm{sig}} &=& \mathrm{e}^{-\left((\tau_2+\tau_1)\omega\right)} \\ \Delta_{2^\prime} = \Phi_{\mathrm{sig}}\mathrm{e}^{-\tau_{2^\prime}\omega} &=& \mathrm{e}^{-\tau_1\omega} \end{eqnarray} -Figure \ref{fig:scatterinterferenceinTrEEcurrent} presents numerical simulations of scatter interference for the current delay parameterization. +Figure \ref{fig:scatterinterferenceinTrEEcurrent} presents numerical simulations of scatter +interference for the current delay parameterization. % \subsubsection{Instrumental Removal of Scatter} The effects of scatter can be entirely removed from CMDS signal by combining two relatively -straight-forward instrumental techniques: \textit{chopping} and \textit{fibrillation}. % +straight-forward instrumental techniques: \textit{chopping} and \textit{fibrillation}. +\cite{HeislerIsmaelA2014a} % Conceptually, chopping removes intensity-level offset terms and fibrillation removes amplitude-level interference terms. % Both techniques work by modulating signal and scatter terms differently so that they may be @@ -334,7 +336,7 @@ D &=& I_\mathrm{2} + I_\mathrm{other} Grouping into difference pairs, \begin{eqnarray} A-B &=& -I_\mathrm{1} \\ -C-D &=& I_\mathrm{signal} + I_\mathrm{1} +C-D &=& I_\mathrm{signal} + I_\mathrm{1} \end{eqnarray} So: \begin{equation} \label{eq:dual_chopping} @@ -346,12 +348,12 @@ Interference between signal and an excitation beam will only appear in `C'-type not be removed in Equation \ref{eq:dual_chopping}. % To remove such interference terms, you must \textit{fibrillate} your excitation fields. -An alternative to dual chopping is single-chopping and `leveling'... % -this technique was used prior to May 2016 in the Wright Group... % -`leveling' and single-chopping is also used in some early 2DES work... +An alternative to dual chopping is single-chopping and `leveling'. % +This technique was used prior to May 2016 in the Wright Group. % +`Leveling' and single-chopping is also used in some early 2DES work. % \cite{BrixnerTobias2004a}. % -\begin{figure} +\begin{figure} \includegraphics[scale=0.5]{"active_correction/scatter/TA chopping comparison"} \caption[Comparison of single, dual chopping.]{Comparison of single and dual chopping in a MoS\textsubscript{2} transient absorption experiment. Note that this data has not been diff --git a/bibliography.bib b/bibliography.bib index 02f2d3c..f2f7781 100644 --- a/bibliography.bib +++ b/bibliography.bib @@ -1,3 +1,62 @@ +@inproceedings{PrinceLuke2017a, + author = {Luke Prince and Dwight Clayton and Hector Santos-Villalobos}, + title = {An {HDF}5-based framework for the distribution and analysis of ultrasonic + concrete data}, + year = {2017}, + doi = {10.1063/1.4974639}, +} + +@article{PylPaulTheodor2014a, + author = {Paul Theodor Pyl and Julian Gehring and Bernd Fischer and Wolfgang Huber}, + title = {h5vc: scalable nucleotide tallies with {HDF}5}, + journal = {Bioinformatics}, + volume = 30, + number = 10, + pages = {1464--1466}, + year = 2014, + doi = {10.1093/bioinformatics/btu026}, + month = {jan}, + publisher = {Oxford University Press ({OUP})}, +} + +@inproceedings{WattsBenjamin2016a, + author = {Benjamin Watts and J\"{o}rg Raabe}, + title = {A {NeXus}/{HDF}5 based file format for {STXM}}, + year = {2016}, + doi = {10.1063/1.4937536}, + url = {https://doi.org/10.1063/1.4937536}, + publisher = {{AIP} Publishing {LLC}}, +} + +@article{DoughertyMatthewT2009a, + author = {Matthew T. Dougherty and Michael J. Folk and Erez Zadok and Herbert J. Bernstein + and Frances C. Bernstein and Kevin W. Eliceiri and Werner Benger and Christoph + Best}, + title = {Unifying biological image formats with {HDF}5}, + journal = {Communications of the {ACM}}, + volume = 52, + number = 10, + pages = 42, + year = 2009, + doi = {10.1145/1562764.1562781}, + month = {oct}, + publisher = {Association for Computing Machinery ({ACM})}, +} + +@article{HeislerIsmaelA2014a, + author = {Ismael A. Heisler and Roberta Moca and Franco V. A. Camargo and Stephen R. Meech}, + title = {Two-dimensional electronic spectroscopy based on conventional optics and fast + dual chopper data acquisition}, + journal = {Review of Scientific Instruments}, + volume = 85, + number = 6, + pages = 063103, + year = 2014, + doi = {10.1063/1.4879822}, + month = {jun}, + publisher = {{AIP} Publishing}, +} + @article{AartsmaThijsJ1976a, author = {Aartsma, Thijs J and Wiersma, Douwe A}, title = {{Photon-echo relaxation in molecular mixed crystals}}, @@ -705,8 +764,6 @@ year = 2012, } - - @article{DonaldsonPaulMurray2007b, author = {Donaldson, Paul M and Guo, Rui and Fournier, Frederic and Gardner, Elizabeth M and Barter, Laura M C and Barnett, Chris J and Gould, Ian R and Klug, David R and @@ -723,6 +780,8 @@ month = {sep}, } + + @article{DonaldsonPaulMurray2008a, author = {Donaldson, Paul M and Guo, Rui and Fournier, Frederic and Gardner, Elizabeth M and Gould, Ian R and Klug, David R}, @@ -1781,6 +1840,16 @@ publisher = {American Chemical Society ({ACS})}, } +@inproceedings{LiuYang2018a, + author = {Yang Liu and Jeffrey Heer}, + title = {Somewhere Over the Rainbow}, + booktitle = {Proceedings of the 2018 {CHI} Conference on Human Factors in Computing Systems - + {CHI} {\textquotesingle}18}, + year = 2018, + doi = {10.1145/3173574.3174172}, + publisher = {{ACM} Press}, +} + @article{LukowskiMarkA2013a, author = {Mark A. Lukowski and Andrew S. Daniel and Fei Meng and Audrey Forticaux and Linsen Li and Song Jin}, @@ -3618,4 +3687,3 @@ title = {PyQtGraph: Scientific Graphics and GUI Library for Python}, url = {http://pyqtgraph.org/}, } - diff --git a/dissertation.cls b/dissertation.cls index e540902..f431973 100644 --- a/dissertation.cls +++ b/dissertation.cls @@ -11,22 +11,31 @@ \RequirePackage{setspace} \RequirePackage{afterpage} \RequirePackage{xcolor} -\RequirePackage{array} +\RequirePackage{array} % --- layout -------------------------------------------------------------------------------------- +\let\stdchapter\chapter +\renewcommand\chapter{\cleardoublepage\stdchapter} + \let\stdsection\section \renewcommand\section{\clearpage\stdsection} -% --- floats -------------------------------------------------------------------------------------- +\RequirePackage{afterpage} +\newcommand\blankpage{% + \null + \thispagestyle{empty}% + \addtocounter{page}{-1}% + \newpage} + +% --- floats -------------------------------------------------------------------------------------- % force all floats to center (see https://tex.stackexchange.com/a/53383) \makeatletter \g@addto@macro\@floatboxreset{\centering} \makeatother - % --- headers ------------------------------------------------------------------------------------- % required: page number in upper right, nothing else @@ -65,17 +74,13 @@ \newcommand{\dsignature}[1]{\hfill \normalfont{-- #1}} - % --- tables -------------------------------------------------------------------------------------- - \BeforeBeginEnvironment{table}{\clearpage} \AfterEndEnvironment{table}{\clearpage} - % --- lists --------------------------------------------------------------------------------------- - \RequirePackage[shortlabels]{enumitem} \setlist[enumerate, 1]{nosep} \setlist[enumerate, 2]{nosep, topsep=-5ex} @@ -97,12 +102,12 @@ \newenvironment{ditemize} { \begin{itemize} - \renewcommand{\labelitemi}{$\rightarrow$} - \singlespacing + \renewcommand{\labelitemi}{$\rightarrow$} + \singlespacing } { \end{itemize} - } + } % --- code environment ---------------------------------------------------------------------------- @@ -191,37 +196,11 @@ anchorcolor=black]{hyperref} \RequirePackage[all]{hypcap} % helps hyperref work properly \renewcommand{\chapterautorefname}{Chapter} +\renewcommand{\sectionautorefname}{Section} +\renewcommand{\subsectionautorefname}{Section} +\renewcommand{\subsubsectionautorefname}{Section} % --- bibliography -------------------------------------------------------------------------------- \RequirePackage[backend=biber, natbib=true, sorting=none, maxbibnames=99, isbn=false]{biblatex} -\bibliography{bibliography} - -% --- glossary ------------------------------------------------------------------------------------ - -%\RequirePackage[acronym, nopostdot, nogroupskip]{glossaries} -%\newcommand{\comma}{,\penalty \exhyphenpenalty} -%\newlength\glsnamewidth -%\setlength{\glsnamewidth}{0.3\hsize} -%\setlength{\glsdescwidth}{1\hsize} -%\newglossarystyle{myglossarystyle}{ -% \setglossarystyle{super} -% \renewenvironment{theglossary}{ -% \tablehead{} -% \tabletail{} -% \begin{supertabular}{p{\glsnamewidth}p{\glsdescwidth}}}{\end{supertabular}} -% \renewcommand{\glossentry}[2]{ -% \raggedleft -% \glsentryitem{##1}\glstarget{##1}{\glossentryname{##1}} & -% \glossentrydesc{##1}\glspostdescription\space ##2\tabularnewline}} -%\renewcommand{\arraystretch}{1} -%\setglossarystyle{myglossarystyle} -%\newglossary[slg]{symbolslist}{syi}{syg}{Symbols} -%\makeglossaries - -%\RequirePackage{tocloft} - -%\setlength\cftparskip{0pt} -%\setlength\cftbeforechapskip{-5pt} -%\setlength\cftbeforesecskip{-7pt} -%\setlength\cftbeforesubsecskip{-10pt} \ No newline at end of file +\bibliography{bibliography} \ No newline at end of file diff --git a/dissertation.tex b/dissertation.tex index 9d40288..7516991 100644 --- a/dissertation.tex +++ b/dissertation.tex @@ -17,7 +17,7 @@ By \\ Blaise Jonathan Thompson \\ \vspace{40 pt} -A dissertation submitted in partial fulfillment of \\ +A dissertation submitted in partial fulfillment of \\ the requirements for the degree of \\ \vspace{10 pt} Doctor of Philosophy \\ @@ -51,12 +51,14 @@ This dissertation is approved by the following members of the Final Oral Committ \renewcommand{\baselinestretch}{1}\normalsize % ACKNOWLEDGEMENTS -%\cleardoublepage -%\include{acknowledgements} +\cleardoublepage +\include{acknowledgements} % ABSTRACT \cleardoublepage -\include{abstract} % abs - DONE +\include{abstract} % abs + +\afterpage{\blankpage} % introduction must start on ODD page \doublespacing % double spacing required for body of paper \pagenumbering{arabic} @@ -88,14 +90,11 @@ This dissertation is approved by the following members of the Final Oral Committ \part{Appendix} \label{prt:appendix} \begin{appendix} -% AFTER DEFENSE \include{public/chapter} \include{procedures/chapter} % prc -% AFTER DEFENSE \include{hardware/chapter} % hdw \include{irf/chapter} % irf \include{quantitative_ta/chapter} % qta \include{opa_phase/chapter} % rpa -%\include{errata/chapter} -% AFTER DEFENSE \include{colophon/chapter} +\include{colophon/chapter} \end{appendix} % post -------------------------------------------------------------------------------------------- diff --git a/processing/chapter.tex b/processing/chapter.tex index 2bb569e..cfcaba8 100644 --- a/processing/chapter.tex +++ b/processing/chapter.tex @@ -197,7 +197,7 @@ As examples: \item The \python{closest_pair} function finds the pair(s) of indices corresponding to the closest elements in an array. % \end{ditemize} - + \begin{table} \begin{tabular}{c | c | l} & type & description \\ \hline @@ -526,7 +526,7 @@ The primary attributes and methods of \python{Collection} are \item attribute \python{item_names} \item attribute \python{fullpath} \end{ditemize} -% TODO: finish adding attributes and methodsd +% TODO: finish adding attributes and methodsd Collections are useful because they allow WrightTools users to ``carry around'' several associated data objects in the same file. % @@ -608,7 +608,7 @@ perceptual. % Qualitative colormaps have random orderings of color. % They are best used to represent unordered things, and they typically have high dynamic range. % Perceptual colormaps are monotonic in lightness, and are best at representing ordered information -(like signal levels in MR-CMDS). % +(like signal levels in MR-CMDS). \cite{LiuYang2018a} % Historically the Wright Group has used a qualitative colormap for all plotting. % \autoref{pro:fig:cmaps} shows the red, green, and blue components of four different colormaps. % @@ -646,7 +646,7 @@ In \autoref{pro:fig:fill_types} the edges of the Delaunay triangles are drawn fo Such interpolation methods result in \emph{smoother} looking spectra, but they can look strange and cause visual artifacts. % ``pcolor'' is a much more direct approach that results in \emph{blocky} but honest two-dimensional -plots. % +plots. % \begin{figure} \includegraphics[scale=0.5]{"processing/wright_cmap"} @@ -991,7 +991,7 @@ This dataset can be chopped to it's component 2D \python{('wm'', 'w1')} spectra. data created at /tmp/lzyjg4au.wt5::/ axes ('wm'', 'w2', 'w1') shape (35, 11, 11) ->>> chopped = data.chop('wm', 'w1') +>>> chopped = data.chop('wm', 'w1') chopped data into 11 piece(s) in ('wm', 'w1'') >>> chopped.chop000 @@ -1164,7 +1164,7 @@ dataset—it’s really useful for inspecting the quality of your fit procedure. \includegraphics[width=0.4\textwidth]{"processing/fit_amplitude"} \includegraphics[width=0.4\textwidth]{"processing/fit_tau"} \caption{ - Fitting as dimensionality reduction. + Fitting as dimensionality reduction. } \label{pro:fig:fitted_movie} \end{figure} @@ -1323,7 +1323,7 @@ pip (``pip installs packages'', ``pip installs python'', or ``preferred installe can be used to install packages directly from PyPI: % \begin{codefragment}{bash} pip install WrightTools -\end{codefragment} +\end{codefragment} Conda is a multilingual package manager that handles virtual environments and dependencies, even binary dependencies, in a hassle-free way. % diff --git a/software/chapter.tex b/software/chapter.tex index e1b42f5..372acdf 100644 --- a/software/chapter.tex +++ b/software/chapter.tex @@ -87,7 +87,7 @@ Quoting Soergel: More likely, it systematically alters every data point, or occurs in some downstream aggregate step with effectively global consequences. % In general, software errors produce outcomes that are inaccurate, not merely imprecise. % - + \end{dquote} On a more positive note, better software development practices may be ``low-hanging-fruit'' that @@ -448,6 +448,11 @@ It can support arbitrary datatypes and is optimized to quickly process large and datasets. % In Python, HDF5 is supported primarily through the h5py package. \cite{h5py} % +Many scientific disciplines have built custom file formats on top of the HDF5 standard. % +These include biological imaging \cite{DoughertyMatthewT2009a}, scanning transmission X-ray +microscopy \cite{WattsBenjamin2016a}, scalable nucleotide tallies \cite{PylPaulTheodor2014a}, and +even ultrasonic concrete data \cite{PrinceLuke2017a}. + \section{Scientific Python} % -------------------------------------------------------------------- SciPy is a collection of \emph{``open-source software for mathematics, science, and egnineering.''} -- cgit v1.2.3