From 548cc56e7b65184d1e10a26711837e18f189c136 Mon Sep 17 00:00:00 2001 From: Blaise Thompson Date: Fri, 30 Mar 2018 20:31:53 -0500 Subject: 2018-03-30 20:31 --- acquisition/chapter.tex | 70 +++++++++++++++++++++++++++++++++------- acquisition/example.aqn | 45 ++++++++++++++++++++++++++ acquisition/screenshots/000.PNG | Bin 0 -> 121110 bytes acquisition/screenshots/001.PNG | Bin 0 -> 103863 bytes acquisition/screenshots/002.PNG | Bin 0 -> 103363 bytes acquisition/screenshots/003.PNG | Bin 0 -> 123849 bytes acquisition/screenshots/004.PNG | Bin 0 -> 113581 bytes acquisition/screenshots/005.PNG | Bin 0 -> 95703 bytes acquisition/screenshots/006.PNG | Bin 0 -> 76643 bytes acquisition/screenshots/007.PNG | Bin 0 -> 67050 bytes acquisition/screenshots/008.PNG | Bin 0 -> 134525 bytes dissertation.cls | 12 +++++++ 12 files changed, 115 insertions(+), 12 deletions(-) create mode 100644 acquisition/example.aqn create mode 100644 acquisition/screenshots/000.PNG create mode 100644 acquisition/screenshots/001.PNG create mode 100644 acquisition/screenshots/002.PNG create mode 100644 acquisition/screenshots/003.PNG create mode 100644 acquisition/screenshots/004.PNG create mode 100644 acquisition/screenshots/005.PNG create mode 100644 acquisition/screenshots/006.PNG create mode 100644 acquisition/screenshots/007.PNG create mode 100644 acquisition/screenshots/008.PNG diff --git a/acquisition/chapter.tex b/acquisition/chapter.tex index 6805150..fe3c4da 100644 --- a/acquisition/chapter.tex +++ b/acquisition/chapter.tex @@ -82,12 +82,15 @@ Users cannot type values outside of hardware limits into the controls. % The large right-hand section is tabbed... +\begin{landscape} \begin{figure} + \includegraphics[scale=0.5]{"acquisition/screenshots/005"} \caption{ - TODO (PyCMDS screenshot, including limits in tool tip) + TODO (PyCMDS screenshot) } \label{aqn:fig:pycmds_screenshot} \end{figure} +\end{landscape} To perform an acquisition, a user goes to the SOMATIC tab and enters an item into the QUEUE... @@ -96,12 +99,15 @@ Progress bar... Cannot hit SET... QUEUE states... +\begin{landscape} \begin{figure} + \includegraphics[width=9in]{"acquisition/screenshots/000"} \caption{ - TODO (PyCMDS screenshot while acquiring a 2D delay scan) + TODO (PyCMDS screenshot while acquiring data) } \label{aqn:fig:pycmds_screenshot_during_scan} \end{figure} +\end{landscape} \section{Structure} % ============================================================================ @@ -428,12 +434,15 @@ The delay GUI, by default, offers \item \python{on_set_zero} \end{ditemize} +\begin{landscape} \begin{figure} + \includegraphics[width=9in]{"acquisition/screenshots/006"} \caption[Representative delay stage advanced menu.]{ CAPTION TODO } \label{aqn:fig:delay_advanced} \end{figure} +\end{landscape} \subsection{Spectrometers} % --------------------------------------------------------------------- @@ -449,12 +458,15 @@ Driver: GUI: +\begin{landscape} \begin{figure} - \caption[Representative delay stage advanced menu.]{ + \includegraphics[width=9in]{"acquisition/screenshots/007"} + \caption[Representative spectrometer advanced menu.]{ CAPTION TODO } \label{aqn:fig:spectrometer_advanced} \end{figure} +\end{landscape} \subsection{OPAs} % ------------------------------------------------------------------------------ @@ -472,12 +484,15 @@ United Interpolation +\begin{landscape} \begin{figure} - \caption[Representative delay stage advanced menu.]{ + \includegraphics[width=9in]{"acquisition/screenshots/008"} + \caption[Representative OPA advanced menu.]{ CAPTION TODO } \label{aqn:fig:opa_advanced} \end{figure} +\end{landscape} \subsection{Filters} % --------------------------------------------------------------------------- @@ -507,8 +522,9 @@ Old boxcar: 300 ns window, ~10 micosecond delay. Onset of saturation ~2 V. % TODO: poweramp tune test (see darien slack) \begin{figure} + \includegraphics[scale=0.5]{"acquisition/tune_test"} \caption[Array detector serving as an axis.]{ - CAPTION TODO + CAPTION TODO (2017-11-06 OPA2) } \label{aqn:fig:array_as_axis} \end{figure} @@ -550,19 +566,49 @@ This is where the fun stuff happens---the acquisitions! \subsection{Acquisition modules} % --------------------------------------------------------------- -% TODO: the aqn file (show one!) +Acquisition modules are defined interfaces which know how to assemble a scan. % + +\autoref{aqn:fig:aqn_file} shows an aqn file for an acquisition using SCAN. % + +\begin{figure} + \includebash{"acquisition/example.aqn"} + \caption[Example aqn file.]{ + CAPTION TODO + } + \label{aqn:fig:aqn_file} +\end{figure} + +\subsubsection{SCAN} + +SCAN is by far the most important acquisition module in PyCMDS---it handles acquisitions for almost +all of the CMDS experiments that PyCMDS has ever accomplished. % +SCAN is capable of acquisitions of arbitrary dimensionality. % +Users simply append as many axes as they want. % +Acquistions are done with the trailing (highest index) axis as the innermost loop. % +Arbitrary expressions (PyCMDS calls them ``constants'') are also possible, as can be seen in +\autoref{aqn:fig:aqn_file}. % + +\subsubsection{TUNE TEST} + +The TUNE TEST module does a simple thing: it sets a chosen OPA to each of the points in it's tuning +curve and does a monochromator scan of set width about that setpoint. % +In this way the tune (output color) agreement between the curve and the OPA can be determined. % +As a convinience, a new point curve with remapped colors is automatically created. % +% TODO: link to place in tuning chapter... + +\subsubsection{MOTORTUNE} -% TODO: list of modules, descriptions thereof +Arbitrary tuning acquisitions. -\subsubsection{Scan} +\subsubsection{AUTOTUNE} -\subsubsection{AutoTune} +Automatically do appropriate scans and process as in chapter... -\subsubsection{MotorTune} +\subsubsection{POYNTING TUNE} -\subsubsection{PoyntingTune} +Dedicated to poynting (get content from Kyle S)... -\subsection{Queue manager} % --------------------------------------------------------------------- +z\subsection{Queue manager} % --------------------------------------------------------------------- \subsection{The central loop of PyCMDS} % -------------------------------------------------------- diff --git a/acquisition/example.aqn b/acquisition/example.aqn new file mode 100644 index 0000000..e35f627 --- /dev/null +++ b/acquisition/example.aqn @@ -0,0 +1,45 @@ +[info] +pycmds version = '0.8.0-py3' +created = '2018-03-30T20:02:59-05:00' +module = 'SCAN' +name = 'example' +info = 'just an example' +description = 'SCAN: [w1, w2]' + +[scan] +axis names = ['w1', 'w2'] +constant names = ['wm'] + +[w1] +start = 1500 +stop = 1200 +number = 51 +units = 'wn' +hardware = ['w1'] + +[w2] +start = 1500 +stop = 1200 +number = 35.0 +units = 'wn' +hardware = ['w2'] + +[wm] +hardware = 'wm' +expression = 'w1+2*w2' + +[processing] +main channel = 'signal' +process all channels = False + +[device settings] +ms wait = 0 + +[PCI-6251] +use = True +shots = 100 +save shots = False + +[InGaAs] +use = False + diff --git a/acquisition/screenshots/000.PNG b/acquisition/screenshots/000.PNG new file mode 100644 index 0000000..db2b52f Binary files /dev/null and b/acquisition/screenshots/000.PNG differ diff --git a/acquisition/screenshots/001.PNG b/acquisition/screenshots/001.PNG new file mode 100644 index 0000000..b1d2eac Binary files /dev/null and b/acquisition/screenshots/001.PNG differ diff --git a/acquisition/screenshots/002.PNG b/acquisition/screenshots/002.PNG new file mode 100644 index 0000000..f07dade Binary files /dev/null and b/acquisition/screenshots/002.PNG differ diff --git a/acquisition/screenshots/003.PNG b/acquisition/screenshots/003.PNG new file mode 100644 index 0000000..bfef039 Binary files /dev/null and b/acquisition/screenshots/003.PNG differ diff --git a/acquisition/screenshots/004.PNG b/acquisition/screenshots/004.PNG new file mode 100644 index 0000000..ca281e5 Binary files /dev/null and b/acquisition/screenshots/004.PNG differ diff --git a/acquisition/screenshots/005.PNG b/acquisition/screenshots/005.PNG new file mode 100644 index 0000000..694fb0b Binary files /dev/null and b/acquisition/screenshots/005.PNG differ diff --git a/acquisition/screenshots/006.PNG b/acquisition/screenshots/006.PNG new file mode 100644 index 0000000..be37f6e Binary files /dev/null and b/acquisition/screenshots/006.PNG differ diff --git a/acquisition/screenshots/007.PNG b/acquisition/screenshots/007.PNG new file mode 100644 index 0000000..85ebf06 Binary files /dev/null and b/acquisition/screenshots/007.PNG differ diff --git a/acquisition/screenshots/008.PNG b/acquisition/screenshots/008.PNG new file mode 100644 index 0000000..08951a7 Binary files /dev/null and b/acquisition/screenshots/008.PNG differ diff --git a/dissertation.cls b/dissertation.cls index 5fefce5..942f905 100644 --- a/dissertation.cls +++ b/dissertation.cls @@ -137,10 +137,22 @@ \RequirePackage{epstopdf} \RequirePackage{etoc} \RequirePackage{tikz} +\RequirePackage{pdflscape} % provides \begin{landscape}; \end{landscape} \BeforeBeginEnvironment{figure}{\clearpage} \AfterEndEnvironment{figure}{\clearpage} +% for some reason this doesn't work... +\newenvironment{lsfigure} + { + \begin{landscape} + \begin{figure} + } + { + \end{landscape} + \end{figure} + } + % --- math ---------------------------------------------------------------------------------------- \RequirePackage{amssymb} -- cgit v1.2.3